Commit Graph

39 Commits

Author SHA1 Message Date
Max Preussner
4766ae4a3e PluginEditor: Burst upgrades; added documentation links
[CL 2322900 by Max Preussner in Main branch]
2014-10-08 13:14:41 -04:00
Max Preussner
6510058ee7 Core: Moved Json out of Core and into its own module
The main changes are as follows:

1. moved Json out of Core into own module 'Json'
2. moved 3 i10n classes (Json serializers) from Core into a new module 'Internationalization' *
3. fixed up 2 i10n classes in Core to not instantiate the 3 Json-based classes. instead they are now passed in as a dependency

*) (2) and (3) were required to decouple the I10n code in Core from Json. Much of the i10n code probably doesn't belong into Core in the first place, but there is no time to fix this right now.

The following cosmetic changes were also made:

- NULL to nullptr
- namespaced enums to enum classes
- renamed the three i10n Json serializer classes to comply with naming conventions
- removed file header comments (not used)
- documentation, spelling, spacing etc,

#UpgradeNotes: If your module is including Json.h then you have to add 'Json' to your Build.cs module dependencies.

#ReviewedBy: justin.sargent, saul.abreu

[CL 2310420 by Max Preussner in Main branch]
2014-09-25 18:03:04 -04:00
Mikolaj Sieluzycki
969a19da52 TTP#341974 CORE: Add support for external content for plugins.
#codereview Robert.Manuszewski

[CL 2297762 by Mikolaj Sieluzycki in Main branch]
2014-09-15 03:24:02 -04:00
Robert Manuszewski
6c3eefa7a7 Fixing missing comma in ScriptPlugin.uplugin, adding filename to the plugin manager error so that it's actually useful
[CL 2293849 by Robert Manuszewski in Main branch]
2014-09-11 11:59:05 -04:00
Ben Marsh
31618620c1 Include module names in dialog for recompiling on startup, and don't allow continuing if they are an incorrect version.
[CL 2292600 by Ben Marsh in Main branch]
2014-09-10 12:43:07 -04:00
Ben Marsh
7e47a9d047 Remove virtual function to return .uproject extension from IProjectManager.
[CL 2289650 by Ben Marsh in Main branch]
2014-09-08 13:51:36 -04:00
Ankit Khare
bbae8dd0fb #UE4 Fix root cause of why blacklisted plugins were being loaded on HTML5, revert CL 2255415.
[CL 2256912 by Ankit Khare in Main branch]
2014-08-14 18:10:04 -04:00
Ankit Khare
ff407eb387 #UE4 Respect Blacklist Platforms for Plugins.
fixes crashes caused by early outs and uninitialized modules.

#codereview peter.sauerbrei, ben.marsh

[CL 2255415 by Ankit Khare in Main branch]
2014-08-13 19:25:22 -04:00
Dmitry Rekman
30a9dc0957 [Github] PR #306: safe/minor changes.
- Minor fixes, Linux-specific additions (like preferred source code accessor setting or building ForsythTriOO) and tweaks (log level, etc).

#codereview Josh.Adams

[CL 2237893 by Dmitry Rekman in Main branch]
2014-07-30 23:46:52 -04:00
Ben Marsh
a66e704793 Require all plugins to be present for a project to load, rather than attempting to carry on without them. Plugins may define object types, and loading packages without them can cause corruption. Can revisit in the future to allow for 'editor-only' plugins.
Plugin reference in the .uproject file has a "Description" field which allows setting a customizable message if the plugin is not available. Allows distribution of samples which require a plugin, but without including the plugin itself.

[CL 2237188 by Ben Marsh in Main branch]
2014-07-30 13:16:05 -04:00
Ben Marsh
3bac51e396 Provide a proper error message if a file cannot be deleted during project upgrade, and fix offering to checkout the project file if necessary.
[CL 2227462 by Ben Marsh in Main branch]
2014-07-22 15:58:02 -04:00
Ben Marsh
fe7edf8ebd Add a PostEngineInit load phase for modules
[CL 2187983 by Ben Marsh in Main branch]
2014-07-10 21:04:34 -04:00
Ben Marsh
97e8212ca3 Don't tell the module manager about plugin modules before we need to load them. It shouldn't need to know, and it causes it to cache when modules are missing even if they can be compiled.
[CL 2187821 by Ben Marsh in Main branch]
2014-07-10 14:20:43 -04:00
Ben Marsh
7e5c0aa227 Prevent an ensure when starting programs that compile-in the plugin manager but do not support content plugins, like SCW.
[CL 2131316 by Ben Marsh in Main branch]
2014-07-03 14:08:35 -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
Robert Manuszewski
f9bee4dda7 [GitHub] 263 : Search for project templates in plugin directories
[CL 2124323 by Robert Manuszewski in Main branch]
2014-07-02 07:33:17 -04:00
Ben Marsh
e35719b0b4 Store whether a plugin is enabled by default in the uplugin file (rather than in the INI file). Simplifies checks for what is enabled in UE4Game and decentralizes everything.
[CL 2119957 by Ben Marsh in Main branch]
2014-06-27 16:38:50 -04:00
Ben Marsh
100dfb0b32 Store the list of enabled plugins in the uproject file (fixing TTP 335060), and enable all game plugins by default (TTP 339313).
[CL 2119810 by Ben Marsh in Main branch]
2014-06-27 15:23:15 -04:00
Ben Marsh
8d04b7998a Separate out project and plugin descriptors from each other, and the instance data maintained by their respective managers. Projects and plugins already only have superficial similarities, and will continue to diverge.
[CL 2119335 by Ben Marsh in Main branch]
2014-06-27 08:41:46 -04:00
Ben Marsh
46b651e4a7 Make a standalone class for module descriptors in .uproject and .uplugin files.
[CL 2116860 by Ben Marsh in Main branch]
2014-06-25 13:09:31 -04:00
Michael Noland
b6e9810498 Editor: Convert IntroTutorials to a module so other plugins can reference it
[CL 2116088 by Michael Noland in Main branch]
2014-06-24 20:14:23 -04:00
Peter Sauerbrei
d0729e07a9 add check for third-party plugins for IOS on PC as we don't support that currently in the released version
#ue4
#ios

[CL 2111986 by Peter Sauerbrei in Main branch]
2014-06-20 13:38:05 -04:00
Max Preussner
017837289f Modules: Module Manager API cleanup pass
There is now a consistent set of methods for module loading, unloading and lookup that all behave in the same expected way.

- renamed GetModuleInterface to GetModule and made it not assert
- removed GetModuleInterfaceRef
- namespace enums to enum classes, NULL to nullptr
- moved important public methods to the top, so they're easier to discover
- added missing & improved existing documentation
- cleaned up existing use cases

[CL 2109936 by Max Preussner in Main branch]
2014-06-18 19:23:34 -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
Max Preussner
3aece47882 Docs: Removed file comments and added missing code documentation
Please note that file comments had no purpose in nearly all cases and just added visual clutter. The two files that had meaningful file comments had their comments moved into the corresponding classes. There are still hundreds of file comments left in other files that will be removed over time.

Also cleaned up some random stuff along the way:
- relative paths to public headers within the same module are no longer necessary (automatically discovered by UBT now)
- header guards are deprecated, use #pragma once instead (all compilers support it now)
- space between multiple template brackets is no longer required (all compilers support >> now)
- NULL to nullptr, OVERRIDE to override
- spelling errors, whitespace, line breaks

[CL 2104067 by Max Preussner in Main branch]
2014-06-12 23:22:18 -04:00