diff options
author | Julian Eisel <julian@blender.org> | 2022-03-14 18:39:42 +0300 |
---|---|---|
committer | Julian Eisel <julian@blender.org> | 2022-03-14 18:50:49 +0300 |
commit | 9b298cf3dbec9e246748448cc635a5055fe90c19 (patch) | |
tree | c9fb6ddaf16bec463d9d4dd5a65a8c9d285afc8f /source/blender/editors/transform | |
parent | cff6eb65804da3a06bde3c9152bec26e01a24992 (diff) |
RNA: Generate property declerations header, solving msg-bus C++ incompatibility
Lets `makesrna` generate a `RNA_prototypes.h` header with declarations for all
RNA properties. This can be included in regular source files when needing to
reference RNA properties statically.
This solves an issue on MSVC with adding such declarations in functions, like
we used to do. See 800fc1736748. Removes any such declarations and the related
FIXME comments.
Reviewed By: campbellbarton, LazyDodo, brecht
Differential Revision: https://developer.blender.org/D13837
Diffstat (limited to 'source/blender/editors/transform')
4 files changed, 5 insertions, 11 deletions
diff --git a/source/blender/editors/transform/CMakeLists.txt b/source/blender/editors/transform/CMakeLists.txt index a7430cf88a5..c8033d9d767 100644 --- a/source/blender/editors/transform/CMakeLists.txt +++ b/source/blender/editors/transform/CMakeLists.txt @@ -17,6 +17,8 @@ set(INC ../../windowmanager ../../../../intern/glew-mx ../../../../intern/guardedalloc + # RNA_prototypes.h + ${CMAKE_BINARY_DIR}/source/blender/makesrna ) @@ -112,3 +114,6 @@ set(LIB blender_add_lib(bf_editor_transform "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") + +# RNA_prototypes.h +add_dependencies(bf_editor_transform bf_rna) diff --git a/source/blender/editors/transform/transform_gizmo_2d.c b/source/blender/editors/transform/transform_gizmo_2d.c index da601328192..3b523708872 100644 --- a/source/blender/editors/transform/transform_gizmo_2d.c +++ b/source/blender/editors/transform/transform_gizmo_2d.c @@ -116,8 +116,6 @@ static void gizmo2d_pivot_point_message_subscribe(struct wmGizmoGroup *gzgroup, PointerRNA ptr; RNA_pointer_create(&screen->id, &RNA_SpaceImageEditor, sima, &ptr); { - extern PropertyRNA rna_SpaceImageEditor_pivot_point; - extern PropertyRNA rna_SpaceImageEditor_cursor_location; const PropertyRNA *props[] = { &rna_SpaceImageEditor_pivot_point, (sima->around == V3D_AROUND_CURSOR) ? &rna_SpaceImageEditor_cursor_location : NULL, diff --git a/source/blender/editors/transform/transform_gizmo_3d.c b/source/blender/editors/transform/transform_gizmo_3d.c index 5381785091a..955916ff437 100644 --- a/source/blender/editors/transform/transform_gizmo_3d.c +++ b/source/blender/editors/transform/transform_gizmo_3d.c @@ -1187,7 +1187,6 @@ static void gizmo_xform_message_subscribe(wmGizmoGroup *gzgroup, PointerRNA scene_ptr; RNA_id_pointer_create(&scene->id, &scene_ptr); { - extern PropertyRNA rna_Scene_transform_orientation_slots; const PropertyRNA *props[] = { &rna_Scene_transform_orientation_slots, }; @@ -1205,8 +1204,6 @@ static void gizmo_xform_message_subscribe(wmGizmoGroup *gzgroup, } { - extern PropertyRNA rna_TransformOrientationSlot_type; - extern PropertyRNA rna_TransformOrientationSlot_use; const PropertyRNA *props[] = { &rna_TransformOrientationSlot_type, &rna_TransformOrientationSlot_use, @@ -1223,7 +1220,6 @@ static void gizmo_xform_message_subscribe(wmGizmoGroup *gzgroup, RNA_pointer_create(&scene->id, &RNA_ToolSettings, scene->toolsettings, &toolsettings_ptr); if (ELEM(type_fn, VIEW3D_GGT_xform_gizmo, VIEW3D_GGT_xform_shear)) { - extern PropertyRNA rna_ToolSettings_transform_pivot_point; const PropertyRNA *props[] = { &rna_ToolSettings_transform_pivot_point, }; @@ -1234,7 +1230,6 @@ static void gizmo_xform_message_subscribe(wmGizmoGroup *gzgroup, } { - extern PropertyRNA rna_ToolSettings_workspace_tool_type; const PropertyRNA *props[] = { &rna_ToolSettings_workspace_tool_type, }; @@ -1250,9 +1245,6 @@ static void gizmo_xform_message_subscribe(wmGizmoGroup *gzgroup, if (type_fn == VIEW3D_GGT_xform_gizmo) { GizmoGroup *ggd = gzgroup->customdata; if (ggd->use_twtype_refresh) { - extern PropertyRNA rna_SpaceView3D_show_gizmo_object_translate; - extern PropertyRNA rna_SpaceView3D_show_gizmo_object_rotate; - extern PropertyRNA rna_SpaceView3D_show_gizmo_object_scale; const PropertyRNA *props[] = { &rna_SpaceView3D_show_gizmo_object_translate, &rna_SpaceView3D_show_gizmo_object_rotate, diff --git a/source/blender/editors/transform/transform_gizmo_extrude_3d.c b/source/blender/editors/transform/transform_gizmo_extrude_3d.c index f6f43f867ae..131a7fd517f 100644 --- a/source/blender/editors/transform/transform_gizmo_extrude_3d.c +++ b/source/blender/editors/transform/transform_gizmo_extrude_3d.c @@ -485,7 +485,6 @@ static void gizmo_mesh_extrude_message_subscribe(const bContext *C, Scene *scene = CTX_data_scene(C); PointerRNA toolsettings_ptr; RNA_pointer_create(&scene->id, &RNA_ToolSettings, scene->toolsettings, &toolsettings_ptr); - extern PropertyRNA rna_ToolSettings_workspace_tool_type; const PropertyRNA *props[] = { &rna_ToolSettings_workspace_tool_type, }; |