Commit Graph

28 Commits

Author SHA1 Message Date
Ben Marsh
a784ebdf3c Change IPluginManager to return shared pointers to plugin objects, rather than passing raw pointers by default.
[CL 2526084 by Ben Marsh in Main branch]
2015-04-26 10:47:22 -04:00
Ben Marsh
9e4c2ae0a5 Use the exposed IPlugin interface to get plugin content folders rather than querying it separately.
[CL 2524929 by Ben Marsh in Main branch]
2015-04-24 16:37:21 -04:00
Ben Marsh
2c34190d5b Remove project/plugin includes from UnrealEd. Only a handful of things needs to access it, so just include it manually.
[CL 2524420 by Ben Marsh in Main branch]
2015-04-24 11:25:20 -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
Jason Hoffman
0bc168d68b Fixed issue in which folder could not be moved into another folder in the content browser whose name begins similarly e.g. "ab" into "abcd"
[CL 2480398 by Jason Hoffman in Main branch]
2015-03-16 14:32:40 -04:00
Marc Audy
037d007078 Fix shadowed variables
[CL 2471506 by Marc Audy in Main branch]
2015-03-06 15:13:38 -05:00
Richard TalbotWatkin
47d421e075 Added option to specify whether a save dialog can be declined as opposed to cancelled.
Some dialogs, e.g. from save menu actions, don't need the two options.
#jira UE-10400 - Clicking on Save All brings up same window as when closing the editor

[CL 2463740 by Richard TalbotWatkin in Main branch]
2015-02-27 04:17:41 -05:00
Richard TalbotWatkin
c6ed56d176 Fixed issue where "Assets could not be loaded" notification was misleadingly appearing when fixing up redirectors on a folder.
#jira UE-8657 - Fixing redirectors through the content browser doesn't work after level change

[CL 2431466 by Richard TalbotWatkin in Main branch]
2015-02-04 05:20:48 -05:00
Jamie Dale
4c69859cb8 Fixed some issues where CB browser sync would fail when syncing to C++ classes
UE-8574 - Sync to content browser does not work for C++ classes

Two issues:
1) The Content Browser wasn't enabling the Engine or Plugin view filters if you synced to a class in those categories - this meant that you couldn't see the synced class as its parent folder was still hidden.
2) FNativeClassHierarchy::GetClassPath was returning a path with a trailing / if the class was in the module root folder - this never matched anything so nothing was synced.

[CL 2423895 by Jamie Dale in Main branch]
2015-01-29 11:47:03 -05:00
Ben Marsh
fe46bfae17 [INTEGRATE] Change 2415260 by Jamie.Dale@Pitbull_JDaleReleases on 2015/01/22 09:06:57
Sorted content before classes, and modules in the order game -> engine -> plugins

	UE-7184 - Show game c++ classes and engine c++ classes in the content browser

	Also renamed "Game C++ Classes" to just "C++ Classes", and "Game Content" to just "Content" based on previous feedback.

[CL 2419539 by Ben Marsh in Main branch]
2015-01-26 19:05:10 -05:00
Jamie Dale
55c3728d11 Added support for showing game and engine classes in the Content Browser
UE-7184 - Show game c++ classes and engine c++ classes in the content browser

The Content Browser now has extra entries for "Game C++ Classes" and "Engine C++ Classes" (with "Game" and "Engine" being renamed to "Game Content" and "Engine Content" respectively). These new folders serve as hosts for the list of available C++ modules, with each module internally mirroring the folder structure on disk.

For example:
- Game C++ Classes
    - ShooterGame
        - Classes
            - Bots
                - ShooterBot
                - ShooterAIController
                - [...]
            - [...]

The Content Browser allows you to navigate and search these classes like you can with assets, and provides convenient access to either edit an existing class, or create a new class (either within a selected folder, or derived from a selected class).

As the Content Browser only shows you known UClass types, any new classes need to be compiled into a loaded module before they will appear. This means that adding a new class will now automatically hot-reload your target module. Should you prefer to handle building and loading your modules manually, you can disable the automatic hot-reload via "Editor Settings" -> "Miscellaneous" -> "Hot Reload" -> "Automatically Hot Reload New Classes" (see UEditorUserSettings::bAutomaticallyHotReloadNewClasses).

[CL 2409386 by Jamie Dale in Main branch]
2015-01-16 15:39:47 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Wes Hunt
31e2bb00ac Removed a bunch of stuff from Slate standard include, created SlateBasics.h
* Moved Slate.h into SlateBasics.h and began shifting less commonly used headers into SlateExtras.h.
* Slate.h now simply includes SlateBasics.h and SlateExtras.h.
* Slate.h includes a deprecated warning now to indicate that SlateBasics.h + specific includes should be used instead.
* Moved dozens of inlined functions using Slate widgets into .cpp files to avoid header dependencies.
* All code samples now include SlateBasics.h and SlateExtras.h so future shifts will not break most those projects, but not trigger the deprecation warning of including Slate.h.
#BUN

[CL 2329610 by Wes Hunt in Main branch]
2014-10-14 22:50:06 -04:00
Richard TalbotWatkin
e486e8614c Fixed crash moving assets which are checked out to another user. Fixed bug where asset move happens before the user is given the chance to cancel in the source control dialog.
#ttp 348063 - Crash moving files in Content Browser
#branch UE4
#proj Developer.AssetTools, Editor.ContentBrowser, Editor.PackagesDialog, Editor.UnrealEd

[CL 2328547 by Richard TalbotWatkin in Main branch]
2014-10-14 10:33:22 -04:00
Bob Tellez
991715117f UE4: Dirty world packages are now properly discovered. The content browser now saves dirty world packages when clicking the save button on the browser.
[CL 2299012 by Bob Tellez in Main branch]
2014-09-15 21:53:58 -04:00
Bob Tellez
24ff3ce891 [AUTOMERGE]
#UE4 You can now use the level "Save As..." dialog to overwrite existing levels. If they are in memory, they will be unloaded before proceeding.

--------
Integrated using branch Ue4-To-UE4-Fortnite-Simple (reversed) of change#2280588 by Bob.Tellez on 2014/09/01 13:20:53.

[CL 2280595 by Bob Tellez in Main branch]
2014-09-01 13:25:23 -04:00
Jamie Dale
fe2af8112e Improved the validation for working out if a path is too long to cook
TTP# 332328 - Content Browser: Need new warnings about long relative path lengths for assets.

https://answers.unrealengine.com/questions/60187/the-path-to-the-asset-is-too-long-for-cooking-im-l.html

The previous logic assumed that the project would always be in the same source tree as UE4, which isn't the case for content creation and Rocket projects.

In the case where the project was outside the UE4 source tree, the validation often failed as the path was never trimmed to remove the relative part of it (between the project and the UE4 binary).

This change gracefully handles both cases, and now performs two sets of validation:
 1) It checks that the content can be cooked based on where the project actually is (for local cooking)
 2) If it's an internal build, it also checks that the content will be cookable via our build machines (forthe build farm cooking)

ReviewedBy Andrew.Rodham
#codereview Max.Preussner

[CL 2272171 by Jamie Dale in Main branch]
2014-08-26 11:11:44 -04:00
Bob Tellez
2710a2dc51 UE4: Fixed a bug that caused folder names to incorrectly be invalidated during rename or create.
#codereview Benn.Gallagher

[CL 2260978 by Bob Tellez in Main branch]
2014-08-18 12:24:23 -04:00
Bob Tellez
8a8d637e55 [AUTOMERGE]
#UE4 Moved rename verification logic to ContentBrowserUtils to be used by other Content Browser code.

--------
Integrated using branch Ue4-To-UE4-Fortnite-Simple (reversed) of change#2258236 by Bob.Tellez on 2014/08/15 14:41:11.

[CL 2258262 by Bob Tellez in Main branch]
2014-08-15 16:14:32 -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
Frank Fella
ec5fc0ef7f Content Browswer - Fix a crash when dragging the root folder, and also disallow moving a parent folder to a child folder.
[CL 2170042 by Frank Fella in Main branch]
2014-07-07 11:16:23 -04:00
Ben Marsh
de9c0853bf Add an toggle for showing plugin content, and disable it by default.
[CL 2124821 by Ben Marsh in Main branch]
2014-07-02 13:18:43 -04:00
Richard TalbotWatkin
cae2251bba Changed all instances of notifications with a "Show Log" hyperlink to be more precise about which log they will open.
#ttp 338544 - EDITOR: Update Notifications "Show Log" to "Show Output Log"
#branch UE4
#change Changed hyperlink text to be more specific in individual instances of FNotificationInfo objects.
#reviewedby Chris.Wood

[CL 2108221 by Richard TalbotWatkin in Main branch]
2014-06-17 12:05:50 -04:00
Bob Tellez
ee55183e2b UE4: Removed many unnecessary checks in the editor to special-case assets found in umap files.
[CL 2073723 by Bob Tellez in Main branch]
2014-05-14 22:02:10 -04:00
Jamie Dale
4dd8fa6bf4 #ttp 331051 - EDITOR: Can we extend the Set Color on folder functionality in the content browser to Collections as well?
#proj UE4
#branch UE4
#summary Collections now store and display a custom colour based on the local user settings
#extra This works the same was as it does for folders.
#reviewedby Thomas.Sarkanen, Max.Preussner

[CL 2043079 by Jamie Dale in Main branch]
2014-04-23 18:13:40 -04:00