Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Eisel <julian@blender.org>2022-03-14 18:39:42 +0300
committerJulian Eisel <julian@blender.org>2022-03-14 18:50:49 +0300
commit9b298cf3dbec9e246748448cc635a5055fe90c19 (patch)
treec9fb6ddaf16bec463d9d4dd5a65a8c9d285afc8f /source/blender/editors/transform
parentcff6eb65804da3a06bde3c9152bec26e01a24992 (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')
-rw-r--r--source/blender/editors/transform/CMakeLists.txt5
-rw-r--r--source/blender/editors/transform/transform_gizmo_2d.c2
-rw-r--r--source/blender/editors/transform/transform_gizmo_3d.c8
-rw-r--r--source/blender/editors/transform/transform_gizmo_extrude_3d.c1
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,
};