Commit Graph

162 Commits

Author SHA1 Message Date
Matt Kuhlenschmidt
5d44808402 Added a safe way to delete a dynamic slate brush that may be in use. Fixed up use cases of unsafe deletion
Fixes https://jira.ol.epicgames.net/browse/UE-18531

[CL 2620698 by Matt Kuhlenschmidt in Main branch]
2015-07-14 15:36:51 -04:00
Richard Hinckley
a40029ea8a [UE-7479] Fixed so that tutorial BPs made from other blueprints will still be recognized by the browser.
[CL 2612281 by Richard Hinckley in Main branch]
2015-07-07 09:52:55 -04:00
Steve Robb
7661666dcb Error when a module is both a dependency and dynamically loaded.
Fixes for lots of existing modules by removing all dynamically loaded duplicates (this is probably not the correct solution, but is the safest).

#codereview robert.manuszewski

[CL 2610845 by Steve Robb in Main branch]
2015-07-06 05:46:20 -04:00
Richard Hinckley
41a00ec0ab Added a feature to in-engine tutorials that enables platform-specific screen skipping.
[CL 2604350 by Richard Hinckley in Main branch]
2015-06-29 14:06:00 -04:00
Jamie Dale
414659a5ed Made clearing the text selection when a ML editable text loses focus optional
UE-17599 - Rich Text for tutorials is not working in Main

Previously SMultiLineEditableText never cleared its selection when it lost focus, however recent changes to make it behave more like SEditableText had undone that behavior. This caused issues with some of our text editors, as they rely on the selection being preserved when focus is lost so that they can style the selected text.

I've added an option to control whether focus loss should clear the current selection, and have turned it off for our text editors.

#codereview Justin.Sargent, Ben.Cosh

[CL 2600404 by Jamie Dale in Main branch]
2015-06-25 08:43:42 -04:00
Chris Wood
8a112d6140 PushMenu() now respects QueryPopupMethod(). All menus now support reusing windows.
UE-14641 - Fix PushMenu() to use QueryPopupMethod()

Pretty big refactor
Adds IMenu as way to identify menus. Replaces referring to menus as SWindows.
Lots of uses of PushMenu() fixed up to match new API

#codereview Nick.Atamas

[CL 2579277 by Chris Wood in Main branch]
2015-06-05 20:19:33 -04:00
Richard Hinckley
1b4e4ab4b6 [UE-16409] Added an editor option to prevent tutorial alerts from popping up in the future, including in other projects.
[CL 2577237 by Richard Hinckley in Main branch]
2015-06-04 13:28:50 -04:00
Richard Hinckley
b2f1c91ad4 [UE-7857] Scroll bar fix for tutorials browser.
[CL 2572592 by Richard Hinckley in Main branch]
2015-06-01 11:46:50 -04:00
Andrew Rodham
8ff0d8b98b Added config migration path for newer versions of the engine.
Newly installed versions of the engine will now attempt to copy the project-agnostic config settings from a previous engine installation. This happens by way of a versioned manifest that copies old versions when the manifest does not exist, or is a different version. This code path is benign for non-installed versions of the engine (or FPaths::ShouldSaveToUserDir() is false).

EditorGameAgnosticSettings and EditorUserSettings ini paths have been renamed to EditorSettings and EditorPerProjectUserSettings respectively to better convey their purpose. In general, most settings should be saved in EditorSettings (project-agnostic) so that they apply regardless of which project is open. We have some way to go migrating existing settings for this to be the case, however.

Some previously per-project configuration files are now project-agnostic (such as Editor.ini, EditorKeyBindings.ini, and EditorLayout.ini)

GEditor->Access...Settings and GEditor->Get...Settings have been removed in favor of direct access of the CDO through GetMutableDefault<> and GetDefault<> respectively. Global config ini filenames that are not set up are now neither loaded nor saved on build machines, to handle the problem of indeterminate state more generically.

This addresses UETOOL-270 (Most editor preferences should be project-agnostic)

[CL 2517558 by Andrew Rodham in Main branch]
2015-04-20 10:12:55 -04:00
Saul Abreu
ca3c435b70 Removed text localization menu button on text properties. Not currently functional enough to ship.
[CL 2515109 by Saul Abreu in Main branch]
2015-04-16 17:59:37 -04:00
Mikolaj Sieluzycki
a96989f147 Add includes to files to remove the need of including Engine.h.
[CL 2508000 by Mikolaj Sieluzycki in Main branch]
2015-04-10 03:30:54 -04:00
Richard Hinckley
4ba3b8b2f1 [UE-9586] The "Back" button in tutorials can be linked to a different tutorial, like the "Next" button. Tutorials assigned to the "Previous Tutorial" field (new) will be used for this, and will activate the button for this purpose on stage 0. Tutorials started in this way will begin on their final stage. The Launch Tutorial functionality (in code) now uses an enum for startup instead of a bool, so we can force a restart, continue from where we left off (default), or start at the final stage.
[CL 2500370 by Richard Hinckley in Main branch]
2015-04-02 16:56:18 -04:00
Mike Fricker
114458bf0f Clang warning fixes: Fixed missing 'override' specifiers
- Also removed some unreferenced functions that adding 'override' revealed

PR #1002 -- Thank you, Omar007!

[CL 2498415 by Mike Fricker in Main branch]
2015-04-01 07:20:55 -04:00
Robert Manuszewski
8fe5db30e3 Merging UE4-Streaming to UE4
- Linkers are no longer UObjects. Renamed ULinker, ULinkerLoad and ULinkerSave to FLinker, FLinkerLoad, FLinkerSave respectively
- Linkers are now associated with their UPackages
- Linker version is now stored in UPackages
- Async loading is now performed on a separate thread (if platform supports it and only in cooked builds), with the exception of PostLoad which is still done on the game thread
- Added UObject::IsPostLoadThreadSafe() function to determine if PostLoad is thread safe and can be executed on the async loading thread (defaults to false)
- UObject creation is now thread safe and can be performed on any thread
- Move many of the linker/UObject globals into FUObjectThreadContext (TLS)
- GetAsyncLoadPercentage() now takes PostLoad into account
- More async loading stats
- Added AtomicallySetFlags/ClearFlags to UObject
- Made FModuleManager thread safe.
- Added FGCScopeGuard as means of preventing GC from executing from non-game thread
- It's possible to disable async loading thread through ini settings.
- Cancelling async loading will now also trigger GC
- Implemented a basic version of async streaming priorities.

Change 2410813 by Mikolaj Sieluzycki:
	Change Sleep in while loop to ConditionalSleep in FMultiReaderSingleWriterGT
Change 2410734 by Mikolaj Sieluzycki:
	Make FModuleManager thread safe.
Change 2399879 by Mikolaj Sieluzycki:
	Basic version of async streaming priorities.
Change 2410707 by Mikolaj Sieluzycki:
	Implement conditional and no stat versions of sleep.
Change 2371939 by Robert Manuszewski:
	Async Loading Improvements: adding more stats (accumulators)
Change 2372403 by Robert Manuszewski:
	Fixing compile errors when STATs are not enabled
Change 2371526 by Robert Manuszewski:
	AsyncLoading Improvements (WIP)
Change 2407198 by Robert Manuszewski:
	Re-implementing delegate fixes for Async Loading
Change 2407425 by Robert Manuszewski:
	Re-implementing cancelling async loading in the async loading branch.
Change 2484362 by Robert Manuszewski:
	Making it possible to disable async loading thread through ini settings.
Change 2484744 by Robert Manuszewski:
	Minimizing locks in GC and other threads when handling UObjects
Change 2480190 by Robert Manuszewski:
	Fixing infinite stall after canceling async loading in non-cooked builds
Change 2484268 by Robert Manuszewski:
	Fixing crash when allocating permanent object pool.
Change 2489761 by Robert Manuszewski:
	Fixing BulkData using linker archive on the main thread even if the linker was created on the async loading thread.
Change 2493624 by Robert Manuszewski:
	Cancelling async loading will now also trigger GC
Change 2487881 by Robert Manuszewski:
	Making ShaderIdMap operations thread safe.
Change 2488067 by Robert Manuszewski:
	Fixing GetAsyncLoadPercentage. It will now also respect PostLoad.
Change 2458640 by Robert Manuszewski:
	Fixing crash in PIE
Change 2458825 by Robert Manuszewski:
	Fixing a few crashes when streaming and the package is missing.
Change 2476935 by Robert Manuszewski:
	Fixing crash while async loading ANavigationData
Change 2477361 by Robert Manuszewski:
	Fixing crashes in cooked game
Change 2480095 by Robert Manuszewski:
	Making FUObjectArray more thread safe
Change 2475443 by Robert Manuszewski:
	Re-enabling single-threaded async loading path for the editor and platforms that don't support multithreading.
Change 2475458 by Robert Manuszewski:
	Making sure bulk data is only loaded on a separate thread if it's not being loaded on the async loading thread.
Change 2476661 by Robert Manuszewski:
	Fixing FlushAsyncLoading not flushing everything
Change 2401089 by Jaroslaw Surowiec:
	Core - Added AtomicallySetFlags/ClearFlags to UObject, added a comment to ThisThreadAtomicallyClearedRFUnreachable

[CL 2498249 by Robert Manuszewski in Main branch]
2015-04-01 03:03:18 -04:00
Richard Hinckley
3ced32796e [UE-7933] Improved on previous fix so the tutorial itself closes the browser on launch, rather than the browser doing it.
[CL 2489838 by Richard Hinckley in Main branch]
2015-03-24 16:09:29 -04:00
Richard Hinckley
397b31b2f7 [UE-9386] Tutorial Browser categories show up as completed if all tutorials in the category are completed. Also works recursively if there's a category within a category, meaning the sub-category must have all its tutorials (and sub-categories) complete in order to show as complete itself.
[CL 2487751 by Richard Hinckley in Main branch]
2015-03-23 10:08:21 -04:00
Richard Hinckley
1ec5bc94fb [UE-10992] Dismiss-all added to right-click menu on tutorial button. Stops green pulse animation on all tutorial buttons and saves to config file.
Known minor bug: If multiple windows are open with pulses animating, only the one that is given the "dismiss all" command will stop animating. The others will continue until their windows are closed and reopened, or they are dismissed individually.

[CL 2486244 by Richard Hinckley in Main branch]
2015-03-20 11:54:33 -04:00
Richard Hinckley
3a6648fda1 Dismissing a the tutorial on the Tutorials Browser button stops it from coming back when the editor is restarted, or from launching again when you try to open the browser.
[CL 2483125 by Richard Hinckley in Main branch]
2015-03-18 11:36:12 -04:00
Jaroslaw Palczynski
f23f29257b Back out changelist 2481333
Rob asked me to back out GENERATED_*_BODY -> GENERATED_BODY change for now until the "_Validate and _Implementation auto-generation" discussion is over.

#codereview Robert.Manuszewski

[CL 2481343 by Jaroslaw Palczynski in Main branch]
2015-03-17 05:38:32 -04:00
Jaroslaw Palczynski
fa31560e2d Enabled UHT to digest GENERATED_BODY instead of GENERATED_UCLASS_BODY, GENERATED_USTRUCT_BODY, GENERATED_UINTERFACE_BODY or GENERATED_IINTERFACE_BODY, changed every occurence to the new syntax and fixed every warning that have fallen out of this change.
#codereview Robert.Manuszewski

[CL 2481333 by Jaroslaw Palczynski in Main branch]
2015-03-17 05:19:11 -04:00
bruce nesbit
78a4b4dd88 Added tags to tutorials
Made super search search tutorial tags

[CL 2475042 by bruce nesbit in Main branch]
2015-03-11 09:25:44 -04:00
Thomas Sarkanen
97b7a49977 Fixed docked tutorial browser never showing tutorials
While the asset registry is loading we need to refresh tutorials as this is the only mechanism by which they are picked up by the browser.

[CL 2468793 by Thomas Sarkanen in Main branch]
2015-03-04 10:32:32 -05:00
Thomas Sarkanen
5bf7af11b3 Fixed tutorial analytics when returning to browser via 'Home' button
This needs to use a seperate path now so we cant rely on the 'closed' event firing.

AN-93 - Tutorial Event Not Sending?

[CL 2468643 by Thomas Sarkanen in Main branch]
2015-03-04 06:27:23 -05:00
Richard Hinckley
dc4bb930e1 [UE-11086] Dismissing a tutorial doesn't open the tutorial browser.
[CL 2467958 by Richard Hinckley in Main branch]
2015-03-03 15:08:54 -05:00
Saul Abreu
79a26091bf Fixed behavior on FString::ParseIntoArray (muliple delimiters overload) functionality to support optionally culling empty strings. Greatly simplified implementation logic. Output parameter now properly named and taken by reference.
#codereview Steve.Robb, Robert.Manuszewski

[CL 2466824 by Saul Abreu in Main branch]
2015-03-02 15:51:37 -05:00