Commit Graph

114 Commits

Author SHA1 Message Date
Jaroslaw Palczynski
399074d7ea DonÆt default to æpublicÆ protection level in classes.
UECORE-8

[CL 2327190 by Jaroslaw Palczynski in Main branch]
2014-10-13 10:31:50 -04:00
Jaroslaw Palczynski
cc0f6d9a4e UObject custom constructors.
In order to use new feature user have to change GENERATED_UCLASS_BODY() macro to the new GENERATED_BODY(). Then no constructor is implicitly declared. If there is no constructor declared in UCLASS then PCIP one is declared and defined that passes PCIP down to super-class. On the other hand if there is a constructor declared then UObject system expects to have one of the default or PCIP constructor to initialize a class during loading from disk, default object creation, etc. and it expects that user will declare and define one.

There is a possibility now to create UCLASS with the default constructor (i.e. no PCIP).

New macro is encouraged by standard classes and in-editor wizards templates.

#codereview Robert.Manuszewski

[CL 2325282 by Jaroslaw Palczynski in Main branch]
2014-10-10 04:34:56 -04:00
Fred Kimberley
aade1b1941 Merging the latest changes to the ability system.
Merging using UE4-Fortnite-To-UE4

#codereview David.Ratti, Richard.Hinckley

[CL 2321666 by Fred Kimberley in Main branch]
2014-10-07 15:19:27 -04:00
Jaroslaw Palczynski
37f19fe3fa Server functions passed by non-const reference result in bad code generation.
Fixed.

#ttp 338601

[CL 2321310 by Jaroslaw Palczynski in Main branch]
2014-10-07 11:04:06 -04:00
Nick Whiting
6831a712a7 #ue4 Fix for NotBlueprintType specifier not removing BlueprintType specifier, causing conflicting metadata
[CL 2317887 by Nick Whiting in Main branch]
2014-10-02 17:29:05 -04:00
Nick Darnell
6fbae11592 Blueprint - We now support making FText an exposed on spawn parameter.
[CL 2317619 by Nick Darnell in Main branch]
2014-10-02 14:23:34 -04:00
Michael Noland
928559eaa0 Editor: Coding-standards fixes (TypeName [*|&] VariableName -> TypeName[*|&] VariableName)
[CL 2316341 by Michael Noland in Main branch]
2014-10-01 14:45:23 -04:00
Zak Middleton
ae46af7395 #ue4 - Fix HeaderParser so it no longer removes valid uses of "*", " * ", etc from within comments when generating tooltips. Only asterisks from the beginning of lines following only whitespace are removed.
- For example: "A * B" within a java-doc comment used to become "A B".

[CL 2316224 by Zak Middleton in Main branch]
2014-10-01 13:24:30 -04:00
Mikolaj Sieluzycki
f7729605e0 Disable deprecation warnings in generated code.
#codereview Steve.Robb

[CL 2315678 by Mikolaj Sieluzycki in Main branch]
2014-10-01 05:47:47 -04:00
Steve Robb
c1d423f758 Better error message regarding the use of interfaces as properties, suggesting the use of TScriptInterface instead.
#codereview robert.manuszewski

[CL 2314145 by Steve Robb in Main branch]
2014-09-30 09:10:54 -04:00
Steve Robb
04d7d74f86 Minor fixes to new casts.
* InterfaceCast deprecation version number changed to 4.6.
* Double-underscored identifiers replaced with names which aren't reserved.

#codereview robert.manuszewski,mike.fricker

[CL 2314098 by Steve Robb in Main branch]
2014-09-30 07:30:24 -04:00
Steve Robb
35c2fea8c4 Cast unification.
* Cast can be used for every UClass/interface cast:
  - Up/down UObject hierarchy.
  - From interfaces to UObjects.
  - From UObjects to interfaces.
  - Between interfaces.
* InterfaceCast has been deprecated.
* dynamic_cast can now be used instead of Cast.
* dynamic_cast between two UType pointers will be equivalent to Cast, but with dynamic_cast syntax and semantics.
* dynamic_cast of references is equivalent to a CastChecked - if it fails, it will fatally log rather than throw a std::bad_cast exception (UE doesn't support exceptions).
* If the two types involved are not UTypes, it should continue to act like a normal dynamic_cast.
* dynamic_cast<void*> works as expected.
* All/many Casts in CoreUObject changed to dynamic_cast to show this behaviour.
* Some refactoring.

#codereview robert.manuszewski,mike.fricker

[CL 2312800 by Steve Robb in Main branch]
2014-09-29 09:24:50 -04:00
Steve Robb
53d7de0fc8 Enum class codegen fixes for UFunctions, as raised here:
https://github.com/EpicGames/UnrealEngine/pull/433

#codereview robert.manuszewski

[CL 2312741 by Steve Robb in Main branch]
2014-09-29 07:39:15 -04:00
Jaroslaw Palczynski
65ba5d456f TArray documentation and a coupld of methods deprecation.
Changes mostly in Array.h. The changes in other files are only renames for deprecated functions.

[CL 2312616 by Jaroslaw Palczynski in Main branch]
2014-09-29 04:23:44 -04:00
Jaroslaw Palczynski
78f6bf5355 [GitHub] 337 : Add module gen include dir to ShouldExportClassesForModule
#ttp 343350

[CL 2312600 by Jaroslaw Palczynski in Main branch]
2014-09-29 04:03:28 -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
Maciej Mroz
f55429024e CPF_EditInline flag removed (replaced by metadata).
CPF_PersistentInstance  flag added.

#codereview Robert.Manuszewski, Nick.Whiting, James.Golding

[CL 2308211 by Maciej Mroz in Main branch]
2014-09-24 09:09:32 -04:00
Maciej Mroz
7e1c4c25ca 347339 BLOCKER: CRASH: EDITOR: ORION: Occurs when adding a skylight to a scene.
347343 BLOCKER: EDITOR: ORION: Unable to edit or view the light details properties.

[CL 2306682 by Maciej Mroz in Main branch]
2014-09-23 05:53:00 -04:00
Robert Manuszewski
343352654a UObjects: no longer require dummy UClasses in UStruct-only modules.
#change Added code to make sure the script package is created before UEnums and UStructs get registered

[CL 2306655 by Robert Manuszewski in Main branch]
2014-09-23 05:12:53 -04:00
Josh Adams
4cec25879d - No longer compile Engine.generated.1.cpp and .2.cpp together, as the large resulting code is crashing x86 android compiler.
- Fixed a couple issues with Android fat binaries (cleaning and obb being archived multiple times)
- Touched Engine.h to force a UHT refresh
#codereview Robert.Manuszewski

[CL 2305487 by Josh Adams in Main branch]
2014-09-22 09:46:58 -04:00
Maciej Mroz
8523cb31f0 The CPF_EditInline flag, will force the subobject instance to be persistent, but CLASS_DefaultToInstanced wonÆt imply CPF_EditInline anymore.
#codereview Ben.Zeigler, Robert.Manuszewski

[CL 2305323 by Maciej Mroz in Main branch]
2014-09-22 09:42:15 -04:00
Robert Manuszewski
3144ce46a8 Removing references to MakeCommandlet from code
[CL 2302207 by Robert Manuszewski in Main branch]
2014-09-18 04:05:01 -04:00
Michael Noland
3fbebf9cf5 UnrealHeaderTool: Clarified a couple of error messages that sounded like keywords were limited to only multicast delegate properties (when they are also applicable to functions)
[CL 2286811 by Michael Noland in Main branch]
2014-09-05 17:50:18 -04:00
Ben Marsh
d591804587 Move hot reload functionality from Core into the HotReload module. Precursor to removing assumptions about IS_MONOLITHIC and supporting hybrid monolithic configurations.
[CL 2286426 by Ben Marsh in Main branch]
2014-09-05 12:46:22 -04:00
Michael Schoell
358bea4d7b Resolved issues causing an ensure to fire when compiling a Blueprint with an overide function.
Having a private function with BlueprintImplementableEvent will now report as an error by the UHT.

Having a sealed function with BlueprintImplementableEvent will now report as an error by the UHT.

Having a 'final' function with BlueprintImplementableEvent will now report as an error by the UHT.

#ttp 343140 - BP:  LIVE CRASH:  ensure((Function->FunctionFlags & FUNC_FuncOverrideMatch) == (OverridenFunction->FunctionFlags & FUNC_FuncOverrideMatch))

[CL 2283008 by Michael Schoell in Main branch]
2014-09-03 10:46:58 -04:00