Commit Graph

27 Commits

Author SHA1 Message Date
Max Preussner
1e9be52f74 SCC: Source control login UI polish
[CL 2299746 by Max Preussner in Main branch]
2014-09-16 13:46:07 -04:00
Matt Kuhlenschmidt
fb76f6393e Fix constant FName initialization in places that execute often
[CL 2294154 by Matt Kuhlenschmidt in Main branch]
2014-09-11 16:48:17 -04:00
Mark Satterthwaite
d8011b6dba Fix from Thomas Sarkanen for CRITICAL: EDITOR: Mac: CRASH: Creating a new collection while connented to Source Control (TTP #345087) - make sure that the scoped source control progress window is created as a modal window.
#codereview michael.trepka, thomas.sarkanen

[CL 2277714 by Mark Satterthwaite in Main branch]
2014-08-29 11:20:13 -04:00
Dmitry Rekman
1a5fe3e22a Make SourceControl module work (better) w/o Slate.
[CL 2255258 by Dmitry Rekman in Main branch]
2014-08-13 17:39:56 -04:00
kevin hamilton
aeaff7a2e2 Automation: Milestone 2 - Editor build promotion tests
[CL 2254064 by kevin hamilton in Main branch]
2014-08-12 22:05:52 -04:00
Jamie Dale
ee3213c7df Fixed crash closing the editor with SVN source control enabled
TTP# 342872 - EDITOR: Regression: CRASH: FSourceControlModule::ShutdownModule

The SVN source control provider module was being shutdown before the main source control module, leading to a crash.

The source control module now watches for its active provider module being unloaded, and will gracefully reset itself to the default (dummy) provider if that happens.

I also added these same checks to the source code access module, as it uses the same provider modules mechanism.

#codereview Thomas.Sarkanen, Max.Preussner

[CL 2244286 by Jamie Dale in Main branch]
2014-08-05 10:29:53 -04:00
Justin Hair
f432484c0f SourceControlTests.cpp and EditorAutomationTests.cpp were using an asset that has moved to the NotForLicensee folder.
EditorAutomationTest.cpp -- Just changed the reference to the cube mesh in the engine folder.
SourceControlTests.cpp -- updated the SourceControlTest location to the new one.

[CL 2230126 by Justin Hair in Main branch]
2014-07-24 12:05:05 -04:00
Mike Fricker
a5726a4743 Fixed source control module not reporting circular dependency on UnrealEd module
[CL 2225621 by Mike Fricker in Main branch]
2014-07-21 11:29:53 -04:00
Thomas Sarkanen
155bd251e4 Added ISourceControlLabel::Sync() overload that takes multiple files
API-breaking change (although I dont think that any other 3rd-party provider plugins are using it at the moment).

Kept old single-filename call & added new version that takes array of files. Re-implemented this for internal source control providers (just a patch on the old version).

Added automation tests for label syncing.

TTP# 340899 - SourceControl: Need Sync() overloads that accept multiple files

[CL 2190291 by Thomas Sarkanen in Main branch]
2014-07-11 04:28:12 -04:00
Thomas Sarkanen
f42f5d0781 Fix branching creating multiple files
Branching of files needed to be removed (by Bob Tellez) as it was causing crashes and mutiple duplicate files to show up in the content browser. This fix re-instates working branches in the Editor.
The idea is that we now do the copy/duplicate/rename operations first, then perform the 'branch' once the files are finished with by the Editor. This keeps the asset registry & directory watcher systems happy & leaves the issue of branching to source control alone.
Because of the way SVN copy works, the SVN verison of this is slightly icky. SVN copy does not allow a branch-copy over an existing file in the workspace (even if not under source control), so we have to move the file into a temp directory, do the copy, then re-move the file back over the top of its old location.

TTP# 334923 - EDITOR: Perforce Integration (Move -> Delete + Add instead of Integrate)

reviewed by Max.Preussner,Bob.Tellez,Matt.Kuhlenschmidt

[CL 2180124 by Thomas Sarkanen in Main branch]
2014-07-09 06:31:13 -04:00
Dan Oconnor
79165ed057 #UE4 First iteration on the merge module.. Changes to diff panel reviewed by Mike Beach, driver disabled by [AssetMerge] EnableAssetMerge
[CL 2116875 by Dan Oconnor in Main branch]
2014-06-25 13:25:21 -04:00
Dan Oconnor
be25e93db6 #ue4 modificatiosn to source control plugins to better handle files that are in a conflicted state, or are not at head and are going to enter a conflicted state when we sync
#codereview Thomas.Sarkanen

[CL 2111945 by Dan Oconnor in Main branch]
2014-06-20 12:57:45 -04:00
Jaroslaw Palczynski
ebce413232 UE4 Refactoring. Changed OVERRIDE and FINAL macros to keywords override and final.
[CL 2104397 by Jaroslaw Palczynski in Main branch]
2014-06-13 06:14:46 -04:00
Thomas Sarkanen
e27e005773 Source control copies now integrate/copy instead of Delete + Add
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]
2014-06-05 12:10:47 -04:00
Thomas Sarkanen
ecaf01661c Prevented source control state from being fetched for every content browser widget
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]
2014-05-16 06:46:44 -04:00
Thomas Sarkanen
06466ce255 Added CanCheckIn() to ISourceControlProvider
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]
2014-05-15 04:14:04 -04:00
Mark Satterthwaite
81cc885bad Changes for running 'clang -E' to preprocess & then calling clang to compile the output in separate stages.
Necessary for using a distributed compiler on OS X. Updated for recent changes that caused more preprocess problems.
#codereview michael.trepka, jack.porter

[CL 2072853 by Mark Satterthwaite in Main branch]
2014-05-14 09:22:59 -04:00
Max Preussner
b63129a60c Slate: Refactored core Slate implementation into SlateCore module in preparation for UMG.
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]
2014-04-26 15:07:24 -04:00
Michael Trepka
7dfe6b2dcc Switched SourceControlSettings code to use FPaths::GeneratedConfigDir() instead of trying to concat the path on its own.
[CL 2050902 by Michael Trepka in Main branch]
2014-04-23 19:49:11 -04:00
Thomas Sarkanen
ffc6451909 #summary Added P4 API 2014.2.
#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]
2014-04-23 19:32:18 -04:00
Thomas Sarkanen
a5274d1b18 #summary Fixed up issues found when creating a new source control provider.
#ttp 331349 	Editor: Source Control: Some issues with creating new source control provider
#change 	Fixed up conflation of enum with bool in if() blocks when calling Execute().
#fix 	Fixed QueueStatusUpdate not checking for NULL source control state.
reviewed by 	Andrew.Brown

[CL 2049714 by Thomas Sarkanen in Main branch]
2014-04-23 19:31:56 -04:00
Thomas Sarkanen
4c33b522f3 Back out changelist 2048699
[CL 2049209 by Thomas Sarkanen in Main branch]
2014-04-23 19:27:30 -04:00
Thomas Sarkanen
87bc4ac562 #summary Added P4 API 2014.2 with OpenSSL 1.0.1g.
#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]
2014-04-23 19:20:02 -04:00
Thomas Sarkanen
c9179dae1f #summary Prevented engine content from appearing in "Submit To Source Control..." dialog when it shouldnt.
#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]
2014-04-23 18:13:09 -04:00
Jamie Dale
c6f2ebcb97 #ttp 331133 - Editor: Source Control: Resize Bug in Setup Source Control Dialog
#proj UE4
#branch UE4
#summary The source control window is now sized 700px wide
#reviewedby Thomas.Sarkanen, Max.Preussner

[CL 2038534 by Jamie Dale in Main branch]
2014-04-23 16:38:19 -04:00