@@ -131,8 +131,6 @@ def get_file_list(api_filepath, output_dir, headers=False, sources=False):
131
131
if sources :
132
132
utility_functions_source_path = source_gen_folder / "variant" / "utility_functions.cpp"
133
133
files .append (str (utility_functions_source_path .as_posix ()))
134
- register_engine_classes_source_path = source_gen_folder / "register_engine_classes.cpp"
135
- files .append (str (register_engine_classes_source_path .as_posix ()))
136
134
137
135
return files
138
136
@@ -1207,10 +1205,6 @@ def generate_engine_classes_bindings(api, output_dir, use_template_get_node):
1207
1205
generate_engine_class_source (class_api , used_classes , fully_used_classes , use_template_get_node )
1208
1206
)
1209
1207
1210
- register_engine_classes_filename = Path (output_dir ) / "src" / "register_engine_classes.cpp"
1211
- with register_engine_classes_filename .open ("w+" , encoding = "utf-8" ) as source_file :
1212
- source_file .write (generate_register_engine_classes_source (api ))
1213
-
1214
1208
for native_struct in api ["native_structures" ]:
1215
1209
struct_name = native_struct ["name" ]
1216
1210
snake_struct_name = camel_to_snake (struct_name )
@@ -1285,7 +1279,7 @@ def generate_engine_class_header(class_api, used_classes, fully_used_classes, us
1285
1279
result .append (f"#include <godot_cpp/{ get_include_path (included )} >" )
1286
1280
1287
1281
if class_name == "EditorPlugin" :
1288
- result .append ("#include <godot_cpp/templates/vector .hpp>" )
1282
+ result .append ("#include <godot_cpp/classes/editor_plugin_registration .hpp>" )
1289
1283
1290
1284
if len (fully_used_classes ) > 0 :
1291
1285
result .append ("" )
@@ -1437,30 +1431,6 @@ def generate_engine_class_header(class_api, used_classes, fully_used_classes, us
1437
1431
result .append ("};" )
1438
1432
result .append ("" )
1439
1433
1440
- if class_name == "EditorPlugin" :
1441
- result .append ("class EditorPlugins {" )
1442
- result .append ("private:" )
1443
- result .append ("\t static Vector<StringName> plugin_classes;" )
1444
- result .append ("" )
1445
- result .append ("public:" )
1446
- result .append ("\t static void add_plugin_class(const StringName &p_class_name);" )
1447
- result .append ("\t static void remove_plugin_class(const StringName &p_class_name);" )
1448
- result .append ("\t static void deinitialize(GDExtensionInitializationLevel p_level);" )
1449
- result .append ("" )
1450
-
1451
- result .append ("\t template <class T>" )
1452
- result .append ("\t static void add_by_type() {" )
1453
- result .append ("\t \t add_plugin_class(T::get_class_static());" )
1454
- result .append ("\t }" )
1455
-
1456
- result .append ("\t template <class T>" )
1457
- result .append ("\t static void remove_by_type() {" )
1458
- result .append ("\t \t remove_plugin_class(T::get_class_static());" )
1459
- result .append ("\t }" )
1460
-
1461
- result .append ("};" )
1462
- result .append ("" )
1463
-
1464
1434
result .append ("} // namespace godot" )
1465
1435
result .append ("" )
1466
1436
@@ -1685,38 +1655,6 @@ def generate_engine_class_source(class_api, used_classes, fully_used_classes, us
1685
1655
return "\n " .join (result )
1686
1656
1687
1657
1688
- def generate_register_engine_classes_source (api ):
1689
- includes = []
1690
- registrations = []
1691
-
1692
- for class_api in api ["classes" ]:
1693
- if class_api ["name" ] == "ClassDB" :
1694
- continue
1695
-
1696
- class_name = class_api ["name" ]
1697
- snake_class_name = camel_to_snake (class_name )
1698
-
1699
- includes .append (f"#include <godot_cpp/classes/{ snake_class_name } .hpp>" )
1700
- registrations .append (f"\t ClassDB::register_engine_class<{ class_name } >();" )
1701
-
1702
- result = []
1703
- add_header (f"register_engine_classes.cpp" , result )
1704
-
1705
- result .append ("#include <godot_cpp/godot.hpp>" )
1706
- result .append ("" )
1707
- result = result + includes
1708
- result .append ("" )
1709
- result .append ("namespace godot {" )
1710
- result .append ("" )
1711
- result .append ("void GDExtensionBinding::register_engine_classes() {" )
1712
- result = result + registrations
1713
- result .append ("}" )
1714
- result .append ("" )
1715
- result .append ("} // namespace godot " )
1716
-
1717
- return "\n " .join (result )
1718
-
1719
-
1720
1658
def generate_global_constants (api , output_dir ):
1721
1659
include_gen_folder = Path (output_dir ) / "include" / "godot_cpp" / "classes"
1722
1660
source_gen_folder = Path (output_dir ) / "src" / "classes"
0 commit comments