This adds the necessary new libraries and changes the Perforce build script to use them on OS X. The Perforce source control module will also include the OpenSSL dependencies on Mac too.
#codereview michael.trepka, thomas.sarkanen
[CL 2175780 by Mark Satterthwaite in Main branch]
TTP# 334923 - EDITOR: Perforce Integration (Move -> Delete + Add instead of Integrate)
New API: Added ISourceControlRevision::GetBranchSource.
Made sure the P4 and SVN providers perform integrates/copies so that history is maintained across file copies & moves.
Also fixed SCC icons not refreshing sometimes until source control operation has completed.
Added new branch icon.
Fixed date display in history.
This required some fairly nasty fixup to get it all working within the Editor copy code path, but the majority of the changes are in the source control providers.
reviewed by Andrew.Brown
[CL 2095604 by Thomas Sarkanen in Main branch]
* SComboRow uses a SLATE_DEFAULT_SLOT() instead of SLATE_ARGUMENT called RowContent.
* If OnGenerateWidget is not bound, a default STextBlock is generated reminding the user to bind that delegate instead of failing to compile.
#BUN SComboRow RowContent is now replaced by a default slot as it matches Slate convention better.
#codereview:nick.atamas
[CL 2085621 by Wes Hunt in Main branch]
This is a subset of changes (warning fixes needed to compile Linux editor) from pull request 185 by sbc100, 3dluvr, wshearn, abarbu et al: https://github.com/EpicGames/UnrealEngine/pull/185
#codereview Thomas.Sarkanen
[CL 2085557 by Dmitry Rekman in Main branch]
Instead of using the (cached) state, we cache the brush to use to display the state and only hit the state cache when state changes.
Also updated Execute() calls to providers to only do relative-path conversions if the path is already relative.
Added SourceControlHelpers::AbsoluteFilenames to aid conversion.
TTP# 335201 - ContentBrowser: Improve idle performance
#codereview Andrew.Brown
[CL 2075346 by Thomas Sarkanen in Main branch]
To allow for further abstraction & extension using DVCS systems like Git & Mercurial, we expose a new CanCheckIn() function that is used when determing 'modifed' files to check in.
#github https://github.com/EpicGames/UnrealEngine/pull/151
TTP# 335099 - [GitHub] 151 : Add ISourceControlState::CanCheckIn()
reviewed by Max.Preussner
[CL 2073950 by Thomas Sarkanen in Main branch]
Other Updates:
- The WidgetReflector is now in its own module as well. It will be converted to a plug-in later.
- The Public API of both Slate and SlateCore has largely been reorganized for better discoverabilty. More cleanup work is needed.
- Added a lot of missing API documentation and fixed existing ones. More and better documentation is needed.
- Removed dead code, fixed a couple things I stubled upon, and conformed to coding guidelines (NULL vs nullptr, line breaks, etc.)
Upgrade Notes:
- The Slate Remote Server is currently disabled - will be re-enabled shortly!
- If your module previously had a module dependency to 'Slate', it now also needs a PrivateModuleDependency to 'SlateCore' in its Build.cs file.
- If your module exposes in any of its Public header files types that are now declared in SlateCore, it needs a PublicModuleDependency to 'SlateCore'
- The ToolTip property type on SWidget has changed from SToolTip to IToolTip; change local variables to TSharedPtr<IToolTip> instead of TSharedPtr<SToolTip> where needed
- IToolTip is not a widget. If you need access to the actual widget that represents the tool tip, use IToolTip::AsWidget(); If you need access to the tool tip's content, use IToolTip::GetContentWidget()
Troubleshooting:
- After syncing to this changelist you may have to clean your /Engine/Intermediate/Build/ directory and rebuild your entire project
- If in your project you are getting linker errors for unresolved types that are now declared in SlateCore, you may be missing a dependency to 'SlateCore'
- If in the Engine code you are getting linker errors for unresolved types that are now declared in SlateCore, you may need to rebuild the entire Engine
[CL 2057118 by Max Preussner in Main branch]
Added OpenSSL 1.0.1g alongside the new Perforce libs & updated build script to link against them, rather than the stub.
Also added debug versions of the Perforce libs so bDebugBuildsActuallyUseDebugCRT works again.
Added delay-loading of the OpenSSL dlls on Windows 64-bit.
Added OpenSSL dlls to the Rocket distillation script.
TTP# 331132 - LIVE: Editor: Source Control: Request to support SSL connections to Perforce servers
reviewed by Andrew.Brown
[CL 2055257 by Thomas Sarkanen in Main branch]
#ttp 331898 EDITOR: Update Perforce SDK to Visual Studio 2013 compatible libraries
#note This a re-submission of the previous CL 2048699 minus the SSL lib changes that were causing problems for people with different SSL-enabled installed programs.
#add Added new Perforce API libraries & includes for version 2014.2.
#remove Deprecated the loading of the P4API.dll - we no longer use this in the Editor (however it must remain as it is used in the build system).
#fix Fixed source control tests to properly create temporary packages.
reviewed by Andrew.Brown
[CL 2049736 by Thomas Sarkanen in Main branch]
#ttp 331898 EDITOR: Update Perforce SDK to Visual Studio 2013 compatible libraries
#ttp 331132 LIVE: Editor: Source Control: Request to support SSL connections to Perforce servers
#add Added new Perforce API libraries & includes for version 2014.2.
#add Added OpenSSL 1.0.1g alongside the new Perforce libs & updated build script to link against them, rather than the stub.
#remove Deprecated the loading of the P4API.dll - we no longer use this in the Editor (however it must remain as it is used in the build system).
#fix Fixed source control tests to properly create temporary packages.
reviewed by Andrew.Brown
[CL 2048699 by Thomas Sarkanen in Main branch]
#ttp 331349 Editor: Source Control: Request for ability to sync directories in the Editor
#add Added new menu option to sync a directory from the path/asset view.
#change Changed P4 sync command to append '...' to directory arguments, so subdirectories are also processed.
#fix Fixed Subversion file status being incorrectly reported on Editor startup for statuses that require server access (lock, sync etc.).
#change Changed PackageTools::UnloadPackages to return an error message. This avoid multiple popup messages. Also fixed issue where an unload could fial to unload a package (because it wasnt loaded in the first place) and then fail to sync because of it.
reviewed by Andrew.Brown
[CL 2046626 by Thomas Sarkanen in Main branch]
#ttp 331118 LIVE: Editor: Source Control: Engine content is displayed in Check In dialog
#add Added a CanAdd() function to the source control state API & implemented this for both providers.
#change Changed asset context menu to restrict operations that can be performed based on the new information provided by CanAdd().
#fix Fixed a terrible bug in the SVN provider where only the first batch of 50 files would have their status returned correctly.
reviewed by Andrew.Brown
[CL 2043041 by Thomas Sarkanen in Main branch]