22
33#include " Wrappers/UEPyESlateEnums.h"
44
5- static PyObject * py_ue_fmenu_builder_begin_section (ue_PyFMenuBuilder * self, PyObject * args)
5+ static PyObject* py_ue_fmenu_builder_begin_section (ue_PyFMenuBuilder* self, PyObject* args)
66{
7- char * name;
8- char * text;
7+ char * name;
8+ char * text;
99 if (!PyArg_ParseTuple (args, " ss:begin_section" , &name, &text))
1010 return nullptr ;
1111
@@ -14,27 +14,31 @@ static PyObject *py_ue_fmenu_builder_begin_section(ue_PyFMenuBuilder *self, PyOb
1414 Py_RETURN_NONE;
1515}
1616
17- static PyObject * py_ue_fmenu_builder_end_section (ue_PyFMenuBuilder * self, PyObject * args)
17+ static PyObject* py_ue_fmenu_builder_end_section (ue_PyFMenuBuilder* self, PyObject* args)
1818{
1919 self->menu_builder .EndSection ();
2020
2121 Py_RETURN_NONE;
2222}
2323
24- static PyObject * py_ue_fmenu_builder_make_widget (ue_PyFMenuBuilder * self, PyObject * args)
24+ static PyObject* py_ue_fmenu_builder_make_widget (ue_PyFMenuBuilder* self, PyObject* args)
2525{
26- ue_PySWidget * ret = (ue_PySWidget *)PyObject_New (ue_PySWidget, &ue_PySWidgetType);
26+ ue_PySWidget* ret = (ue_PySWidget*)PyObject_New (ue_PySWidget, &ue_PySWidgetType);
2727 new (&ret->Widget ) TSharedRef<SWidget>(self->menu_builder .MakeWidget ());
28- return (PyObject *)ret;
28+ return (PyObject*)ret;
2929}
3030
31- static PyObject * py_ue_fmenu_builder_add_menu_entry (ue_PyFMenuBuilder * self, PyObject * args)
31+ static PyObject* py_ue_fmenu_builder_add_menu_entry (ue_PyFMenuBuilder* self, PyObject* args)
3232{
33- char *label;
34- char *tooltip;
35- PyObject *py_callable;
36- PyObject *py_obj = nullptr ;
33+ char * label;
34+ char * tooltip;
35+ PyObject* py_callable;
36+ PyObject* py_obj = nullptr ;
37+ #if ENGINE_MINOR_VERSION >= 23
38+ int ui_action_type = (int )EUserInterfaceActionType::Button;
39+ #else
3740 int ui_action_type = EUserInterfaceActionType::Button;
41+ #endif
3842 if (!PyArg_ParseTuple (args, " ssO|Oi:add_menu_entry" , &label, &tooltip, &py_callable, &py_obj, &ui_action_type))
3943 return nullptr ;
4044
@@ -58,17 +62,21 @@ static PyObject *py_ue_fmenu_builder_add_menu_entry(ue_PyFMenuBuilder *self, PyO
5862 }
5963
6064 self->menu_builder .AddMenuEntry (FText::FromString (UTF8_TO_TCHAR (label)), FText::FromString (UTF8_TO_TCHAR (tooltip)), FSlateIcon (), FUIAction (handler), NAME_None,
65+ #if ENGINE_MINOR_VERSION >= 23
66+ (EUserInterfaceActionType)ui_action_type);
67+ #else
6168 (EUserInterfaceActionType::Type)ui_action_type);
69+ #endif
6270
6371 Py_RETURN_NONE;
6472}
6573
66- static PyObject * py_ue_fmenu_builder_add_sub_menu (ue_PyFMenuBuilder * self, PyObject * args)
74+ static PyObject* py_ue_fmenu_builder_add_sub_menu (ue_PyFMenuBuilder* self, PyObject* args)
6775{
68- char * label;
69- char * tooltip;
70- PyObject * py_callable;
71- PyObject * py_bool = nullptr ;
76+ char * label;
77+ char * tooltip;
78+ PyObject* py_callable;
79+ PyObject* py_bool = nullptr ;
7280 if (!PyArg_ParseTuple (args, " ssO|O:add_sub_menu" , &label, &tooltip, &py_callable, &py_bool))
7381 return nullptr ;
7482
@@ -77,7 +85,7 @@ static PyObject *py_ue_fmenu_builder_add_sub_menu(ue_PyFMenuBuilder *self, PyObj
7785 return PyErr_Format (PyExc_Exception, " argument is not callable" );
7886 }
7987
80-
88+
8189 TSharedRef<FPythonSlateDelegate> py_delegate = FUnrealEnginePythonHouseKeeper::Get ()->NewStaticSlateDelegate (py_callable);
8290
8391 FNewMenuDelegate menu_delegate;
@@ -89,9 +97,9 @@ static PyObject *py_ue_fmenu_builder_add_sub_menu(ue_PyFMenuBuilder *self, PyObj
8997 Py_RETURN_NONE;
9098}
9199
92- static PyObject * py_ue_fmenu_builder_add_menu_separator (ue_PyFMenuBuilder * self, PyObject * args)
100+ static PyObject* py_ue_fmenu_builder_add_menu_separator (ue_PyFMenuBuilder* self, PyObject* args)
93101{
94- char * name = nullptr ;
102+ char * name = nullptr ;
95103
96104 if (!PyArg_ParseTuple (args, " |s:add_menu_separator" , &name))
97105 return nullptr ;
@@ -107,9 +115,9 @@ static PyObject *py_ue_fmenu_builder_add_menu_separator(ue_PyFMenuBuilder *self,
107115}
108116
109117#if WITH_EDITOR
110- static PyObject * py_ue_fmenu_builder_add_asset_actions (ue_PyFMenuBuilder * self, PyObject * args)
118+ static PyObject* py_ue_fmenu_builder_add_asset_actions (ue_PyFMenuBuilder* self, PyObject* args)
111119{
112- PyObject * py_assets;
120+ PyObject* py_assets;
113121
114122 if (!PyArg_ParseTuple (args, " O:add_asset_actions" , &py_assets))
115123 return nullptr ;
@@ -120,10 +128,10 @@ static PyObject *py_ue_fmenu_builder_add_asset_actions(ue_PyFMenuBuilder *self,
120128 return PyErr_Format (PyExc_Exception, " argument is not iterable" );
121129 }
122130
123- TArray<UObject *> u_objects;
124- while (PyObject *item = PyIter_Next (py_assets))
131+ TArray<UObject*> u_objects;
132+ while (PyObject * item = PyIter_Next (py_assets))
125133 {
126- UObject * u_object = ue_py_check_type<UObject>(item);
134+ UObject* u_object = ue_py_check_type<UObject>(item);
127135 if (u_object)
128136 {
129137 u_objects.Add (u_object);
@@ -142,7 +150,7 @@ static PyObject *py_ue_fmenu_builder_add_asset_actions(ue_PyFMenuBuilder *self,
142150}
143151#endif
144152
145- static PyObject * py_ue_fmenu_builder_add_search_widget (ue_PyFMenuBuilder * self, PyObject * args)
153+ static PyObject* py_ue_fmenu_builder_add_search_widget (ue_PyFMenuBuilder* self, PyObject* args)
146154{
147155 self->menu_builder .AddSearchWidget ();
148156
@@ -164,13 +172,13 @@ static PyMethodDef ue_PyFMenuBuilder_methods[] = {
164172};
165173
166174
167- static PyObject * ue_PyFMenuBuilder_str (ue_PyFMenuBuilder * self)
175+ static PyObject* ue_PyFMenuBuilder_str (ue_PyFMenuBuilder* self)
168176{
169177 return PyUnicode_FromFormat (" <unreal_engine.FMenuBuilder '%p'}>" ,
170178 &self->menu_builder );
171179}
172180
173- static void ue_py_fmenu_builder_dealloc (ue_PyFMenuBuilder * self)
181+ static void ue_py_fmenu_builder_dealloc (ue_PyFMenuBuilder* self)
174182{
175183#if PY_MAJOR_VERSION < 3
176184 self->ob_type ->tp_free ((PyObject*)self);
@@ -210,14 +218,14 @@ static PyTypeObject ue_PyFMenuBuilderType = {
210218 ue_PyFMenuBuilder_methods, /* tp_methods */
211219};
212220
213- static int ue_py_fmenu_builder_init (ue_PyFMenuBuilder * self, PyObject * args, PyObject * kwargs)
221+ static int ue_py_fmenu_builder_init (ue_PyFMenuBuilder* self, PyObject* args, PyObject* kwargs)
214222{
215223 new (&self->menu_builder ) FMenuBuilder (true , nullptr );
216224 return 0 ;
217225}
218226
219227
220- void ue_python_init_fmenu_builder (PyObject * ue_module)
228+ void ue_python_init_fmenu_builder (PyObject* ue_module)
221229{
222230 ue_PyFMenuBuilderType.tp_new = PyType_GenericNew;
223231
@@ -227,12 +235,12 @@ void ue_python_init_fmenu_builder(PyObject *ue_module)
227235 return ;
228236
229237 Py_INCREF (&ue_PyFMenuBuilderType);
230- PyModule_AddObject (ue_module, " FMenuBuilder" , (PyObject *)&ue_PyFMenuBuilderType);
238+ PyModule_AddObject (ue_module, " FMenuBuilder" , (PyObject*)& ue_PyFMenuBuilderType);
231239}
232240
233- PyObject * py_ue_new_fmenu_builder (FMenuBuilder menu_builder)
241+ PyObject* py_ue_new_fmenu_builder (FMenuBuilder menu_builder)
234242{
235- ue_PyFMenuBuilder * ret = (ue_PyFMenuBuilder *)PyObject_New (ue_PyFMenuBuilder, &ue_PyFMenuBuilderType);
243+ ue_PyFMenuBuilder* ret = (ue_PyFMenuBuilder*)PyObject_New (ue_PyFMenuBuilder, &ue_PyFMenuBuilderType);
236244 new (&ret->menu_builder ) FMenuBuilder (menu_builder);
237- return (PyObject *)ret;
245+ return (PyObject*)ret;
238246}
0 commit comments