Commit Graph

135 Commits

Author SHA1 Message Date
Jamie Dale
046a164ece Exposed UserDefinedEnum types to Python
This is the first phase of allowing Blueprint types to be generated for Python, which must be accessed via unreal.get_blueprint_generated_types(...) as asset names are not guaranteed to be unique, so they're not added to the unreal module.

Once a type has been generated for Python, it will be updated if the underlying asset is changed. Should the asset be deleted then the Python type will be reset to clean state and become mostly unusable.

This change also ensures that the Unreal type pointers referenced by the Python meta-data are ARO'd correctly. This will cause a warning if you try and delete an asset with a type used by Python.

 MyEnum = unreal.get_blueprint_generated_types('/Game/MyEnum') # This can also accept multiple arguments or a list, and will return a tuple of types
 print(MyEnum.MY_ENTRY)

#jira UE-81862, UE-81859
#rb Lauren.Barnes

[CL 10227467 by Jamie Dale in Dev-Editor branch]
2019-11-14 16:52:43 -05:00
Chris Gagnon
d1973355bc Merge Dev-Tools-Stagng tp Dev-Editor
#rb none

[CL 9961726 by Chris Gagnon in Dev-Editor branch]
2019-11-01 17:39:56 -04:00
Jamie Dale
5904862070 Added PropertyAccessUtil to contain the common logic of getting and setting properties in a way that emits change notifications
The existing Python code has been ported to use this, and this can also be used by Blueprints (or other C++ setting properties) to allow property changes that emit change notifications.

#jira UE-77388
#rb Chris.Gagnon

[CL 9706346 by Jamie Dale in Dev-Editor branch]
2019-10-18 18:51:40 -04:00
Chris Gagnon
5b7e66b1fb Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor) to CL 9544902 for stream reparenting.
#rb none

[CL 9671142 by Chris Gagnon in Dev-Editor branch]
2019-10-17 19:44:57 -04:00
Jamie Dale
4c9963fda8 Register enum entries from Python in a deterministic order using their value
#fyi Adric.Worley
#rb none

[CL 9576555 by Jamie Dale in Dev-Editor branch]
2019-10-14 17:44:13 -04:00
Jamie Dale
ba3fd09c24 Remove invalid warning when reinstancing Python generated enum types
#fyi Adric.Worley
#rb none

[CL 9573164 by Jamie Dale in Dev-Editor branch]
2019-10-14 15:13:21 -04:00
Rolando Caloca
1a30325d6f Copying //UE4/Dev-RenderPlat-Staging@9551419 to //UE4/Main
#rb none
#rnx

[CL 9551447 by Rolando Caloca in Main branch]
2019-10-11 15:33:31 -04:00
Jamie Dale
764efecd41 Improved invalid parameter error when passing the incorrect struct type to Python
#rb none

[CL 9493857 by Jamie Dale in Main branch]
2019-10-09 16:59:44 -04:00
Jamie Dale
7ab6307cac Fixed typo when accessing property class type during Python glue validation
#fyi Robert.Manuszewski
#rb Robert.Manuszewski
#rnx

[CL 9489709 by Jamie Dale in Main branch]
2019-10-09 12:40:55 -04:00
Jason Bestimt
a530f72f7d Updating from //UE4/Dev-RenderPlat-Staging to Dev-VR (//UE4/Dev-VR) to turn on robomerge
#RB:none

[CL 9106247 by Jason Bestimt in Dev-VR branch]
2019-09-25 16:05:50 -04:00
ben marsh
e1deccdab4 Fix crash building a monolithic editor executable due to global constructors creating UObject instances before the UObject subsystem has been initialized.
#jira
[FYI] Jamie.Dale


#ROBOMERGE-SOURCE: CL 8988509 via CL 8988522
#ROBOMERGE-BOT: (v441-8974111)

[CL 8991871 by ben marsh in Main branch]
2019-09-23 16:43:24 -04:00
joe conley
dd22bf997f Copying //UE4/Dev-Anim to Dev-Main (//UE4/Dev-Main) [at] 8782600
#rb
#rnx

#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 8783278 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR) (v427-8887818)

[CL 8891540 by joe conley in Dev-VR branch]
2019-09-19 13:46:18 -04:00
Marc Audy
8df336162c Copying //UE4/Dev-Anim to Dev-Main (//UE4/Dev-Main) @ 8782600
#rb
#rnx

[CL 8783278 by Marc Audy in Main branch]
2019-09-17 19:12:19 -04:00
chris gagnon
5ee508d57f Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) Interim 4.24.
#rb none

#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: chris.gagnon
#ROBOMERGE-SOURCE: CL 8614014 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR) (v409-8614070)

[CL 8634524 by chris gagnon in Dev-VR branch]
2019-09-11 08:23:28 -04:00
Chris Gagnon
2e87118a18 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) Interim 4.24.
#rb none

[CL 8614014 by Chris Gagnon in Main branch]
2019-09-10 11:35:20 -04:00
jeanmichel dignard
e7d36d874a Put back CanContainContent: true in PythonScriptPlugin as it's required to parse the python scripts in the content folder.
#jira UE-79509
#rb none
#rnx
[FYI] Bob.Tellez

#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: jeanmichel.dignard
#ROBOMERGE-SOURCE: CL 8384193 in //UE4/Main/...
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR) (v404-8404397)

[CL 8467487 by jeanmichel dignard in Dev-VR branch]
2019-09-04 04:55:19 -04:00
bob tellez
108e12e978 #UE4 Disable CanContainContent in a few plugins that have no assets or maps so they dont appear in the content browser.
#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 8352044 via CL 8359277 via CL 8360258
#ROBOMERGE-BOT: DEVVR (Main -> Dev-VR) (v404-8404397)

[CL 8451507 by bob tellez in Dev-VR branch]
2019-09-03 21:08:55 -04:00
Joe Graf
041782c74a MERGE: Fixed the order that the return value is pushed into the list of parameters for a UFunction that maps to a Python function without a native super function backing it
- This fixes out params being at the wrong offsets causing the copy of the data to look at the wrong locations

#rb: merge

[CL 8385886 by Joe Graf in Dev-VR branch]
2019-08-30 14:39:50 -04:00
JeanMichel Dignard
8fd3d991e1 Put back CanContainContent: true in PythonScriptPlugin as it's required to parse the python scripts in the content folder.
#jira UE-79509
#rb none
#rnx
#fyi Bob.Tellez

[CL 8384193 by JeanMichel Dignard in Main branch]
2019-08-30 11:48:45 -04:00
bob tellez
bd41767067 #UE4 Disable CanContainContent in a few plugins that have no assets or maps so they dont appear in the content browser.
#ROBOMERGE-SOURCE: CL 8352044 via CL 8359277
#ROBOMERGE-BOT: (v401-8057353)

[CL 8360258 by bob tellez in Main branch]
2019-08-27 22:01:54 -04:00
Joe Graf
d6b06b64f8 MERGE: Fixed Python defined ufunctions having the parameters reversed due to how properties are added to functions
#rb: merge

[CL 8232114 by Joe Graf in Dev-VR branch]
2019-08-23 14:01:22 -04:00
Joe Graf
75d6f5c607 MERGE: Removed the find field to determine if a function is already present in the python class' hierarchy
#rb: merge

[CL 8214007 by Joe Graf in Dev-VR branch]
2019-08-22 15:09:19 -04:00
Joe Graf
0d278d7710 MERGE
Added error handling for a missing self paramter in a python function that is exposed to the engine
Added missing class flags that allow a python object to expose a python function as a BP node without having to be present in the native base class
Update the Blueprint action database when a python class is loaded after the list has already been populated

#rb: merge

[CL 8214003 by Joe Graf in Dev-VR branch]
2019-08-22 15:08:24 -04:00
Joe Graf
88114ef439 MERGE: Fixed python UFunctions not showing up in the owning UClass' field list due to missing link list insertion
#rb: merge

[CL 8213980 by Joe Graf in Dev-VR branch]
2019-08-22 15:07:39 -04:00
jamie dale
025f1e6e6c Fixed crash calling Python UObject function override with no args
#jira UE-75449
#rb Tim.Gautier
#rnx
#lockdown Cristina.Riveron

#ROBOMERGE-SOURCE: CL 8096673 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v401-8057353)

[CL 8096712 by jamie dale in Main branch]
2019-08-16 14:33:27 -04:00