diff options
Diffstat (limited to 'source/blender/makesrna')
36 files changed, 638 insertions, 516 deletions
diff --git a/source/blender/makesrna/RNA_define.h b/source/blender/makesrna/RNA_define.h index 558e490a16e..7a7ab1085dd 100644 --- a/source/blender/makesrna/RNA_define.h +++ b/source/blender/makesrna/RNA_define.h @@ -76,7 +76,7 @@ void RNA_def_struct_identifier_no_struct_map(StructRNA *srna, const char *identi void RNA_def_struct_identifier(BlenderRNA *brna, StructRNA *srna, const char *identifier); void RNA_def_struct_ui_text(StructRNA *srna, const char *name, const char *description); void RNA_def_struct_ui_icon(StructRNA *srna, int icon); -void RNA_struct_free_extension(StructRNA *srna, ExtensionRNA *ext); +void RNA_struct_free_extension(StructRNA *srna, ExtensionRNA *rna_ext); void RNA_struct_free(BlenderRNA *brna, StructRNA *srna); void RNA_def_struct_translation_context(StructRNA *srna, const char *context); diff --git a/source/blender/makesrna/intern/rna_ID.c b/source/blender/makesrna/intern/rna_ID.c index e19d26cf5e2..4b9dbbb31b6 100644 --- a/source/blender/makesrna/intern/rna_ID.c +++ b/source/blender/makesrna/intern/rna_ID.c @@ -96,7 +96,7 @@ const EnumPropertyItem rna_enum_id_type_items[] = { # include "BLI_listbase.h" # include "BLI_math_base.h" -# include "BKE_animsys.h" +# include "BKE_anim_data.h" # include "BKE_font.h" # include "BKE_global.h" /* XXX, remove me */ # include "BKE_idprop.h" diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c index 48e4d758bba..b56a18c18a9 100644 --- a/source/blender/makesrna/intern/rna_access.c +++ b/source/blender/makesrna/intern/rna_access.c @@ -40,7 +40,7 @@ #include "BLF_api.h" #include "BLT_translation.h" -#include "BKE_animsys.h" +#include "BKE_anim_data.h" #include "BKE_collection.h" #include "BKE_context.h" #include "BKE_fcurve.h" diff --git a/source/blender/makesrna/intern/rna_access_compare_override.c b/source/blender/makesrna/intern/rna_access_compare_override.c index 22d018c6025..199d22ee3dc 100644 --- a/source/blender/makesrna/intern/rna_access_compare_override.c +++ b/source/blender/makesrna/intern/rna_access_compare_override.c @@ -24,6 +24,7 @@ #include "DNA_constraint_types.h" #include "DNA_modifier_types.h" +#include "BLI_listbase.h" #include "BLI_string.h" #include "BLI_utildefines.h" @@ -437,7 +438,7 @@ static bool rna_property_override_operation_store(Main *bmain, return changed; } - for (IDOverrideLibraryPropertyOperation *opop = op->operations.first; opop; opop = opop->next) { + LISTBASE_FOREACH (IDOverrideLibraryPropertyOperation *, opop, &op->operations) { /* Only needed for diff operations. */ if (!ELEM(opop->operation, IDOVERRIDE_LIBRARY_OP_ADD, @@ -831,7 +832,7 @@ bool RNA_struct_override_store(Main *bmain, #ifdef DEBUG_OVERRIDE_TIMEIT TIMEIT_START_AVERAGED(RNA_struct_override_store); #endif - for (IDOverrideLibraryProperty *op = override->properties.first; op; op = op->next) { + LISTBASE_FOREACH (IDOverrideLibraryProperty *, op, &override->properties) { /* Simplified for now! */ PointerRNA data_reference, data_local; PropertyRNA *prop_reference, *prop_local; @@ -879,7 +880,7 @@ static void rna_property_override_apply_ex(Main *bmain, IDOverrideLibraryProperty *op, const bool do_insert) { - for (IDOverrideLibraryPropertyOperation *opop = op->operations.first; opop; opop = opop->next) { + LISTBASE_FOREACH (IDOverrideLibraryPropertyOperation *, opop, &op->operations) { if (!do_insert != !ELEM(opop->operation, IDOVERRIDE_LIBRARY_OP_INSERT_AFTER, IDOVERRIDE_LIBRARY_OP_INSERT_BEFORE)) { @@ -998,7 +999,7 @@ void RNA_struct_override_apply(Main *bmain, */ bool do_insert = false; for (int i = 0; i < 2; i++, do_insert = true) { - for (IDOverrideLibraryProperty *op = override->properties.first; op; op = op->next) { + LISTBASE_FOREACH (IDOverrideLibraryProperty *, op, &override->properties) { /* Simplified for now! */ PointerRNA data_src, data_dst; PointerRNA data_item_src, data_item_dst; diff --git a/source/blender/makesrna/intern/rna_animation.c b/source/blender/makesrna/intern/rna_animation.c index 1ca1bf27156..7ea44bce6db 100644 --- a/source/blender/makesrna/intern/rna_animation.c +++ b/source/blender/makesrna/intern/rna_animation.c @@ -113,6 +113,7 @@ const EnumPropertyItem rna_enum_keying_flag_items_api[] = { # include "BLI_math_base.h" +# include "BKE_anim_data.h" # include "BKE_animsys.h" # include "BKE_fcurve.h" # include "BKE_nla.h" @@ -193,7 +194,7 @@ static bool RKS_POLL_rna_internal(KeyingSetInfo *ksi, bContext *C) void *ret; int ok; - RNA_pointer_create(NULL, ksi->ext.srna, ksi, &ptr); + RNA_pointer_create(NULL, ksi->rna_ext.srna, ksi, &ptr); func = &rna_KeyingSetInfo_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); @@ -203,7 +204,7 @@ static bool RKS_POLL_rna_internal(KeyingSetInfo *ksi, bContext *C) RNA_parameter_set_lookup(&list, "context", &C); /* execute the function */ - ksi->ext.call(C, &ptr, func, &list); + ksi->rna_ext.call(C, &ptr, func, &list); /* read the result */ RNA_parameter_get_lookup(&list, "ok", &ret); @@ -223,7 +224,7 @@ static void RKS_ITER_rna_internal(KeyingSetInfo *ksi, bContext *C, KeyingSet *ks ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, ksi->ext.srna, ksi, &ptr); + RNA_pointer_create(NULL, ksi->rna_ext.srna, ksi, &ptr); func = &rna_KeyingSetInfo_iterator_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); @@ -234,7 +235,7 @@ static void RKS_ITER_rna_internal(KeyingSetInfo *ksi, bContext *C, KeyingSet *ks RNA_parameter_set_lookup(&list, "ks", &ks); /* execute the function */ - ksi->ext.call(C, &ptr, func, &list); + ksi->rna_ext.call(C, &ptr, func, &list); } RNA_parameter_list_free(&list); } @@ -248,7 +249,7 @@ static void RKS_GEN_rna_internal(KeyingSetInfo *ksi, bContext *C, KeyingSet *ks, ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, ksi->ext.srna, ksi, &ptr); + RNA_pointer_create(NULL, ksi->rna_ext.srna, ksi, &ptr); func = &rna_KeyingSetInfo_generate_func; /* RNA_struct_find_generate(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); @@ -260,7 +261,7 @@ static void RKS_GEN_rna_internal(KeyingSetInfo *ksi, bContext *C, KeyingSet *ks, RNA_parameter_set_lookup(&list, "data", data); /* execute the function */ - ksi->ext.call(C, &ptr, func, &list); + ksi->rna_ext.call(C, &ptr, func, &list); } RNA_parameter_list_free(&list); } @@ -272,7 +273,7 @@ static void RKS_GEN_rna_internal(KeyingSetInfo *ksi, bContext *C, KeyingSet *ks, static StructRNA *rna_KeyingSetInfo_refine(PointerRNA *ptr) { KeyingSetInfo *ksi = (KeyingSetInfo *)ptr->data; - return (ksi->ext.srna) ? ksi->ext.srna : &RNA_KeyingSetInfo; + return (ksi->rna_ext.srna) ? ksi->rna_ext.srna : &RNA_KeyingSetInfo; } static void rna_KeyingSetInfo_unregister(Main *bmain, StructRNA *type) @@ -284,7 +285,7 @@ static void rna_KeyingSetInfo_unregister(Main *bmain, StructRNA *type) } /* free RNA data referencing this */ - RNA_struct_free_extension(type, &ksi->ext); + RNA_struct_free_extension(type, &ksi->rna_ext); RNA_struct_free(&BLENDER_RNA, type); WM_main_add_notifier(NC_WINDOW, NULL); @@ -327,8 +328,8 @@ static StructRNA *rna_KeyingSetInfo_register(Main *bmain, /* check if we have registered this info before, and remove it */ ksi = ANIM_keyingset_info_find_name(dummyksi.idname); - if (ksi && ksi->ext.srna) { - rna_KeyingSetInfo_unregister(bmain, ksi->ext.srna); + if (ksi && ksi->rna_ext.srna) { + rna_KeyingSetInfo_unregister(bmain, ksi->rna_ext.srna); } /* create a new KeyingSetInfo type */ @@ -336,11 +337,11 @@ static StructRNA *rna_KeyingSetInfo_register(Main *bmain, memcpy(ksi, &dummyksi, sizeof(KeyingSetInfo)); /* set RNA-extensions info */ - ksi->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, ksi->idname, &RNA_KeyingSetInfo); - ksi->ext.data = data; - ksi->ext.call = call; - ksi->ext.free = free; - RNA_struct_blender_type_set(ksi->ext.srna, ksi); + ksi->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, ksi->idname, &RNA_KeyingSetInfo); + ksi->rna_ext.data = data; + ksi->rna_ext.call = call; + ksi->rna_ext.free = free; + RNA_struct_blender_type_set(ksi->rna_ext.srna, ksi); /* set callbacks */ /* NOTE: we really should have all of these... */ @@ -354,7 +355,7 @@ static StructRNA *rna_KeyingSetInfo_register(Main *bmain, WM_main_add_notifier(NC_WINDOW, NULL); /* return the struct-rna added */ - return ksi->ext.srna; + return ksi->rna_ext.srna; } /* ****************************** */ diff --git a/source/blender/makesrna/intern/rna_brush.c b/source/blender/makesrna/intern/rna_brush.c index 75201322094..b625b3f0a84 100644 --- a/source/blender/makesrna/intern/rna_brush.c +++ b/source/blender/makesrna/intern/rna_brush.c @@ -1341,12 +1341,14 @@ static void rna_def_gpencil_options(BlenderRNA *brna) RNA_def_property_update(prop, NC_GPENCIL | ND_DATA, NULL); /* gradient control */ - prop = RNA_def_property(srna, "hardeness", PROP_FLOAT, PROP_FACTOR); + prop = RNA_def_property(srna, "hardness", PROP_FLOAT, PROP_FACTOR); RNA_def_property_float_sdna(prop, NULL, "hardeness"); RNA_def_property_range(prop, 0.001f, 1.0f); RNA_def_property_float_default(prop, 1.0f); RNA_def_property_ui_text( - prop, "Hardeness", "Amount of gradient for Dot and Box strokes (set to 1 for full solid)"); + prop, + "Hardness", + "Gradient from the center of Dot and Box strokes (set to 1 for a solid stroke)"); RNA_def_parameter_clear_flags(prop, PROP_ANIMATABLE, 0); /* gradient shape ratio */ @@ -2240,7 +2242,7 @@ static void rna_def_brush(BlenderRNA *brna) RNA_def_property_ui_range(prop, 1, 20, 1, 3); RNA_def_property_ui_text(prop, "Propagation Steps", - "Distance where boundary edge automaking is going to protect vertices " + "Distance where boundary edge automasking is going to protect vertices " "from the fully masked edge"); RNA_def_property_update(prop, 0, "rna_Brush_update"); @@ -2390,6 +2392,14 @@ static void rna_def_brush(BlenderRNA *brna) prop, "Mesh Boundary Auto-masking", "Do not affect non manifold boundary edges"); RNA_def_property_update(prop, 0, "rna_Brush_update"); + prop = RNA_def_property(srna, "use_automasking_boundary_face_sets", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna( + prop, NULL, "automasking_flags", BRUSH_AUTOMASKING_BOUNDARY_FACE_SETS); + RNA_def_property_ui_text(prop, + "Face Sets Boundary Automasking", + "Do not affect vertices that belong to a Face Set boundary"); + RNA_def_property_update(prop, 0, "rna_Brush_update"); + prop = RNA_def_property(srna, "use_scene_spacing", PROP_ENUM, PROP_NONE); RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag"); RNA_def_property_enum_items(prop, brush_spacing_unit_items); diff --git a/source/blender/makesrna/intern/rna_define.c b/source/blender/makesrna/intern/rna_define.c index f5e7f87cfbd..7a439a11a54 100644 --- a/source/blender/makesrna/intern/rna_define.c +++ b/source/blender/makesrna/intern/rna_define.c @@ -760,10 +760,10 @@ void RNA_define_fallback_property_update(int noteflag, const char *updatefunc) } #endif -void RNA_struct_free_extension(StructRNA *srna, ExtensionRNA *ext) +void RNA_struct_free_extension(StructRNA *srna, ExtensionRNA *rna_ext) { #ifdef RNA_RUNTIME - ext->free(ext->data); /* decref's the PyObject that the srna owns */ + rna_ext->free(rna_ext->data); /* decref's the PyObject that the srna owns */ RNA_struct_blender_type_set(srna, NULL); /* this gets accessed again - XXX fixme */ /* NULL the srna's value so RNA_struct_free wont complain of a leak */ @@ -771,7 +771,7 @@ void RNA_struct_free_extension(StructRNA *srna, ExtensionRNA *ext) #else (void)srna; - (void)ext; + (void)rna_ext; #endif } diff --git a/source/blender/makesrna/intern/rna_depsgraph.c b/source/blender/makesrna/intern/rna_depsgraph.c index 66c8522c53a..41c107b8d04 100644 --- a/source/blender/makesrna/intern/rna_depsgraph.c +++ b/source/blender/makesrna/intern/rna_depsgraph.c @@ -43,7 +43,7 @@ # include "BLI_iterator.h" # include "BLI_math.h" -# include "BKE_anim.h" +# include "BKE_duplilist.h" # include "BKE_object.h" # include "BKE_scene.h" diff --git a/source/blender/makesrna/intern/rna_fcurve.c b/source/blender/makesrna/intern/rna_fcurve.c index b6a2d38ba18..33f19153e3a 100644 --- a/source/blender/makesrna/intern/rna_fcurve.c +++ b/source/blender/makesrna/intern/rna_fcurve.c @@ -211,7 +211,7 @@ static StructRNA *rna_FModifierType_refine(struct PointerRNA *ptr) /* ****************************** */ -# include "BKE_animsys.h" +# include "BKE_anim_data.h" # include "BKE_fcurve.h" # include "DEG_depsgraph.h" diff --git a/source/blender/makesrna/intern/rna_fcurve_api.c b/source/blender/makesrna/intern/rna_fcurve_api.c index 4ee25be946c..f7be65b4e75 100644 --- a/source/blender/makesrna/intern/rna_fcurve_api.c +++ b/source/blender/makesrna/intern/rna_fcurve_api.c @@ -39,7 +39,6 @@ # include <stddef.h> -# include "BKE_animsys.h" # include "BKE_fcurve.h" # include "BLI_math.h" diff --git a/source/blender/makesrna/intern/rna_fluid.c b/source/blender/makesrna/intern/rna_fluid.c index 9410906595d..e087056e850 100644 --- a/source/blender/makesrna/intern/rna_fluid.c +++ b/source/blender/makesrna/intern/rna_fluid.c @@ -391,6 +391,18 @@ static void rna_Fluid_combined_export_update(Main *bmain, Scene *scene, PointerR } } +static void rna_Fluid_cache_startframe_set(struct PointerRNA *ptr, int value) +{ + FluidDomainSettings *settings = (FluidDomainSettings *)ptr->data; + BKE_fluid_cache_startframe_set(settings, value); +} + +static void rna_Fluid_cache_endframe_set(struct PointerRNA *ptr, int value) +{ + FluidDomainSettings *settings = (FluidDomainSettings *)ptr->data; + BKE_fluid_cache_endframe_set(settings, value); +} + static void rna_Fluid_cachetype_mesh_set(struct PointerRNA *ptr, int value) { FluidDomainSettings *settings = (FluidDomainSettings *)ptr->data; @@ -1925,12 +1937,13 @@ static void rna_def_fluid_domain_settings(BlenderRNA *brna) prop = RNA_def_property(srna, "cache_frame_start", PROP_INT, PROP_TIME); RNA_def_property_int_sdna(prop, NULL, "cache_frame_start"); RNA_def_property_range(prop, -MAXFRAME, MAXFRAME); - RNA_def_property_ui_range(prop, 1, MAXFRAME, 1, 1); + RNA_def_property_int_funcs(prop, NULL, "rna_Fluid_cache_startframe_set", NULL); RNA_def_property_ui_text(prop, "Start", "Frame on which the simulation starts"); prop = RNA_def_property(srna, "cache_frame_end", PROP_INT, PROP_TIME); RNA_def_property_int_sdna(prop, NULL, "cache_frame_end"); - RNA_def_property_range(prop, 1, MAXFRAME); + RNA_def_property_range(prop, -MAXFRAME, MAXFRAME); + RNA_def_property_int_funcs(prop, NULL, "rna_Fluid_cache_endframe_set", NULL); RNA_def_property_ui_text(prop, "End", "Frame on which the simulation stops"); prop = RNA_def_property(srna, "cache_frame_pause_data", PROP_INT, PROP_TIME); diff --git a/source/blender/makesrna/intern/rna_gpencil.c b/source/blender/makesrna/intern/rna_gpencil.c index 4afa467d2e3..94814003e99 100644 --- a/source/blender/makesrna/intern/rna_gpencil.c +++ b/source/blender/makesrna/intern/rna_gpencil.c @@ -710,10 +710,7 @@ static void rna_GPencil_stroke_point_pop(ID *id, static bGPDstroke *rna_GPencil_stroke_new(bGPDframe *frame) { - bGPDstroke *stroke = MEM_callocN(sizeof(bGPDstroke), "gp_stroke"); - stroke->hardeness = 1.0f; - ARRAY_SET_ITEMS(stroke->aspect_ratio, 1.0f, 1.0f); - stroke->uv_scale = 1.0f; + bGPDstroke *stroke = BKE_gpencil_stroke_new(0, 0, 1.0f); BLI_addtail(&frame->strokes, stroke); return stroke; @@ -1199,11 +1196,11 @@ static void rna_def_gpencil_stroke(BlenderRNA *brna) RNA_def_property_update(prop, NC_GPENCIL | ND_DATA, "rna_GPencil_update"); /* gradient control along y */ - prop = RNA_def_property(srna, "hardeness", PROP_FLOAT, PROP_FACTOR); + prop = RNA_def_property(srna, "hardness", PROP_FLOAT, PROP_FACTOR); RNA_def_property_float_sdna(prop, NULL, "hardeness"); RNA_def_property_range(prop, 0.001f, 1.0f); RNA_def_property_float_default(prop, 1.0f); - RNA_def_property_ui_text(prop, "Hardeness", "Amount of gradient along section of stroke"); + RNA_def_property_ui_text(prop, "Hardness", "Amount of gradient along section of stroke"); RNA_def_parameter_clear_flags(prop, PROP_ANIMATABLE, 0); RNA_def_property_update(prop, NC_GPENCIL | ND_DATA, "rna_GPencil_update"); diff --git a/source/blender/makesrna/intern/rna_gpencil_modifier.c b/source/blender/makesrna/intern/rna_gpencil_modifier.c index 6c3f26003fa..b99517a5255 100644 --- a/source/blender/makesrna/intern/rna_gpencil_modifier.c +++ b/source/blender/makesrna/intern/rna_gpencil_modifier.c @@ -144,7 +144,7 @@ static const EnumPropertyItem modifier_modify_opacity_items[] = { {GP_MODIFY_COLOR_BOTH, "BOTH", 0, "Stroke and Fill", "Modify fill and stroke colors"}, {GP_MODIFY_COLOR_STROKE, "STROKE", 0, "Stroke", "Modify stroke color only"}, {GP_MODIFY_COLOR_FILL, "FILL", 0, "Fill", "Modify fill color only"}, - {GP_MODIFY_COLOR_HARDENESS, "HARDENESS", 0, "Hardeness", "Modify stroke hardeness"}, + {GP_MODIFY_COLOR_HARDNESS, "HARDNESS", 0, "Hardness", "Modify stroke hardness"}, {0, NULL, 0, NULL, NULL}, }; @@ -1360,12 +1360,12 @@ static void rna_def_modifier_gpencilopacity(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Opacity Factor", "Factor of Opacity"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); - prop = RNA_def_property(srna, "hardeness", PROP_FLOAT, PROP_NONE); + prop = RNA_def_property(srna, "hardness", PROP_FLOAT, PROP_NONE); RNA_def_property_float_sdna(prop, NULL, "hardeness"); RNA_def_property_range(prop, 0.0, FLT_MAX); RNA_def_property_ui_range(prop, 0.0, FLT_MAX, 0.1, 2); RNA_def_property_float_default(prop, 1.0f); - RNA_def_property_ui_text(prop, "Hardeness", "Factor of stroke hardeness"); + RNA_def_property_ui_text(prop, "Hardness", "Factor of stroke hardness"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); prop = RNA_def_property(srna, "pass_index", PROP_INT, PROP_NONE); diff --git a/source/blender/makesrna/intern/rna_key.c b/source/blender/makesrna/intern/rna_key.c index d8628097490..7955109d9bc 100644 --- a/source/blender/makesrna/intern/rna_key.c +++ b/source/blender/makesrna/intern/rna_key.c @@ -46,6 +46,7 @@ # include "DNA_object_types.h" +# include "BLI_listbase.h" # include "BLI_string_utils.h" # include "BKE_animsys.h" @@ -575,7 +576,7 @@ static void rna_ShapeKey_data_begin(CollectionPropertyIterator *iter, PointerRNA NurbInfo info = {0}; /* Check if all sub-curves have the same type. */ - for (Nurb *nu = cu->nurb.first; nu; nu = nu->next) { + LISTBASE_FOREACH (Nurb *, nu, &cu->nurb) { if (type == NULL) { type = rna_ShapeKey_curve_point_type(nu); rna_ShapeKey_NurbInfo_init(&info, nu); diff --git a/source/blender/makesrna/intern/rna_layer.c b/source/blender/makesrna/intern/rna_layer.c index 3883ffab246..46a32256114 100644 --- a/source/blender/makesrna/intern/rna_layer.c +++ b/source/blender/makesrna/intern/rna_layer.c @@ -55,6 +55,8 @@ # include "BKE_node.h" # include "BKE_scene.h" +# include "BLI_listbase.h" + # include "DEG_depsgraph_build.h" # include "DEG_depsgraph_query.h" @@ -299,7 +301,7 @@ static void rna_LayerCollection_hide_viewport_set(PointerRNA *ptr, bool value) static void rna_LayerCollection_exclude_update_recursive(ListBase *lb, const bool exclude) { - for (LayerCollection *lc = lb->first; lc; lc = lc->next) { + LISTBASE_FOREACH (LayerCollection *, lc, lb) { if (exclude) { lc->flag |= LAYER_COLLECTION_EXCLUDE; } diff --git a/source/blender/makesrna/intern/rna_material.c b/source/blender/makesrna/intern/rna_material.c index 127341e6801..5191869be3a 100644 --- a/source/blender/makesrna/intern/rna_material.c +++ b/source/blender/makesrna/intern/rna_material.c @@ -144,7 +144,7 @@ static void rna_Material_active_paint_texture_index_update(Main *bmain, Scene *UNUSED(scene), PointerRNA *ptr) { - bScreen *sc; + bScreen *screen; Material *ma = (Material *)ptr->owner_id; if (ma->use_nodes && ma->nodetree) { @@ -157,8 +157,8 @@ static void rna_Material_active_paint_texture_index_update(Main *bmain, if (ma->texpaintslot) { Image *image = ma->texpaintslot[ma->paint_active_slot].ima; - for (sc = bmain->screens.first; sc; sc = sc->id.next) { - wmWindow *win = ED_screen_window_find(sc, bmain->wm.first); + for (screen = bmain->screens.first; screen; screen = screen->id.next) { + wmWindow *win = ED_screen_window_find(screen, bmain->wm.first); if (win == NULL) { continue; } @@ -169,10 +169,10 @@ static void rna_Material_active_paint_texture_index_update(Main *bmain, obedit = OBEDIT_FROM_VIEW_LAYER(view_layer); } - ScrArea *sa; - for (sa = sc->areabase.first; sa; sa = sa->next) { + ScrArea *area; + for (area = screen->areabase.first; area; area = area->next) { SpaceLink *sl; - for (sl = sa->spacedata.first; sl; sl = sl->next) { + for (sl = area->spacedata.first; sl; sl = sl->next) { if (sl->spacetype == SPACE_IMAGE) { SpaceImage *sima = (SpaceImage *)sl; if (!sima->pin) { diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c index 455fb1c50c9..36db4e5b33a 100644 --- a/source/blender/makesrna/intern/rna_modifier.c +++ b/source/blender/makesrna/intern/rna_modifier.c @@ -275,7 +275,7 @@ const EnumPropertyItem rna_enum_object_modifier_type_items[] = { ICON_MOD_EXPLODE, "Explode", "Break apart the mesh faces and let them follow particles"}, - {eModifierType_Fluid, "FLUID", ICON_MOD_FLUIDSIM, "Fluid Simulation", ""}, + {eModifierType_Fluid, "FLUID", ICON_MOD_FLUIDSIM, "Fluid", ""}, {eModifierType_Ocean, "OCEAN", ICON_MOD_OCEAN, "Ocean", "Generate a moving ocean surface"}, {eModifierType_ParticleInstance, "PARTICLE_INSTANCE", @@ -700,10 +700,10 @@ static StructRNA *rna_Modifier_refine(struct PointerRNA *ptr) return &RNA_MeshCacheModifier; case eModifierType_LaplacianDeform: return &RNA_LaplacianDeformModifier; - case eModifierType_Wireframe: - return &RNA_WireframeModifier; case eModifierType_Weld: return &RNA_WeldModifier; + case eModifierType_Wireframe: + return &RNA_WireframeModifier; case eModifierType_DataTransfer: return &RNA_DataTransferModifier; case eModifierType_NormalEdit: @@ -5128,6 +5128,11 @@ static void rna_def_modifier_remesh(BlenderRNA *brna) 0, "Sharp", "Output a surface that reproduces sharp edges and corners from the input mesh"}, + {MOD_REMESH_VOXEL, + "VOXEL", + 0, + "Voxel", + "Output a mesh corresponding to the volume of the original mesh"}, {0, NULL, 0, NULL, NULL}, }; @@ -5181,6 +5186,25 @@ static void rna_def_modifier_remesh(BlenderRNA *brna) "edges closer to the input"); RNA_def_property_update(prop, 0, "rna_Modifier_update"); + prop = RNA_def_property(srna, "voxel_size", PROP_FLOAT, PROP_DISTANCE); + RNA_def_property_float_sdna(prop, NULL, "voxel_size"); + RNA_def_property_ui_range(prop, 0.0001, 2, 0.1, 3); + RNA_def_property_ui_text(prop, + "Voxel Size", + "Size of the voxel in object space used for volume evaluation. Lower " + "values preserve finer details"); + RNA_def_property_update(prop, 0, "rna_Modifier_update"); + + prop = RNA_def_property(srna, "adaptivity", PROP_FLOAT, PROP_DISTANCE); + RNA_def_property_float_sdna(prop, NULL, "adaptivity"); + RNA_def_property_ui_range(prop, 0, 1, 0.1, 3); + RNA_def_property_ui_text( + prop, + "Adaptivity", + "Reduces the final face count by simplifying geometry where detail is not needed, " + "generating triangles. A value greater than 0 disables Fix Poles"); + RNA_def_property_update(prop, 0, "rna_Modifier_update"); + prop = RNA_def_property(srna, "use_remove_disconnected", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "flag", MOD_REMESH_FLOOD_FILL); RNA_def_property_ui_text(prop, "Remove Disconnected Pieces", ""); @@ -5758,6 +5782,45 @@ static void rna_def_modifier_laplaciandeform(BlenderRNA *brna) RNA_def_property_update(prop, 0, "rna_Modifier_update"); } +static void rna_def_modifier_weld(BlenderRNA *brna) +{ + StructRNA *srna; + PropertyRNA *prop; + + srna = RNA_def_struct(brna, "WeldModifier", "Modifier"); + RNA_def_struct_ui_text(srna, "Weld Modifier", "Weld modifier"); + RNA_def_struct_sdna(srna, "WeldModifierData"); + RNA_def_struct_ui_icon(srna, ICON_AUTOMERGE_OFF); + + prop = RNA_def_property(srna, "merge_threshold", PROP_FLOAT, PROP_DISTANCE); + RNA_def_property_float_sdna(prop, NULL, "merge_dist"); + RNA_def_property_range(prop, 0, FLT_MAX); + RNA_def_property_ui_range(prop, 0, 1, 0.001, 6); + RNA_def_property_ui_text(prop, "Merge Distance", "Limit below which to merge vertices"); + RNA_def_property_update(prop, 0, "rna_Modifier_update"); + + prop = RNA_def_property(srna, "max_interactions", PROP_INT, PROP_UNSIGNED); + RNA_def_property_int_sdna(prop, NULL, "max_interactions"); + RNA_def_property_ui_text( + prop, + "Duplicate Limit", + "For a better performance, limits the number of elements found per vertex. " + "(0 makes it infinite)"); + RNA_def_property_update(prop, 0, "rna_Modifier_update"); + + prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE); + RNA_def_property_string_sdna(prop, NULL, "defgrp_name"); + RNA_def_property_ui_text( + prop, "Vertex Group", "Vertex group name for selecting the affected areas"); + RNA_def_property_string_funcs(prop, NULL, NULL, "rna_WeldModifier_defgrp_name_set"); + RNA_def_property_update(prop, 0, "rna_Modifier_update"); + + prop = RNA_def_property(srna, "invert_vertex_group", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", MOD_WELD_INVERT_VGROUP); + RNA_def_property_ui_text(prop, "Invert", "Invert vertex group influence"); + RNA_def_property_update(prop, 0, "rna_Modifier_update"); +} + static void rna_def_modifier_wireframe(BlenderRNA *brna) { StructRNA *srna; @@ -5841,45 +5904,6 @@ static void rna_def_modifier_wireframe(BlenderRNA *brna) RNA_def_property_update(prop, 0, "rna_Modifier_update"); } -static void rna_def_modifier_weld(BlenderRNA *brna) -{ - StructRNA *srna; - PropertyRNA *prop; - - srna = RNA_def_struct(brna, "WeldModifier", "Modifier"); - RNA_def_struct_ui_text(srna, "Weld Modifier", "Weld modifier"); - RNA_def_struct_sdna(srna, "WeldModifierData"); - RNA_def_struct_ui_icon(srna, ICON_AUTOMERGE_OFF); - - prop = RNA_def_property(srna, "merge_threshold", PROP_FLOAT, PROP_DISTANCE); - RNA_def_property_float_sdna(prop, NULL, "merge_dist"); - RNA_def_property_range(prop, 0, FLT_MAX); - RNA_def_property_ui_range(prop, 0, 1, 0.001, 6); - RNA_def_property_ui_text(prop, "Merge Distance", "Limit below which to merge vertices"); - RNA_def_property_update(prop, 0, "rna_Modifier_update"); - - prop = RNA_def_property(srna, "max_interactions", PROP_INT, PROP_UNSIGNED); - RNA_def_property_int_sdna(prop, NULL, "max_interactions"); - RNA_def_property_ui_text( - prop, - "Duplicate Limit", - "For a better performance, limits the number of elements found per vertex. " - "(0 makes it infinite)"); - RNA_def_property_update(prop, 0, "rna_Modifier_update"); - - prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE); - RNA_def_property_string_sdna(prop, NULL, "defgrp_name"); - RNA_def_property_ui_text( - prop, "Vertex Group", "Vertex group name for selecting the affected areas"); - RNA_def_property_string_funcs(prop, NULL, NULL, "rna_WeldModifier_defgrp_name_set"); - RNA_def_property_update(prop, 0, "rna_Modifier_update"); - - prop = RNA_def_property(srna, "invert_vertex_group", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_sdna(prop, NULL, "flag", MOD_WELD_INVERT_VGROUP); - RNA_def_property_ui_text(prop, "Invert", "Invert vertex group influence"); - RNA_def_property_update(prop, 0, "rna_Modifier_update"); -} - static void rna_def_modifier_datatransfer(BlenderRNA *brna) { StructRNA *srna; @@ -6605,8 +6629,8 @@ void RNA_def_modifier(BlenderRNA *brna) rna_def_modifier_triangulate(brna); rna_def_modifier_meshcache(brna); rna_def_modifier_laplaciandeform(brna); - rna_def_modifier_wireframe(brna); rna_def_modifier_weld(brna); + rna_def_modifier_wireframe(brna); rna_def_modifier_datatransfer(brna); rna_def_modifier_normaledit(brna); rna_def_modifier_meshseqcache(brna); diff --git a/source/blender/makesrna/intern/rna_nla.c b/source/blender/makesrna/intern/rna_nla.c index 304cfb49594..230d62d2a23 100644 --- a/source/blender/makesrna/intern/rna_nla.c +++ b/source/blender/makesrna/intern/rna_nla.c @@ -43,7 +43,7 @@ # include <stdio.h> /* needed for some of the validation stuff... */ -# include "BKE_animsys.h" +# include "BKE_anim_data.h" # include "BKE_fcurve.h" # include "BKE_nla.h" diff --git a/source/blender/makesrna/intern/rna_nodetree.c b/source/blender/makesrna/intern/rna_nodetree.c index 4fc20a44dbb..4feb53f95bb 100644 --- a/source/blender/makesrna/intern/rna_nodetree.c +++ b/source/blender/makesrna/intern/rna_nodetree.c @@ -695,8 +695,8 @@ static StructRNA *rna_NodeTree_refine(struct PointerRNA *ptr) { bNodeTree *ntree = (bNodeTree *)ptr->data; - if (ntree->typeinfo->ext.srna) { - return ntree->typeinfo->ext.srna; + if (ntree->typeinfo->rna_ext.srna) { + return ntree->typeinfo->rna_ext.srna; } else { return &RNA_NodeTree; @@ -713,12 +713,12 @@ static bool rna_NodeTree_poll(const bContext *C, bNodeTreeType *ntreetype) void *ret; bool visible; - RNA_pointer_create(NULL, ntreetype->ext.srna, NULL, &ptr); /* dummy */ + RNA_pointer_create(NULL, ntreetype->rna_ext.srna, NULL, &ptr); /* dummy */ func = &rna_NodeTree_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - ntreetype->ext.call((bContext *)C, &ptr, func, &list); + ntreetype->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_get_lookup(&list, "visible", &ret); visible = *(bool *)ret; @@ -740,7 +740,7 @@ static void rna_NodeTree_update_reg(bNodeTree *ntree) func = &rna_NodeTree_update_func; /* RNA_struct_find_function(&ptr, "update"); */ RNA_parameter_list_create(&list, &ptr, func); - ntree->typeinfo->ext.call(NULL, &ptr, func, &list); + ntree->typeinfo->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -755,13 +755,13 @@ static void rna_NodeTree_get_from_context( FunctionRNA *func; void *ret1, *ret2, *ret3; - RNA_pointer_create(NULL, ntreetype->ext.srna, NULL, &ptr); /* dummy */ + RNA_pointer_create(NULL, ntreetype->rna_ext.srna, NULL, &ptr); /* dummy */ /* RNA_struct_find_function(&ptr, "get_from_context"); */ func = &rna_NodeTree_get_from_context_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - ntreetype->ext.call((bContext *)C, &ptr, func, &list); + ntreetype->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_get_lookup(&list, "result_1", &ret1); RNA_parameter_get_lookup(&list, "result_2", &ret2); @@ -781,7 +781,7 @@ static void rna_NodeTree_unregister(Main *UNUSED(bmain), StructRNA *type) return; } - RNA_struct_free_extension(type, &nt->ext); + RNA_struct_free_extension(type, &nt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); ntreeTypeFreeLink(nt); @@ -826,7 +826,7 @@ static StructRNA *rna_NodeTree_register(Main *bmain, /* check if we have registered this tree type before, and remove it */ nt = ntreeTypeFind(dummynt.idname); if (nt) { - rna_NodeTree_unregister(bmain, nt->ext.srna); + rna_NodeTree_unregister(bmain, nt->rna_ext.srna); } /* create a new node tree type */ @@ -835,14 +835,14 @@ static StructRNA *rna_NodeTree_register(Main *bmain, nt->type = NTREE_CUSTOM; - nt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, nt->idname, &RNA_NodeTree); - nt->ext.data = data; - nt->ext.call = call; - nt->ext.free = free; - RNA_struct_blender_type_set(nt->ext.srna, nt); + nt->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, nt->idname, &RNA_NodeTree); + nt->rna_ext.data = data; + nt->rna_ext.call = call; + nt->rna_ext.free = free; + RNA_struct_blender_type_set(nt->rna_ext.srna, nt); - RNA_def_struct_ui_text(nt->ext.srna, nt->ui_name, nt->ui_description); - RNA_def_struct_ui_icon(nt->ext.srna, nt->ui_icon); + RNA_def_struct_ui_text(nt->rna_ext.srna, nt->ui_name, nt->ui_description); + RNA_def_struct_ui_icon(nt->rna_ext.srna, nt->ui_icon); nt->poll = (have_function[0]) ? rna_NodeTree_poll : NULL; nt->update = (have_function[1]) ? rna_NodeTree_update_reg : NULL; @@ -853,7 +853,7 @@ static StructRNA *rna_NodeTree_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static bool rna_NodeTree_check(bNodeTree *ntree, ReportList *reports) @@ -1337,8 +1337,8 @@ static StructRNA *rna_Node_refine(struct PointerRNA *ptr) { bNode *node = (bNode *)ptr->data; - if (node->typeinfo->ext.srna) { - return node->typeinfo->ext.srna; + if (node->typeinfo->rna_ext.srna) { + return node->typeinfo->rna_ext.srna; } else { return ptr->type; @@ -1394,12 +1394,12 @@ static bool rna_Node_poll(bNodeType *ntype, bNodeTree *ntree) void *ret; bool visible; - RNA_pointer_create(NULL, ntype->ext.srna, NULL, &ptr); /* dummy */ + RNA_pointer_create(NULL, ntype->rna_ext.srna, NULL, &ptr); /* dummy */ func = &rna_Node_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "node_tree", &ntree); - ntype->ext.call(NULL, &ptr, func, &list); + ntype->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_get_lookup(&list, "visible", &ret); visible = *(bool *)ret; @@ -1419,12 +1419,12 @@ static bool rna_Node_poll_instance(bNode *node, bNodeTree *ntree) void *ret; bool visible; - RNA_pointer_create(NULL, node->typeinfo->ext.srna, node, &ptr); /* dummy */ + RNA_pointer_create(NULL, node->typeinfo->rna_ext.srna, node, &ptr); /* dummy */ func = &rna_Node_poll_instance_func; /* RNA_struct_find_function(&ptr, "poll_instance"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "node_tree", &ntree); - node->typeinfo->ext.call(NULL, &ptr, func, &list); + node->typeinfo->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_get_lookup(&list, "visible", &ret); visible = *(bool *)ret; @@ -1448,11 +1448,11 @@ static void rna_Node_update_reg(bNodeTree *ntree, bNode *node) ParameterList list; FunctionRNA *func; - RNA_pointer_create((ID *)ntree, node->typeinfo->ext.srna, node, &ptr); + RNA_pointer_create((ID *)ntree, node->typeinfo->rna_ext.srna, node, &ptr); func = &rna_Node_update_func; /* RNA_struct_find_function(&ptr, "update"); */ RNA_parameter_list_create(&list, &ptr, func); - node->typeinfo->ext.call(NULL, &ptr, func, &list); + node->typeinfo->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -1465,12 +1465,12 @@ static void rna_Node_insert_link(bNodeTree *ntree, bNode *node, bNodeLink *link) ParameterList list; FunctionRNA *func; - RNA_pointer_create((ID *)ntree, node->typeinfo->ext.srna, node, &ptr); + RNA_pointer_create((ID *)ntree, node->typeinfo->rna_ext.srna, node, &ptr); func = &rna_Node_insert_link_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "link", &link); - node->typeinfo->ext.call(NULL, &ptr, func, &list); + node->typeinfo->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -1486,7 +1486,7 @@ static void rna_Node_init(const bContext *C, PointerRNA *ptr) func = &rna_Node_init_func; /* RNA_struct_find_function(&ptr, "init"); */ RNA_parameter_list_create(&list, ptr, func); - node->typeinfo->ext.call((bContext *)C, ptr, func, &list); + node->typeinfo->rna_ext.call((bContext *)C, ptr, func, &list); RNA_parameter_list_free(&list); } @@ -1503,7 +1503,7 @@ static void rna_Node_copy(PointerRNA *ptr, const struct bNode *copynode) RNA_parameter_list_create(&list, ptr, func); RNA_parameter_set_lookup(&list, "node", ©node); - node->typeinfo->ext.call(NULL, ptr, func, &list); + node->typeinfo->rna_ext.call(NULL, ptr, func, &list); RNA_parameter_list_free(&list); } @@ -1519,7 +1519,7 @@ static void rna_Node_free(PointerRNA *ptr) func = &rna_Node_free_func; /* RNA_struct_find_function(&ptr, "free"); */ RNA_parameter_list_create(&list, ptr, func); - node->typeinfo->ext.call(NULL, ptr, func, &list); + node->typeinfo->rna_ext.call(NULL, ptr, func, &list); RNA_parameter_list_free(&list); } @@ -1537,7 +1537,7 @@ static void rna_Node_draw_buttons(struct uiLayout *layout, bContext *C, PointerR RNA_parameter_list_create(&list, ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "layout", &layout); - node->typeinfo->ext.call(C, ptr, func, &list); + node->typeinfo->rna_ext.call(C, ptr, func, &list); RNA_parameter_list_free(&list); } @@ -1555,7 +1555,7 @@ static void rna_Node_draw_buttons_ext(struct uiLayout *layout, bContext *C, Poin RNA_parameter_list_create(&list, ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "layout", &layout); - node->typeinfo->ext.call(C, ptr, func, &list); + node->typeinfo->rna_ext.call(C, ptr, func, &list); RNA_parameter_list_free(&list); } @@ -1574,7 +1574,7 @@ static void rna_Node_draw_label(bNodeTree *ntree, bNode *node, char *label, int RNA_pointer_create(&ntree->id, &RNA_Node, node, &ptr); RNA_parameter_list_create(&list, &ptr, func); - node->typeinfo->ext.call(NULL, &ptr, func, &list); + node->typeinfo->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_get_lookup(&list, "label", &ret); rlabel = (char *)ret; @@ -1605,7 +1605,7 @@ static void rna_Node_unregister(Main *UNUSED(bmain), StructRNA *type) return; } - RNA_struct_free_extension(type, &nt->ext); + RNA_struct_free_extension(type, &nt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); /* this also frees the allocated nt pointer, no MEM_free call needed! */ @@ -1660,7 +1660,7 @@ static bNodeType *rna_Node_register_base(Main *bmain, /* check if we have registered this node type before, and remove it */ nt = nodeTypeFind(dummynt.idname); if (nt) { - rna_Node_unregister(bmain, nt->ext.srna); + rna_Node_unregister(bmain, nt->rna_ext.srna); } /* create a new node type */ @@ -1668,17 +1668,17 @@ static bNodeType *rna_Node_register_base(Main *bmain, memcpy(nt, &dummynt, sizeof(dummynt)); nt->free_self = (void (*)(bNodeType *))MEM_freeN; - nt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, nt->idname, basetype); - nt->ext.data = data; - nt->ext.call = call; - nt->ext.free = free; - RNA_struct_blender_type_set(nt->ext.srna, nt); + nt->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, nt->idname, basetype); + nt->rna_ext.data = data; + nt->rna_ext.call = call; + nt->rna_ext.free = free; + RNA_struct_blender_type_set(nt->rna_ext.srna, nt); - RNA_def_struct_ui_text(nt->ext.srna, nt->ui_name, nt->ui_description); - RNA_def_struct_ui_icon(nt->ext.srna, nt->ui_icon); + RNA_def_struct_ui_text(nt->rna_ext.srna, nt->ui_name, nt->ui_description); + RNA_def_struct_ui_icon(nt->rna_ext.srna, nt->ui_icon); func = RNA_def_function_runtime( - nt->ext.srna, "is_registered_node_type", rna_Node_is_registered_node_type_runtime); + nt->rna_ext.srna, "is_registered_node_type", rna_Node_is_registered_node_type_runtime); RNA_def_function_ui_description(func, "True if a registered node type"); RNA_def_function_flag(func, FUNC_NO_SELF | FUNC_USE_SELF_TYPE); parm = RNA_def_boolean(func, "result", false, "Result", ""); @@ -1730,7 +1730,7 @@ static StructRNA *rna_Node_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static StructRNA *rna_ShaderNode_register(Main *bmain, @@ -1752,7 +1752,7 @@ static StructRNA *rna_ShaderNode_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static StructRNA *rna_CompositorNode_register(Main *bmain, @@ -1774,7 +1774,7 @@ static StructRNA *rna_CompositorNode_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static StructRNA *rna_TextureNode_register(Main *bmain, @@ -1796,7 +1796,7 @@ static StructRNA *rna_TextureNode_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static StructRNA *rna_SimulationNode_register(Main *bmain, @@ -1818,7 +1818,7 @@ static StructRNA *rna_SimulationNode_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static IDProperty *rna_Node_idprops(PointerRNA *ptr, bool create) @@ -2881,7 +2881,7 @@ static StructRNA *rna_NodeCustomGroup_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static StructRNA *rna_ShaderNodeCustomGroup_register(Main *bmain, @@ -2908,7 +2908,7 @@ static StructRNA *rna_ShaderNodeCustomGroup_register(Main *bmain, WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static StructRNA *rna_CompositorNodeCustomGroup_register(Main *bmain, @@ -2934,7 +2934,7 @@ static StructRNA *rna_CompositorNodeCustomGroup_register(Main *bmain, WM_main_add_notifier(NC_NODE | NA_EDITED, NULL); - return nt->ext.srna; + return nt->rna_ext.srna; } static void rna_CompositorNode_tag_need_exec(bNode *node) diff --git a/source/blender/makesrna/intern/rna_object_api.c b/source/blender/makesrna/intern/rna_object_api.c index 5104f4a66a1..bc8f6d4e3ae 100644 --- a/source/blender/makesrna/intern/rna_object_api.c +++ b/source/blender/makesrna/intern/rna_object_api.c @@ -63,7 +63,6 @@ static const EnumPropertyItem space_items[] = { # include "BLI_math.h" -# include "BKE_anim.h" # include "BKE_bvhutils.h" # include "BKE_constraint.h" # include "BKE_context.h" @@ -222,7 +221,7 @@ static bool rna_Object_indirect_only_get(Object *ob, bContext *C, ViewLayer *vie return ((base->flag & BASE_INDIRECT_ONLY) != 0); } -static Base *rna_Object_local_view_property_helper(bScreen *sc, +static Base *rna_Object_local_view_property_helper(bScreen *screen, View3D *v3d, ViewLayer *view_layer, Object *ob, @@ -236,7 +235,7 @@ static Base *rna_Object_local_view_property_helper(bScreen *sc, } if (view_layer == NULL) { - win = ED_screen_window_find(sc, G_MAIN->wm.first); + win = ED_screen_window_find(screen, G_MAIN->wm.first); view_layer = WM_window_get_active_view_layer(win); } @@ -266,10 +265,10 @@ static void rna_Object_local_view_set(Object *ob, PointerRNA *v3d_ptr, bool state) { - bScreen *sc = (bScreen *)v3d_ptr->owner_id; + bScreen *screen = (bScreen *)v3d_ptr->owner_id; View3D *v3d = v3d_ptr->data; Scene *scene; - Base *base = rna_Object_local_view_property_helper(sc, v3d, NULL, ob, reports, &scene); + Base *base = rna_Object_local_view_property_helper(screen, v3d, NULL, ob, reports, &scene); if (base == NULL) { return; /* Error reported. */ } @@ -277,9 +276,9 @@ static void rna_Object_local_view_set(Object *ob, SET_FLAG_FROM_TEST(base->local_view_bits, state, v3d->local_view_uuid); if (local_view_bits_prev != base->local_view_bits) { DEG_id_tag_update(&scene->id, ID_RECALC_BASE_FLAGS); - ScrArea *sa = ED_screen_area_find_with_spacedata(sc, (SpaceLink *)v3d, true); - if (sa) { - ED_area_tag_redraw(sa); + ScrArea *area = ED_screen_area_find_with_spacedata(screen, (SpaceLink *)v3d, true); + if (area) { + ED_area_tag_redraw(area); } } } diff --git a/source/blender/makesrna/intern/rna_particle.c b/source/blender/makesrna/intern/rna_particle.c index 47a20518648..c1fb3232bb3 100644 --- a/source/blender/makesrna/intern/rna_particle.c +++ b/source/blender/makesrna/intern/rna_particle.c @@ -41,6 +41,8 @@ #include "BKE_mesh.h" +#include "BLI_listbase.h" + #include "BLT_translation.h" #include "rna_internal.h" @@ -695,7 +697,7 @@ static void rna_Particle_change_type(Main *bmain, Scene *UNUSED(scene), PointerR /* Iterating over all object is slow, but no better solution exists at the moment. */ for (Object *ob = bmain->objects.first; ob; ob = ob->id.next) { - for (ParticleSystem *psys = ob->particlesystem.first; psys; psys = psys->next) { + LISTBASE_FOREACH (ParticleSystem *, psys, &ob->particlesystem) { if (psys->part == part) { psys_changed_type(ob, psys); psys->recalc |= ID_RECALC_PSYS_RESET; diff --git a/source/blender/makesrna/intern/rna_render.c b/source/blender/makesrna/intern/rna_render.c index 40a2aeb5bd5..8322c7ad5f4 100644 --- a/source/blender/makesrna/intern/rna_render.c +++ b/source/blender/makesrna/intern/rna_render.c @@ -148,13 +148,13 @@ static void engine_update(RenderEngine *engine, Main *bmain, Depsgraph *depsgrap ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); + RNA_pointer_create(NULL, engine->type->rna_ext.srna, engine, &ptr); func = &rna_RenderEngine_update_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "data", &bmain); RNA_parameter_set_lookup(&list, "depsgraph", &depsgraph); - engine->type->ext.call(NULL, &ptr, func, &list); + engine->type->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -166,12 +166,12 @@ static void engine_render(RenderEngine *engine, Depsgraph *depsgraph) ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); + RNA_pointer_create(NULL, engine->type->rna_ext.srna, engine, &ptr); func = &rna_RenderEngine_render_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "depsgraph", &depsgraph); - engine->type->ext.call(NULL, &ptr, func, &list); + engine->type->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -192,7 +192,7 @@ static void engine_bake(RenderEngine *engine, ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); + RNA_pointer_create(NULL, engine->type->rna_ext.srna, engine, &ptr); func = &rna_RenderEngine_bake_func; RNA_parameter_list_create(&list, &ptr, func); @@ -205,7 +205,7 @@ static void engine_bake(RenderEngine *engine, RNA_parameter_set_lookup(&list, "num_pixels", &num_pixels); RNA_parameter_set_lookup(&list, "depth", &depth); RNA_parameter_set_lookup(&list, "result", &result); - engine->type->ext.call(NULL, &ptr, func, &list); + engine->type->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -219,13 +219,13 @@ static void engine_view_update(RenderEngine *engine, ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); + RNA_pointer_create(NULL, engine->type->rna_ext.srna, engine, &ptr); func = &rna_RenderEngine_view_update_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &context); RNA_parameter_set_lookup(&list, "depsgraph", &depsgraph); - engine->type->ext.call(NULL, &ptr, func, &list); + engine->type->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -239,13 +239,13 @@ static void engine_view_draw(RenderEngine *engine, ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); + RNA_pointer_create(NULL, engine->type->rna_ext.srna, engine, &ptr); func = &rna_RenderEngine_view_draw_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &context); RNA_parameter_set_lookup(&list, "depsgraph", &depsgraph); - engine->type->ext.call(NULL, &ptr, func, &list); + engine->type->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -259,13 +259,13 @@ static void engine_update_script_node(RenderEngine *engine, ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); + RNA_pointer_create(NULL, engine->type->rna_ext.srna, engine, &ptr); RNA_pointer_create((ID *)ntree, &RNA_Node, node, &nodeptr); func = &rna_RenderEngine_update_script_node_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "node", &nodeptr); - engine->type->ext.call(NULL, &ptr, func, &list); + engine->type->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -279,13 +279,13 @@ static void engine_update_render_passes(RenderEngine *engine, ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); + RNA_pointer_create(NULL, engine->type->rna_ext.srna, engine, &ptr); func = &rna_RenderEngine_update_render_passes_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "scene", &scene); RNA_parameter_set_lookup(&list, "renderlayer", &view_layer); - engine->type->ext.call(NULL, &ptr, func, &list); + engine->type->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -300,7 +300,7 @@ static void rna_RenderEngine_unregister(Main *bmain, StructRNA *type) return; } - RNA_struct_free_extension(type, &et->ext); + RNA_struct_free_extension(type, &et->rna_ext); RNA_struct_free(&BLENDER_RNA, type); BLI_freelinkN(&R_engines, et); @@ -343,8 +343,8 @@ static StructRNA *rna_RenderEngine_register(Main *bmain, /* check if we have registered this engine type before, and remove it */ for (et = R_engines.first; et; et = et->next) { if (STREQ(et->idname, dummyet.idname)) { - if (et->ext.srna) { - rna_RenderEngine_unregister(bmain, et->ext.srna); + if (et->rna_ext.srna) { + rna_RenderEngine_unregister(bmain, et->rna_ext.srna); } break; } @@ -354,11 +354,11 @@ static StructRNA *rna_RenderEngine_register(Main *bmain, et = MEM_mallocN(sizeof(RenderEngineType), "python render engine"); memcpy(et, &dummyet, sizeof(dummyet)); - et->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, et->idname, &RNA_RenderEngine); - et->ext.data = data; - et->ext.call = call; - et->ext.free = free; - RNA_struct_blender_type_set(et->ext.srna, et); + et->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, et->idname, &RNA_RenderEngine); + et->rna_ext.data = data; + et->rna_ext.call = call; + et->rna_ext.free = free; + RNA_struct_blender_type_set(et->rna_ext.srna, et); et->update = (have_function[0]) ? engine_update : NULL; et->render = (have_function[1]) ? engine_render : NULL; @@ -370,7 +370,7 @@ static StructRNA *rna_RenderEngine_register(Main *bmain, RE_engines_register(et); - return et->ext.srna; + return et->rna_ext.srna; } static void **rna_RenderEngine_instance(PointerRNA *ptr) @@ -382,7 +382,8 @@ static void **rna_RenderEngine_instance(PointerRNA *ptr) static StructRNA *rna_RenderEngine_refine(PointerRNA *ptr) { RenderEngine *engine = (RenderEngine *)ptr->data; - return (engine->type && engine->type->ext.srna) ? engine->type->ext.srna : &RNA_RenderEngine; + return (engine->type && engine->type->rna_ext.srna) ? engine->type->rna_ext.srna : + &RNA_RenderEngine; } static PointerRNA rna_RenderEngine_render_get(PointerRNA *ptr) diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c index 289c5eae869..27ebbe79085 100644 --- a/source/blender/makesrna/intern/rna_scene.c +++ b/source/blender/makesrna/intern/rna_scene.c @@ -36,6 +36,7 @@ #include "IMB_imbuf_types.h" +#include "BLI_listbase.h" #include "BLI_math.h" #include "BLT_translation.h" @@ -1679,10 +1680,10 @@ void rna_Scene_glsl_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA static void rna_Scene_world_update(Main *bmain, Scene *scene, PointerRNA *ptr) { - Scene *sc = (Scene *)ptr->owner_id; + Scene *screen = (Scene *)ptr->owner_id; rna_Scene_glsl_update(bmain, scene, ptr); - WM_main_add_notifier(NC_WORLD | ND_WORLD, &sc->id); + WM_main_add_notifier(NC_WORLD | ND_WORLD, &screen->id); DEG_relations_tag_update(bmain); } @@ -1810,7 +1811,7 @@ static void rna_Scene_editmesh_select_mode_set(PointerRNA *ptr, const bool *valu /* Update select mode in all the workspaces in mesh edit mode. */ wmWindowManager *wm = G_MAIN->wm.first; - for (wmWindow *win = wm->windows.first; win; win = win->next) { + LISTBASE_FOREACH (wmWindow *, win, &wm->windows) { ViewLayer *view_layer = WM_window_get_active_view_layer(win); if (view_layer && view_layer->basact) { @@ -2434,7 +2435,7 @@ static const EnumPropertyItem *rna_TransformOrientation_impl_itemf(Scene *scene, if (transform_orientations && (BLI_listbase_is_empty(transform_orientations) == false)) { RNA_enum_item_add_separator(&item, &totitem); - for (TransformOrientation *ts = transform_orientations->first; ts; ts = ts->next) { + LISTBASE_FOREACH (TransformOrientation *, ts, transform_orientations) { tmp.identifier = ts->name; tmp.name = ts->name; tmp.value = i++; diff --git a/source/blender/makesrna/intern/rna_scene_api.c b/source/blender/makesrna/intern/rna_scene_api.c index c832c50bd5d..e770b669ca2 100644 --- a/source/blender/makesrna/intern/rna_scene_api.c +++ b/source/blender/makesrna/intern/rna_scene_api.c @@ -50,7 +50,6 @@ const EnumPropertyItem rna_enum_abc_compression_items[] = { #ifdef RNA_RUNTIME -# include "BKE_animsys.h" # include "BKE_editmesh.h" # include "BKE_global.h" # include "BKE_image.h" @@ -89,8 +88,8 @@ static void rna_Scene_frame_set(Scene *scene, Main *bmain, int frame, float subf # endif if (BKE_scene_camera_switch_update(scene)) { - for (bScreen *sc = bmain->screens.first; sc; sc = sc->id.next) { - BKE_screen_view3d_scene_sync(sc, scene); + for (bScreen *screen = bmain->screens.first; screen; screen = screen->id.next) { + BKE_screen_view3d_scene_sync(screen, scene); } } diff --git a/source/blender/makesrna/intern/rna_screen.c b/source/blender/makesrna/intern/rna_screen.c index c6245f51e15..d9e3003c6f3 100644 --- a/source/blender/makesrna/intern/rna_screen.c +++ b/source/blender/makesrna/intern/rna_screen.c @@ -98,8 +98,8 @@ static int rna_region_alignment_get(PointerRNA *ptr) static bool rna_Screen_fullscreen_get(PointerRNA *ptr) { - bScreen *sc = (bScreen *)ptr->data; - return (sc->state == SCREENMAXIMIZED); + bScreen *screen = (bScreen *)ptr->data; + return (screen->state == SCREENMAXIMIZED); } /* UI compatible list: should not be needed, but for now we need to keep EMPTY @@ -116,10 +116,10 @@ static const EnumPropertyItem *rna_Area_type_itemf(bContext *UNUSED(C), static int rna_Area_type_get(PointerRNA *ptr) { - ScrArea *sa = (ScrArea *)ptr->data; + ScrArea *area = (ScrArea *)ptr->data; /* Usually 'spacetype' is used. It lags behind a bit while switching area * type though, then we use 'butspacetype' instead (T41435). */ - return (sa->butspacetype == SPACE_EMPTY) ? sa->spacetype : sa->butspacetype; + return (area->butspacetype == SPACE_EMPTY) ? area->spacetype : area->butspacetype; } static void rna_Area_type_set(PointerRNA *ptr, int value) @@ -131,17 +131,17 @@ static void rna_Area_type_set(PointerRNA *ptr, int value) return; } - ScrArea *sa = (ScrArea *)ptr->data; - sa->butspacetype = value; + ScrArea *area = (ScrArea *)ptr->data; + area->butspacetype = value; } static void rna_Area_type_update(bContext *C, PointerRNA *ptr) { - bScreen *sc = (bScreen *)ptr->owner_id; - ScrArea *sa = (ScrArea *)ptr->data; + bScreen *screen = (bScreen *)ptr->owner_id; + ScrArea *area = (ScrArea *)ptr->data; /* Running update without having called 'set', see: T64049 */ - if (sa->butspacetype == SPACE_EMPTY) { + if (area->butspacetype == SPACE_EMPTY) { return; } @@ -149,23 +149,23 @@ static void rna_Area_type_update(bContext *C, PointerRNA *ptr) wmWindow *win; /* XXX this call still use context, so we trick it to work in the right context */ for (win = wm->windows.first; win; win = win->next) { - if (sc == WM_window_get_active_screen(win)) { + if (screen == WM_window_get_active_screen(win)) { wmWindow *prevwin = CTX_wm_window(C); ScrArea *prevsa = CTX_wm_area(C); ARegion *prevar = CTX_wm_region(C); CTX_wm_window_set(C, win); - CTX_wm_area_set(C, sa); + CTX_wm_area_set(C, area); CTX_wm_region_set(C, NULL); - ED_area_newspace(C, sa, sa->butspacetype, true); - ED_area_tag_redraw(sa); + ED_area_newspace(C, area, area->butspacetype, true); + ED_area_tag_redraw(area); /* Unset so that rna_Area_type_get uses spacetype instead. */ - sa->butspacetype = SPACE_EMPTY; + area->butspacetype = SPACE_EMPTY; /* It is possible that new layers becomes visible. */ - if (sa->spacetype == SPACE_VIEW3D) { + if (area->spacetype == SPACE_VIEW3D) { DEG_on_visible_update(CTX_data_main(C), false); } @@ -213,51 +213,51 @@ static const EnumPropertyItem *rna_Area_ui_type_itemf(bContext *C, static int rna_Area_ui_type_get(PointerRNA *ptr) { - ScrArea *sa = ptr->data; + ScrArea *area = ptr->data; const int area_type = rna_Area_type_get(ptr); - const bool area_changing = sa->butspacetype != SPACE_EMPTY; + const bool area_changing = area->butspacetype != SPACE_EMPTY; int value = area_type << 16; - /* sa->type can be NULL (when not yet initialized), try to do it now. */ + /* area->type can be NULL (when not yet initialized), try to do it now. */ /* Copied from `ED_area_initialize()`.*/ - if (sa->type == NULL || area_changing) { - sa->type = BKE_spacetype_from_id(area_type); - if (sa->type == NULL) { - sa->spacetype = SPACE_VIEW3D; - sa->type = BKE_spacetype_from_id(sa->spacetype); + if (area->type == NULL || area_changing) { + area->type = BKE_spacetype_from_id(area_type); + if (area->type == NULL) { + area->spacetype = SPACE_VIEW3D; + area->type = BKE_spacetype_from_id(area->spacetype); } - BLI_assert(sa->type != NULL); + BLI_assert(area->type != NULL); } - if (sa->type->space_subtype_item_extend != NULL) { - value |= area_changing ? sa->butspacetype_subtype : sa->type->space_subtype_get(sa); + if (area->type->space_subtype_item_extend != NULL) { + value |= area_changing ? area->butspacetype_subtype : area->type->space_subtype_get(area); } return value; } static void rna_Area_ui_type_set(PointerRNA *ptr, int value) { - ScrArea *sa = ptr->data; + ScrArea *area = ptr->data; const int space_type = value >> 16; SpaceType *st = BKE_spacetype_from_id(space_type); rna_Area_type_set(ptr, space_type); if (st && st->space_subtype_item_extend != NULL) { - sa->butspacetype_subtype = value & 0xffff; + area->butspacetype_subtype = value & 0xffff; } } static void rna_Area_ui_type_update(bContext *C, PointerRNA *ptr) { - ScrArea *sa = ptr->data; - SpaceType *st = BKE_spacetype_from_id(sa->butspacetype); + ScrArea *area = ptr->data; + SpaceType *st = BKE_spacetype_from_id(area->butspacetype); rna_Area_type_update(C, ptr); - if ((sa->type == st) && (st->space_subtype_item_extend != NULL)) { - st->space_subtype_set(sa, sa->butspacetype_subtype); + if ((area->type == st) && (st->space_subtype_item_extend != NULL)) { + st->space_subtype_set(area, area->butspacetype_subtype); } - sa->butspacetype_subtype = 0; + area->butspacetype_subtype = 0; } static void rna_View2D_region_to_view(struct View2D *v2d, float x, float y, float result[2]) diff --git a/source/blender/makesrna/intern/rna_sculpt_paint.c b/source/blender/makesrna/intern/rna_sculpt_paint.c index 04a54063a03..381908f7ada 100644 --- a/source/blender/makesrna/intern/rna_sculpt_paint.c +++ b/source/blender/makesrna/intern/rna_sculpt_paint.c @@ -507,14 +507,14 @@ static void rna_ImaPaint_canvas_update(bContext *C, PointerRNA *UNUSED(ptr)) ViewLayer *view_layer = CTX_data_view_layer(C); Object *ob = OBACT(view_layer); Object *obedit = OBEDIT_FROM_OBACT(ob); - bScreen *sc; + bScreen *screen; Image *ima = scene->toolsettings->imapaint.canvas; - for (sc = bmain->screens.first; sc; sc = sc->id.next) { - ScrArea *sa; - for (sa = sc->areabase.first; sa; sa = sa->next) { + for (screen = bmain->screens.first; screen; screen = screen->id.next) { + ScrArea *area; + for (area = screen->areabase.first; area; area = area->next) { SpaceLink *slink; - for (slink = sa->spacedata.first; slink; slink = slink->next) { + for (slink = area->spacedata.first; slink; slink = slink->next) { if (slink->spacetype == SPACE_IMAGE) { SpaceImage *sima = (SpaceImage *)slink; @@ -617,6 +617,14 @@ static void rna_def_paint(BlenderRNA *brna) prop, "Fast Navigate", "For multires, show low resolution while navigating the view"); RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); + prop = RNA_def_property(srna, "use_sculpt_delay_updates", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flags", PAINT_SCULPT_DELAY_UPDATES); + RNA_def_property_ui_text( + prop, + "Delay Viewport Updates", + "Update the geometry when it enters the view, providing faster view navigation"); + RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); + prop = RNA_def_property(srna, "input_samples", PROP_INT, PROP_UNSIGNED); RNA_def_property_int_sdna(prop, NULL, "num_input_samples"); RNA_def_property_ui_range(prop, 1, PAINT_MAX_INPUT_SAMPLES, 1, -1); @@ -815,6 +823,34 @@ static void rna_def_sculpt(BlenderRNA *brna) RNA_def_property_flag(prop, PROP_CONTEXT_UPDATE); RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_Sculpt_update"); + prop = RNA_def_property(srna, "use_automasking_topology", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "automasking_flags", BRUSH_AUTOMASKING_TOPOLOGY); + RNA_def_property_ui_text(prop, + "Topology Auto-masking", + "Affect only vertices connected to the active vertex under the brush"); + RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); + + prop = RNA_def_property(srna, "use_automasking_face_sets", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "automasking_flags", BRUSH_AUTOMASKING_FACE_SETS); + RNA_def_property_ui_text(prop, + "Face Sets Auto-masking", + "Affect only vertices that share Face Sets with the active vertex"); + RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); + + prop = RNA_def_property(srna, "use_automasking_boundary_edges", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "automasking_flags", BRUSH_AUTOMASKING_BOUNDARY_EDGES); + RNA_def_property_ui_text( + prop, "Mesh Boundary Auto-masking", "Do not affect non manifold boundary edges"); + RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); + + prop = RNA_def_property(srna, "use_automasking_boundary_face_sets", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna( + prop, NULL, "automasking_flags", BRUSH_AUTOMASKING_BOUNDARY_FACE_SETS); + RNA_def_property_ui_text(prop, + "Face Sets Boundary Auto-masking", + "Do not affect vertices that belong to a Face Set boundary"); + RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); + prop = RNA_def_property(srna, "symmetrize_direction", PROP_ENUM, PROP_NONE); RNA_def_property_enum_items(prop, rna_enum_symmetrize_direction_items); RNA_def_property_ui_text(prop, "Direction", "Source and destination for symmetrize operator"); diff --git a/source/blender/makesrna/intern/rna_sequencer.c b/source/blender/makesrna/intern/rna_sequencer.c index 6677105b771..04729f87cab 100644 --- a/source/blender/makesrna/intern/rna_sequencer.c +++ b/source/blender/makesrna/intern/rna_sequencer.c @@ -32,6 +32,7 @@ #include "BLT_translation.h" +#include "BKE_anim_data.h" #include "BKE_animsys.h" #include "BKE_sequencer.h" #include "BKE_sound.h" @@ -426,7 +427,7 @@ static void rna_Sequence_use_crop_set(PointerRNA *ptr, bool value) } } -static int transform_seq_cmp_cb(Sequence *seq, void *arg_pt) +static int transform_seq_cmp_fn(Sequence *seq, void *arg_pt) { SequenceSearchData *data = arg_pt; @@ -445,7 +446,7 @@ static Sequence *sequence_get_by_transform(Editing *ed, StripTransform *transfor data.data = transform; /* irritating we need to search for our sequence! */ - BKE_sequencer_base_recursive_apply(&ed->seqbase, transform_seq_cmp_cb, &data); + BKE_sequencer_base_recursive_apply(&ed->seqbase, transform_seq_cmp_fn, &data); return data.seq; } @@ -478,7 +479,7 @@ static void rna_SequenceTransform_update(Main *UNUSED(bmain), BKE_sequence_invalidate_cache_preprocessed(scene, seq); } -static int crop_seq_cmp_cb(Sequence *seq, void *arg_pt) +static int crop_seq_cmp_fn(Sequence *seq, void *arg_pt) { SequenceSearchData *data = arg_pt; @@ -497,7 +498,7 @@ static Sequence *sequence_get_by_crop(Editing *ed, StripCrop *crop) data.data = crop; /* irritating we need to search for our sequence! */ - BKE_sequencer_base_recursive_apply(&ed->seqbase, crop_seq_cmp_cb, &data); + BKE_sequencer_base_recursive_apply(&ed->seqbase, crop_seq_cmp_fn, &data); return data.seq; } @@ -821,7 +822,7 @@ static void rna_Sequence_sound_update(Main *UNUSED(bmain), Scene *scene, Pointer DEG_id_tag_update(&scene->id, ID_RECALC_SEQUENCER_STRIPS | ID_RECALC_AUDIO); } -static int seqproxy_seq_cmp_cb(Sequence *seq, void *arg_pt) +static int seqproxy_seq_cmp_fn(Sequence *seq, void *arg_pt) { SequenceSearchData *data = arg_pt; @@ -839,7 +840,7 @@ static Sequence *sequence_get_by_proxy(Editing *ed, StripProxy *proxy) data.seq = NULL; data.data = proxy; - BKE_sequencer_base_recursive_apply(&ed->seqbase, seqproxy_seq_cmp_cb, &data); + BKE_sequencer_base_recursive_apply(&ed->seqbase, seqproxy_seq_cmp_fn, &data); return data.seq; } @@ -875,7 +876,7 @@ static void rna_Sequence_opacity_set(PointerRNA *ptr, float value) seq->blend_opacity = value * 100.0f; } -static int colbalance_seq_cmp_cb(Sequence *seq, void *arg_pt) +static int colbalance_seq_cmp_fn(Sequence *seq, void *arg_pt) { SequenceSearchData *data = arg_pt; @@ -909,7 +910,7 @@ static Sequence *sequence_get_by_colorbalance(Editing *ed, data.data = cb; /* irritating we need to search for our sequence! */ - BKE_sequencer_base_recursive_apply(&ed->seqbase, colbalance_seq_cmp_cb, &data); + BKE_sequencer_base_recursive_apply(&ed->seqbase, colbalance_seq_cmp_fn, &data); *r_smd = data.smd; @@ -1013,7 +1014,7 @@ static void rna_SequenceEditor_overlay_frame_set(PointerRNA *ptr, int value) } } -static int modifier_seq_cmp_cb(Sequence *seq, void *arg_pt) +static int modifier_seq_cmp_fn(Sequence *seq, void *arg_pt) { SequenceSearchData *data = arg_pt; @@ -1033,7 +1034,7 @@ static Sequence *sequence_get_by_modifier(Editing *ed, SequenceModifierData *smd data.data = smd; /* irritating we need to search for our sequence! */ - BKE_sequencer_base_recursive_apply(&ed->seqbase, modifier_seq_cmp_cb, &data); + BKE_sequencer_base_recursive_apply(&ed->seqbase, modifier_seq_cmp_fn, &data); return data.seq; } diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c index 98a3cfac125..5acd72eab88 100644 --- a/source/blender/makesrna/intern/rna_space.c +++ b/source/blender/makesrna/intern/rna_space.c @@ -34,6 +34,7 @@ #include "ED_text.h" +#include "BLI_listbase.h" #include "BLI_math.h" #include "DNA_action_types.h" @@ -492,7 +493,7 @@ const EnumPropertyItem rna_enum_file_sort_items[] = { # include "BLI_path_util.h" # include "BLI_string.h" -# include "BKE_animsys.h" +# include "BKE_anim_data.h" # include "BKE_brush.h" # include "BKE_colortools.h" # include "BKE_context.h" @@ -569,39 +570,39 @@ static StructRNA *rna_Space_refine(struct PointerRNA *ptr) static ScrArea *rna_area_from_space(PointerRNA *ptr) { - bScreen *sc = (bScreen *)ptr->owner_id; + bScreen *screen = (bScreen *)ptr->owner_id; SpaceLink *link = (SpaceLink *)ptr->data; - return BKE_screen_find_area_from_space(sc, link); + return BKE_screen_find_area_from_space(screen, link); } -static void area_region_from_regiondata(bScreen *sc, +static void area_region_from_regiondata(bScreen *screen, void *regiondata, - ScrArea **r_sa, - ARegion **r_ar) + ScrArea **r_area, + ARegion **r_region) { - ScrArea *sa; + ScrArea *area; ARegion *region; - *r_sa = NULL; - *r_ar = NULL; + *r_area = NULL; + *r_region = NULL; - for (sa = sc->areabase.first; sa; sa = sa->next) { - for (region = sa->regionbase.first; region; region = region->next) { + for (area = screen->areabase.first; area; area = area->next) { + for (region = area->regionbase.first; region; region = region->next) { if (region->regiondata == regiondata) { - *r_sa = sa; - *r_ar = region; + *r_area = area; + *r_region = region; return; } } } } -static void rna_area_region_from_regiondata(PointerRNA *ptr, ScrArea **r_sa, ARegion **r_ar) +static void rna_area_region_from_regiondata(PointerRNA *ptr, ScrArea **r_area, ARegion **r_region) { - bScreen *sc = (bScreen *)ptr->owner_id; + bScreen *screen = (bScreen *)ptr->owner_id; void *regiondata = ptr->data; - area_region_from_regiondata(sc, regiondata, r_sa, r_ar); + area_region_from_regiondata(screen, regiondata, r_area, r_region); } /* -------------------------------------------------------------------- */ @@ -612,8 +613,8 @@ static bool rna_Space_bool_from_region_flag_get_by_type(PointerRNA *ptr, const int region_type, const int region_flag) { - ScrArea *sa = rna_area_from_space(ptr); - ARegion *region = BKE_area_find_region_type(sa, region_type); + ScrArea *area = rna_area_from_space(ptr); + ARegion *region = BKE_area_find_region_type(area, region_type); if (region) { return (region->flag & region_flag); } @@ -625,8 +626,8 @@ static void rna_Space_bool_from_region_flag_set_by_type(PointerRNA *ptr, const int region_flag, bool value) { - ScrArea *sa = rna_area_from_space(ptr); - ARegion *region = BKE_area_find_region_type(sa, region_type); + ScrArea *area = rna_area_from_space(ptr); + ARegion *region = BKE_area_find_region_type(area, region_type); if (region && (region->alignment != RGN_ALIGN_NONE)) { SET_FLAG_FROM_TEST(region->flag, value, region_flag); } @@ -638,16 +639,16 @@ static void rna_Space_bool_from_region_flag_update_by_type(bContext *C, const int region_type, const int region_flag) { - ScrArea *sa = rna_area_from_space(ptr); - ARegion *region = BKE_area_find_region_type(sa, region_type); + ScrArea *area = rna_area_from_space(ptr); + ARegion *region = BKE_area_find_region_type(area, region_type); if (region) { if (region_flag == RGN_FLAG_HIDDEN) { /* Only support animation when the area is in the current context. */ - if (region->overlap && (sa == CTX_wm_area(C))) { - ED_region_visibility_change_update_animated(C, sa, region); + if (region->overlap && (area == CTX_wm_area(C))) { + ED_region_visibility_change_update_animated(C, area, region); } else { - ED_region_visibility_change_update(C, sa, region); + ED_region_visibility_change_update(C, area, region); } } else if (region_flag == RGN_FLAG_HIDDEN_BY_USER) { @@ -655,7 +656,7 @@ static void rna_Space_bool_from_region_flag_update_by_type(bContext *C, ED_region_toggle_hidden(C, region); if ((region->flag & RGN_FLAG_HIDDEN_BY_USER) == 0) { - ED_area_type_hud_ensure(C, sa); + ED_area_type_hud_ensure(C, area); } } } @@ -680,10 +681,10 @@ static void rna_Space_show_region_header_set(PointerRNA *ptr, bool value) /* Special case, never show the tool properties when the header is invisible. */ bool value_for_tool_header = value; if (value == true) { - ScrArea *sa = rna_area_from_space(ptr); - ARegion *ar_tool_header = BKE_area_find_region_type(sa, RGN_TYPE_TOOL_HEADER); - if (ar_tool_header != NULL) { - value_for_tool_header = !(ar_tool_header->flag & RGN_FLAG_HIDDEN_BY_USER); + ScrArea *area = rna_area_from_space(ptr); + ARegion *region_tool_header = BKE_area_find_region_type(area, RGN_TYPE_TOOL_HEADER); + if (region_tool_header != NULL) { + value_for_tool_header = !(region_tool_header->flag & RGN_FLAG_HIDDEN_BY_USER); } } rna_Space_bool_from_region_flag_set_by_type( @@ -774,11 +775,11 @@ static void rna_Space_show_region_hud_update(bContext *C, PointerRNA *ptr) static bool rna_Space_view2d_sync_get(PointerRNA *ptr) { - ScrArea *sa; + ScrArea *area; ARegion *region; - sa = rna_area_from_space(ptr); /* can be NULL */ - region = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW); + area = rna_area_from_space(ptr); /* can be NULL */ + region = BKE_area_find_region_type(area, RGN_TYPE_WINDOW); if (region) { View2D *v2d = ®ion->v2d; return (v2d->flag & V2D_VIEWSYNC_SCREEN_TIME) != 0; @@ -789,11 +790,11 @@ static bool rna_Space_view2d_sync_get(PointerRNA *ptr) static void rna_Space_view2d_sync_set(PointerRNA *ptr, bool value) { - ScrArea *sa; + ScrArea *area; ARegion *region; - sa = rna_area_from_space(ptr); /* can be NULL */ - region = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW); + area = rna_area_from_space(ptr); /* can be NULL */ + region = BKE_area_find_region_type(area, RGN_TYPE_WINDOW); if (region) { View2D *v2d = ®ion->v2d; if (value) { @@ -809,17 +810,17 @@ static void rna_Space_view2d_sync_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr) { - ScrArea *sa; + ScrArea *area; ARegion *region; - sa = rna_area_from_space(ptr); /* can be NULL */ - region = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW); + area = rna_area_from_space(ptr); /* can be NULL */ + region = BKE_area_find_region_type(area, RGN_TYPE_WINDOW); if (region) { - bScreen *sc = (bScreen *)ptr->owner_id; + bScreen *screen = (bScreen *)ptr->owner_id; View2D *v2d = ®ion->v2d; - UI_view2d_sync(sc, sa, v2d, V2D_LOCK_SET); + UI_view2d_sync(screen, area, v2d, V2D_LOCK_SET); } } @@ -854,12 +855,12 @@ static void rna_SpaceView3D_camera_update(Main *bmain, Scene *scene, PointerRNA static void rna_SpaceView3D_use_local_camera_set(PointerRNA *ptr, bool value) { View3D *v3d = (View3D *)(ptr->data); - bScreen *sc = (bScreen *)ptr->owner_id; + bScreen *screen = (bScreen *)ptr->owner_id; v3d->scenelock = !value; if (!value) { - Scene *scene = ED_screen_scene_find(sc, G_MAIN->wm.first); + Scene *scene = ED_screen_scene_find(screen, G_MAIN->wm.first); /* NULL if the screen isn't in an active window (happens when setting from Python). * This could be moved to the update function, in that case the scene wont relate to the screen * so keep it working this way. */ @@ -886,10 +887,10 @@ static float rna_View3DOverlay_GridScaleUnit_get(PointerRNA *ptr) static PointerRNA rna_SpaceView3D_region_3d_get(PointerRNA *ptr) { View3D *v3d = (View3D *)(ptr->data); - ScrArea *sa = rna_area_from_space(ptr); + ScrArea *area = rna_area_from_space(ptr); void *regiondata = NULL; - if (sa) { - ListBase *regionbase = (sa->spacedata.first == v3d) ? &sa->regionbase : &v3d->regionbase; + if (area) { + ListBase *regionbase = (area->spacedata.first == v3d) ? &area->regionbase : &v3d->regionbase; ARegion *region = regionbase->last; /* always last in list, weak .. */ regiondata = region->regiondata; } @@ -901,11 +902,11 @@ static void rna_SpaceView3D_region_quadviews_begin(CollectionPropertyIterator *i PointerRNA *ptr) { View3D *v3d = (View3D *)(ptr->data); - ScrArea *sa = rna_area_from_space(ptr); + ScrArea *area = rna_area_from_space(ptr); int i = 3; ARegion *region = - ((sa && sa->spacedata.first == v3d) ? &sa->regionbase : &v3d->regionbase)->last; + ((area && area->spacedata.first == v3d) ? &area->regionbase : &v3d->regionbase)->last; ListBase lb = {NULL, NULL}; if (region && region->alignment == RGN_ALIGN_QSPLIT) { @@ -932,12 +933,12 @@ static void rna_RegionView3D_quadview_update(Main *UNUSED(main), Scene *UNUSED(scene), PointerRNA *ptr) { - ScrArea *sa; + ScrArea *area; ARegion *region; - rna_area_region_from_regiondata(ptr, &sa, ®ion); - if (sa && region && region->alignment == RGN_ALIGN_QSPLIT) { - ED_view3d_quadview_update(sa, region, false); + rna_area_region_from_regiondata(ptr, &area, ®ion); + if (area && region && region->alignment == RGN_ALIGN_QSPLIT) { + ED_view3d_quadview_update(area, region, false); } } @@ -946,12 +947,12 @@ static void rna_RegionView3D_quadview_clip_update(Main *UNUSED(main), Scene *UNUSED(scene), PointerRNA *ptr) { - ScrArea *sa; + ScrArea *area; ARegion *region; - rna_area_region_from_regiondata(ptr, &sa, ®ion); - if (sa && region && region->alignment == RGN_ALIGN_QSPLIT) { - ED_view3d_quadview_update(sa, region, true); + rna_area_region_from_regiondata(ptr, &area, ®ion); + if (area && region && region->alignment == RGN_ALIGN_QSPLIT) { + ED_view3d_quadview_update(area, region, true); } } @@ -1028,12 +1029,12 @@ static void rna_3DViewShading_type_update(Main *bmain, Scene *scene, PointerRNA rna_GPencil_update(bmain, scene, ptr); bScreen *screen = (bScreen *)ptr->owner_id; - for (ScrArea *sa = screen->areabase.first; sa; sa = sa->next) { - for (SpaceLink *sl = sa->spacedata.first; sl; sl = sl->next) { + LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) { + LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) { if (sl->spacetype == SPACE_VIEW3D) { View3D *v3d = (View3D *)sl; if (&v3d->shading == shading) { - ED_view3d_shade_update(bmain, v3d, sa); + ED_view3d_shade_update(bmain, v3d, area); return; } } @@ -1456,8 +1457,8 @@ static bool rna_SpaceImageEditor_show_paint_get(PointerRNA *ptr) static bool rna_SpaceImageEditor_show_uvedit_get(PointerRNA *ptr) { SpaceImage *sima = (SpaceImage *)(ptr->data); - bScreen *sc = (bScreen *)ptr->owner_id; - wmWindow *win = ED_screen_window_find(sc, G_MAIN->wm.first); + bScreen *screen = (bScreen *)ptr->owner_id; + wmWindow *win = ED_screen_window_find(screen, G_MAIN->wm.first); ViewLayer *view_layer = WM_window_get_active_view_layer(win); Object *obedit = OBEDIT_FROM_VIEW_LAYER(view_layer); return ED_space_image_show_uvedit(sima, obedit); @@ -1466,8 +1467,8 @@ static bool rna_SpaceImageEditor_show_uvedit_get(PointerRNA *ptr) static bool rna_SpaceImageEditor_show_maskedit_get(PointerRNA *ptr) { SpaceImage *sima = (SpaceImage *)(ptr->data); - bScreen *sc = (bScreen *)ptr->owner_id; - wmWindow *win = ED_screen_window_find(sc, G_MAIN->wm.first); + bScreen *screen = (bScreen *)ptr->owner_id; + wmWindow *win = ED_screen_window_find(screen, G_MAIN->wm.first); ViewLayer *view_layer = WM_window_get_active_view_layer(win); return ED_space_image_check_show_maskedit(sima, view_layer); } @@ -1477,8 +1478,8 @@ static void rna_SpaceImageEditor_image_set(PointerRNA *ptr, struct ReportList *UNUSED(reports)) { SpaceImage *sima = (SpaceImage *)(ptr->data); - bScreen *sc = (bScreen *)ptr->owner_id; - wmWindow *win = ED_screen_window_find(sc, G_MAIN->wm.first); + bScreen *screen = (bScreen *)ptr->owner_id; + wmWindow *win = ED_screen_window_find(screen, G_MAIN->wm.first); ViewLayer *view_layer = WM_window_get_active_view_layer(win); Object *obedit = OBEDIT_FROM_VIEW_LAYER(view_layer); @@ -1550,14 +1551,14 @@ static int rna_SpaceImageEditor_display_channels_get(PointerRNA *ptr) static void rna_SpaceImageEditor_zoom_get(PointerRNA *ptr, float *values) { SpaceImage *sima = (SpaceImage *)ptr->data; - ScrArea *sa; + ScrArea *area; ARegion *region; values[0] = values[1] = 1; /* find aregion */ - sa = rna_area_from_space(ptr); /* can be NULL */ - region = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW); + area = rna_area_from_space(ptr); /* can be NULL */ + region = BKE_area_find_region_type(area, RGN_TYPE_WINDOW); if (region) { ED_space_image_get_zoom(sima, region, &values[0], &values[1]); } @@ -2031,7 +2032,7 @@ static void rna_SpaceDopeSheetEditor_action_update(bContext *C, PointerRNA *ptr) static void rna_SpaceDopeSheetEditor_mode_update(bContext *C, PointerRNA *ptr) { SpaceAction *saction = (SpaceAction *)(ptr->data); - ScrArea *sa = CTX_wm_area(C); + ScrArea *area = CTX_wm_area(C); ViewLayer *view_layer = CTX_data_view_layer(C); Object *obact = OBACT(view_layer); @@ -2071,8 +2072,8 @@ static void rna_SpaceDopeSheetEditor_mode_update(bContext *C, PointerRNA *ptr) saction->ads.filterflag |= ADS_FILTER_SUMMARY; } - if (sa && sa->spacedata.first == saction) { - ARegion *channels_region = BKE_area_find_region_type(sa, RGN_TYPE_CHANNELS); + if (area && area->spacedata.first == saction) { + ARegion *channels_region = BKE_area_find_region_type(area, RGN_TYPE_CHANNELS); if (channels_region) { if (saction->mode == SACTCONT_TIMELINE) { channels_region->flag |= RGN_FLAG_HIDDEN; @@ -2080,7 +2081,7 @@ static void rna_SpaceDopeSheetEditor_mode_update(bContext *C, PointerRNA *ptr) else { channels_region->flag &= ~RGN_FLAG_HIDDEN; } - ED_region_visibility_change_update(C, sa, channels_region); + ED_region_visibility_change_update(C, area, channels_region); } } @@ -2098,19 +2099,19 @@ static void rna_SpaceDopeSheetEditor_mode_update(bContext *C, PointerRNA *ptr) static void rna_SpaceGraphEditor_display_mode_update(bContext *C, PointerRNA *ptr) { - ScrArea *sa = rna_area_from_space(ptr); + ScrArea *area = rna_area_from_space(ptr); SpaceGraph *sipo = (SpaceGraph *)ptr->data; /* for "Drivers" mode, enable all the necessary bits and pieces */ if (sipo->mode == SIPO_MODE_DRIVERS) { - ED_drivers_editor_init(C, sa); - ED_area_tag_redraw(sa); + ED_drivers_editor_init(C, area); + ED_area_tag_redraw(area); } /* after changing view mode, must force recalculation of F-Curve colors * which can only be achieved using refresh as opposed to redraw */ - ED_area_tag_refresh(sa); + ED_area_tag_refresh(area); } static bool rna_SpaceGraphEditor_has_ghost_curves_get(PointerRNA *ptr) @@ -2138,8 +2139,8 @@ static void rna_Sequencer_view_type_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr) { - ScrArea *sa = rna_area_from_space(ptr); - ED_area_tag_refresh(sa); + ScrArea *area = rna_area_from_space(ptr); + ED_area_tag_refresh(area); } /* Space Node Editor */ @@ -2321,8 +2322,8 @@ static void rna_SpaceClipEditor_clip_mode_update(Main *UNUSED(bmain), if (sc->mode == SC_MODE_MASKEDIT && sc->view != SC_VIEW_CLIP) { /* Make sure we are in the right view for mask editing */ sc->view = SC_VIEW_CLIP; - ScrArea *sa = rna_area_from_space(ptr); - ED_area_tag_refresh(sa); + ScrArea *area = rna_area_from_space(ptr); + ED_area_tag_refresh(area); } sc->scopes.ok = 0; @@ -2342,8 +2343,8 @@ static void rna_SpaceClipEditor_view_type_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr) { - ScrArea *sa = rna_area_from_space(ptr); - ED_area_tag_refresh(sa); + ScrArea *area = rna_area_from_space(ptr); + ED_area_tag_refresh(area); } /* File browser. */ @@ -4865,6 +4866,11 @@ static void rna_def_space_sequencer(BlenderRNA *brna) RNA_def_property_boolean_sdna(prop, NULL, "draw_flag", SEQ_DRAW_OFFSET_EXT); RNA_def_property_ui_text(prop, "Show Offsets", "Display strip in/out offsets"); RNA_def_property_update(prop, NC_SPACE | ND_SPACE_SEQUENCER, NULL); + + prop = RNA_def_property(srna, "show_fcurves", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", SEQ_SHOW_FCURVES); + RNA_def_property_ui_text(prop, "Show F-Curves", "Display strip opacity/volume curve"); + RNA_def_property_update(prop, NC_SPACE | ND_SPACE_SEQUENCER, NULL); } static void rna_def_space_text(BlenderRNA *brna) diff --git a/source/blender/makesrna/intern/rna_space_api.c b/source/blender/makesrna/intern/rna_space_api.c index 84c80e56d0d..28fdc5fb60f 100644 --- a/source/blender/makesrna/intern/rna_space_api.c +++ b/source/blender/makesrna/intern/rna_space_api.c @@ -32,21 +32,21 @@ static void rna_RegionView3D_update(ID *id, RegionView3D *rv3d, bContext *C) { - bScreen *sc = (bScreen *)id; + bScreen *screen = (bScreen *)id; - ScrArea *sa; + ScrArea *area; ARegion *region; - area_region_from_regiondata(sc, rv3d, &sa, ®ion); + area_region_from_regiondata(screen, rv3d, &area, ®ion); - if (sa && region && sa->spacetype == SPACE_VIEW3D) { + if (area && region && area->spacetype == SPACE_VIEW3D) { Main *bmain = CTX_data_main(C); - View3D *v3d = sa->spacedata.first; + View3D *v3d = area->spacedata.first; wmWindowManager *wm = CTX_wm_manager(C); wmWindow *win; for (win = wm->windows.first; win; win = win->next) { - if (WM_window_get_active_screen(win) == sc) { + if (WM_window_get_active_screen(win) == screen) { Scene *scene = WM_window_get_active_scene(win); ViewLayer *view_layer = WM_window_get_active_view_layer(win); Depsgraph *depsgraph = BKE_scene_get_depsgraph(bmain, scene, view_layer, true); @@ -61,10 +61,10 @@ static void rna_RegionView3D_update(ID *id, RegionView3D *rv3d, bContext *C) static void rna_SpaceTextEditor_region_location_from_cursor( ID *id, SpaceText *st, int line, int column, int r_pixel_pos[2]) { - bScreen *sc = (bScreen *)id; - ScrArea *sa = BKE_screen_find_area_from_space(sc, (SpaceLink *)st); - if (sa) { - ARegion *region = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW); + bScreen *screen = (bScreen *)id; + ScrArea *area = BKE_screen_find_area_from_space(screen, (SpaceLink *)st); + if (area) { + ARegion *region = BKE_area_find_region_type(area, RGN_TYPE_WINDOW); const int cursor_co[2] = {line, column}; ED_text_region_location_from_cursor(st, region, cursor_co, r_pixel_pos); } diff --git a/source/blender/makesrna/intern/rna_tracking.c b/source/blender/makesrna/intern/rna_tracking.c index c8965f1a6fb..131c13c4d90 100644 --- a/source/blender/makesrna/intern/rna_tracking.c +++ b/source/blender/makesrna/intern/rna_tracking.c @@ -43,6 +43,7 @@ # include "DNA_anim_types.h" +# include "BKE_anim_data.h" # include "BKE_animsys.h" # include "BKE_node.h" diff --git a/source/blender/makesrna/intern/rna_ui.c b/source/blender/makesrna/intern/rna_ui.c index 273bef6d239..ca466ce2821 100644 --- a/source/blender/makesrna/intern/rna_ui.c +++ b/source/blender/makesrna/intern/rna_ui.c @@ -27,6 +27,8 @@ #include "BKE_idprop.h" +#include "BLI_listbase.h" + #include "RNA_define.h" #include "RNA_enum_types.h" @@ -111,12 +113,12 @@ static bool panel_poll(const bContext *C, PanelType *pt) void *ret; bool visible; - RNA_pointer_create(NULL, pt->ext.srna, NULL, &ptr); /* dummy */ - func = &rna_Panel_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ + RNA_pointer_create(NULL, pt->rna_ext.srna, NULL, &ptr); /* dummy */ + func = &rna_Panel_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - pt->ext.call((bContext *)C, &ptr, func, &list); + pt->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_get_lookup(&list, "visible", &ret); visible = *(bool *)ret; @@ -126,7 +128,7 @@ static bool panel_poll(const bContext *C, PanelType *pt) return visible; } -static void panel_draw(const bContext *C, Panel *pnl) +static void panel_draw(const bContext *C, Panel *panel) { extern FunctionRNA rna_Panel_draw_func; @@ -134,17 +136,17 @@ static void panel_draw(const bContext *C, Panel *pnl) ParameterList list; FunctionRNA *func; - RNA_pointer_create(&CTX_wm_screen(C)->id, pnl->type->ext.srna, pnl, &ptr); + RNA_pointer_create(&CTX_wm_screen(C)->id, panel->type->rna_ext.srna, panel, &ptr); func = &rna_Panel_draw_func; /* RNA_struct_find_function(&ptr, "draw"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - pnl->type->ext.call((bContext *)C, &ptr, func, &list); + panel->type->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_list_free(&list); } -static void panel_draw_header(const bContext *C, Panel *pnl) +static void panel_draw_header(const bContext *C, Panel *panel) { extern FunctionRNA rna_Panel_draw_header_func; @@ -152,17 +154,17 @@ static void panel_draw_header(const bContext *C, Panel *pnl) ParameterList list; FunctionRNA *func; - RNA_pointer_create(&CTX_wm_screen(C)->id, pnl->type->ext.srna, pnl, &ptr); + RNA_pointer_create(&CTX_wm_screen(C)->id, panel->type->rna_ext.srna, panel, &ptr); func = &rna_Panel_draw_header_func; /* RNA_struct_find_function(&ptr, "draw_header"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - pnl->type->ext.call((bContext *)C, &ptr, func, &list); + panel->type->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_list_free(&list); } -static void panel_draw_header_preset(const bContext *C, Panel *pnl) +static void panel_draw_header_preset(const bContext *C, Panel *panel) { extern FunctionRNA rna_Panel_draw_header_preset_func; @@ -170,12 +172,12 @@ static void panel_draw_header_preset(const bContext *C, Panel *pnl) ParameterList list; FunctionRNA *func; - RNA_pointer_create(&CTX_wm_screen(C)->id, pnl->type->ext.srna, pnl, &ptr); + RNA_pointer_create(&CTX_wm_screen(C)->id, panel->type->rna_ext.srna, panel, &ptr); func = &rna_Panel_draw_header_preset_func; RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - pnl->type->ext.call((bContext *)C, &ptr, func, &list); + panel->type->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_list_free(&list); } @@ -192,7 +194,7 @@ static void rna_Panel_unregister(Main *bmain, StructRNA *type) return; } - RNA_struct_free_extension(type, &pt->ext); + RNA_struct_free_extension(type, &pt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); if (pt->parent) { @@ -202,7 +204,7 @@ static void rna_Panel_unregister(Main *bmain, StructRNA *type) WM_paneltype_remove(pt); - for (LinkData *link = pt->children.first; link; link = link->next) { + LISTBASE_FOREACH (LinkData *, link, &pt->children) { PanelType *child_pt = link->data; child_pt->parent = NULL; } @@ -212,15 +214,16 @@ static void rna_Panel_unregister(Main *bmain, StructRNA *type) BLI_freelinkN(&art->paneltypes, pt); for (bScreen *screen = bmain->screens.first; screen; screen = screen->id.next) { - for (ScrArea *sa = screen->areabase.first; sa; sa = sa->next) { - for (SpaceLink *sl = sa->spacedata.first; sl; sl = sl->next) { + LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) { + LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) { if (sl->spacetype == space_type) { - ListBase *regionbase = (sl == sa->spacedata.first) ? &sa->regionbase : &sl->regionbase; - for (ARegion *region = regionbase->first; region; region = region->next) { + ListBase *regionbase = (sl == area->spacedata.first) ? &area->regionbase : + &sl->regionbase; + LISTBASE_FOREACH (ARegion *, region, regionbase) { if (region->type == art) { - for (Panel *pa = region->panels.first; pa; pa = pa->next) { - if (pa->type == pt) { - pa->type = NULL; + LISTBASE_FOREACH (Panel *, panel, ®ion->panels) { + if (panel->type == pt) { + panel->type = NULL; } } } @@ -300,8 +303,8 @@ static StructRNA *rna_Panel_register(Main *bmain, for (pt = art->paneltypes.first; pt; pt = pt->next) { if (STREQ(pt->idname, dummypt.idname)) { PanelType *pt_next = pt->next; - if (pt->ext.srna) { - rna_Panel_unregister(bmain, pt->ext.srna); + if (pt->rna_ext.srna) { + rna_Panel_unregister(bmain, pt->rna_ext.srna); } else { BLI_freelinkN(&art->paneltypes, pt); @@ -344,13 +347,13 @@ static StructRNA *rna_Panel_register(Main *bmain, pt = MEM_mallocN(sizeof(PanelType), "python buttons panel"); memcpy(pt, &dummypt, sizeof(dummypt)); - pt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, pt->idname, &RNA_Panel); - RNA_def_struct_translation_context(pt->ext.srna, pt->translation_context); - pt->ext.data = data; - pt->ext.call = call; - pt->ext.free = free; - RNA_struct_blender_type_set(pt->ext.srna, pt); - RNA_def_struct_flag(pt->ext.srna, STRUCT_NO_IDPROPERTIES); + pt->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, pt->idname, &RNA_Panel); + RNA_def_struct_translation_context(pt->rna_ext.srna, pt->translation_context); + pt->rna_ext.data = data; + pt->rna_ext.call = call; + pt->rna_ext.free = free; + RNA_struct_blender_type_set(pt->rna_ext.srna, pt); + RNA_def_struct_flag(pt->rna_ext.srna, STRUCT_NO_IDPROPERTIES); pt->poll = (have_function[0]) ? panel_poll : NULL; pt->draw = (have_function[1]) ? panel_draw : NULL; @@ -390,13 +393,13 @@ static StructRNA *rna_Panel_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_WINDOW, NULL); - return pt->ext.srna; + return pt->rna_ext.srna; } static StructRNA *rna_Panel_refine(PointerRNA *ptr) { Panel *menu = (Panel *)ptr->data; - return (menu->type && menu->type->ext.srna) ? menu->type->ext.srna : &RNA_Panel; + return (menu->type && menu->type->rna_ext.srna) ? menu->type->rna_ext.srna : &RNA_Panel; } /* UIList */ @@ -433,7 +436,7 @@ static void uilist_draw_item(uiList *ui_list, ParameterList list; FunctionRNA *func; - RNA_pointer_create(&CTX_wm_screen(C)->id, ui_list->type->ext.srna, ui_list, &ul_ptr); + RNA_pointer_create(&CTX_wm_screen(C)->id, ui_list->type->rna_ext.srna, ui_list, &ul_ptr); func = &rna_UIList_draw_item_func; /* RNA_struct_find_function(&ul_ptr, "draw_item"); */ RNA_parameter_list_create(&list, &ul_ptr, func); @@ -446,7 +449,7 @@ static void uilist_draw_item(uiList *ui_list, RNA_parameter_set_lookup(&list, "active_property", &active_propname); RNA_parameter_set_lookup(&list, "index", &index); RNA_parameter_set_lookup(&list, "flt_flag", &flt_flag); - ui_list->type->ext.call((bContext *)C, &ul_ptr, func, &list); + ui_list->type->rna_ext.call((bContext *)C, &ul_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -459,13 +462,13 @@ static void uilist_draw_filter(uiList *ui_list, bContext *C, uiLayout *layout) ParameterList list; FunctionRNA *func; - RNA_pointer_create(&CTX_wm_screen(C)->id, ui_list->type->ext.srna, ui_list, &ul_ptr); + RNA_pointer_create(&CTX_wm_screen(C)->id, ui_list->type->rna_ext.srna, ui_list, &ul_ptr); func = &rna_UIList_draw_filter_func; /* RNA_struct_find_function(&ul_ptr, "draw_filter"); */ RNA_parameter_list_create(&list, &ul_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "layout", &layout); - ui_list->type->ext.call((bContext *)C, &ul_ptr, func, &list); + ui_list->type->rna_ext.call((bContext *)C, &ul_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -488,7 +491,7 @@ static void uilist_filter_items(uiList *ui_list, int ret_len; int len = flt_data->items_len = RNA_collection_length(dataptr, propname); - RNA_pointer_create(&CTX_wm_screen(C)->id, ui_list->type->ext.srna, ui_list, &ul_ptr); + RNA_pointer_create(&CTX_wm_screen(C)->id, ui_list->type->rna_ext.srna, ui_list, &ul_ptr); func = &rna_UIList_filter_items_func; /* RNA_struct_find_function(&ul_ptr, "filter_items"); */ RNA_parameter_list_create(&list, &ul_ptr, func); @@ -496,7 +499,7 @@ static void uilist_filter_items(uiList *ui_list, RNA_parameter_set_lookup(&list, "data", dataptr); RNA_parameter_set_lookup(&list, "property", &propname); - ui_list->type->ext.call((bContext *)C, &ul_ptr, func, &list); + ui_list->type->rna_ext.call((bContext *)C, &ul_ptr, func, &list); parm = RNA_function_find_parameter(NULL, func, "filter_flags"); ret_len = RNA_parameter_dynamic_length_get(&list, parm); @@ -599,7 +602,7 @@ static void rna_UIList_unregister(Main *UNUSED(bmain), StructRNA *type) return; } - RNA_struct_free_extension(type, &ult->ext); + RNA_struct_free_extension(type, &ult->rna_ext); RNA_struct_free(&BLENDER_RNA, type); WM_uilisttype_freelink(ult); @@ -642,8 +645,8 @@ static StructRNA *rna_UIList_register(Main *bmain, /* check if we have registered this uilist type before, and remove it */ ult = WM_uilisttype_find(dummyult.idname, true); - if (ult && ult->ext.srna) { - rna_UIList_unregister(bmain, ult->ext.srna); + if (ult && ult->rna_ext.srna) { + rna_UIList_unregister(bmain, ult->rna_ext.srna); } if (!RNA_struct_available_or_report(reports, dummyult.idname)) { return NULL; @@ -656,11 +659,11 @@ static StructRNA *rna_UIList_register(Main *bmain, ult = MEM_callocN(sizeof(uiListType) + over_alloc, "python uilist"); memcpy(ult, &dummyult, sizeof(dummyult)); - ult->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, ult->idname, &RNA_UIList); - ult->ext.data = data; - ult->ext.call = call; - ult->ext.free = free; - RNA_struct_blender_type_set(ult->ext.srna, ult); + ult->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, ult->idname, &RNA_UIList); + ult->rna_ext.data = data; + ult->rna_ext.call = call; + ult->rna_ext.free = free; + RNA_struct_blender_type_set(ult->rna_ext.srna, ult); ult->draw_item = (have_function[0]) ? uilist_draw_item : NULL; ult->draw_filter = (have_function[1]) ? uilist_draw_filter : NULL; @@ -671,13 +674,14 @@ static StructRNA *rna_UIList_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_WINDOW, NULL); - return ult->ext.srna; + return ult->rna_ext.srna; } static StructRNA *rna_UIList_refine(PointerRNA *ptr) { uiList *ui_list = (uiList *)ptr->data; - return (ui_list->type && ui_list->type->ext.srna) ? ui_list->type->ext.srna : &RNA_UIList; + return (ui_list->type && ui_list->type->rna_ext.srna) ? ui_list->type->rna_ext.srna : + &RNA_UIList; } /* Header */ @@ -690,12 +694,12 @@ static void header_draw(const bContext *C, Header *hdr) ParameterList list; FunctionRNA *func; - RNA_pointer_create(&CTX_wm_screen(C)->id, hdr->type->ext.srna, hdr, &htr); + RNA_pointer_create(&CTX_wm_screen(C)->id, hdr->type->rna_ext.srna, hdr, &htr); func = &rna_Header_draw_func; /* RNA_struct_find_function(&htr, "draw"); */ RNA_parameter_list_create(&list, &htr, func); RNA_parameter_set_lookup(&list, "context", &C); - hdr->type->ext.call((bContext *)C, &htr, func, &list); + hdr->type->rna_ext.call((bContext *)C, &htr, func, &list); RNA_parameter_list_free(&list); } @@ -712,7 +716,7 @@ static void rna_Header_unregister(Main *UNUSED(bmain), StructRNA *type) return; } - RNA_struct_free_extension(type, &ht->ext); + RNA_struct_free_extension(type, &ht->rna_ext); RNA_struct_free(&BLENDER_RNA, type); BLI_freelinkN(&art->headertypes, ht); @@ -761,8 +765,8 @@ static StructRNA *rna_Header_register(Main *bmain, /* check if we have registered this header type before, and remove it */ for (ht = art->headertypes.first; ht; ht = ht->next) { if (STREQ(ht->idname, dummyht.idname)) { - if (ht->ext.srna) { - rna_Header_unregister(bmain, ht->ext.srna); + if (ht->rna_ext.srna) { + rna_Header_unregister(bmain, ht->rna_ext.srna); } break; } @@ -778,11 +782,11 @@ static StructRNA *rna_Header_register(Main *bmain, ht = MEM_mallocN(sizeof(HeaderType), "python buttons header"); memcpy(ht, &dummyht, sizeof(dummyht)); - ht->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, ht->idname, &RNA_Header); - ht->ext.data = data; - ht->ext.call = call; - ht->ext.free = free; - RNA_struct_blender_type_set(ht->ext.srna, ht); + ht->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, ht->idname, &RNA_Header); + ht->rna_ext.data = data; + ht->rna_ext.call = call; + ht->rna_ext.free = free; + RNA_struct_blender_type_set(ht->rna_ext.srna, ht); ht->draw = (have_function[0]) ? header_draw : NULL; @@ -791,13 +795,13 @@ static StructRNA *rna_Header_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_WINDOW, NULL); - return ht->ext.srna; + return ht->rna_ext.srna; } static StructRNA *rna_Header_refine(PointerRNA *htr) { Header *hdr = (Header *)htr->data; - return (hdr->type && hdr->type->ext.srna) ? hdr->type->ext.srna : &RNA_Header; + return (hdr->type && hdr->type->rna_ext.srna) ? hdr->type->rna_ext.srna : &RNA_Header; } /* Menu */ @@ -812,12 +816,12 @@ static bool menu_poll(const bContext *C, MenuType *pt) void *ret; bool visible; - RNA_pointer_create(NULL, pt->ext.srna, NULL, &ptr); /* dummy */ - func = &rna_Menu_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ + RNA_pointer_create(NULL, pt->rna_ext.srna, NULL, &ptr); /* dummy */ + func = &rna_Menu_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - pt->ext.call((bContext *)C, &ptr, func, &list); + pt->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_get_lookup(&list, "visible", &ret); visible = *(bool *)ret; @@ -835,12 +839,12 @@ static void menu_draw(const bContext *C, Menu *menu) ParameterList list; FunctionRNA *func; - RNA_pointer_create(&CTX_wm_screen(C)->id, menu->type->ext.srna, menu, &mtr); + RNA_pointer_create(&CTX_wm_screen(C)->id, menu->type->rna_ext.srna, menu, &mtr); func = &rna_Menu_draw_func; /* RNA_struct_find_function(&mtr, "draw"); */ RNA_parameter_list_create(&list, &mtr, func); RNA_parameter_set_lookup(&list, "context", &C); - menu->type->ext.call((bContext *)C, &mtr, func, &list); + menu->type->rna_ext.call((bContext *)C, &mtr, func, &list); RNA_parameter_list_free(&list); } @@ -853,7 +857,7 @@ static void rna_Menu_unregister(Main *UNUSED(bmain), StructRNA *type) return; } - RNA_struct_free_extension(type, &mt->ext); + RNA_struct_free_extension(type, &mt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); WM_menutype_freelink(mt); @@ -903,8 +907,8 @@ static StructRNA *rna_Menu_register(Main *bmain, /* check if we have registered this menu type before, and remove it */ mt = WM_menutype_find(dummymt.idname, true); - if (mt && mt->ext.srna) { - rna_Menu_unregister(bmain, mt->ext.srna); + if (mt && mt->rna_ext.srna) { + rna_Menu_unregister(bmain, mt->rna_ext.srna); } if (!RNA_struct_available_or_report(reports, dummymt.idname)) { return NULL; @@ -931,13 +935,13 @@ static StructRNA *rna_Menu_register(Main *bmain, mt->description = NULL; } - mt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, mt->idname, &RNA_Menu); - RNA_def_struct_translation_context(mt->ext.srna, mt->translation_context); - mt->ext.data = data; - mt->ext.call = call; - mt->ext.free = free; - RNA_struct_blender_type_set(mt->ext.srna, mt); - RNA_def_struct_flag(mt->ext.srna, STRUCT_NO_IDPROPERTIES); + mt->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, mt->idname, &RNA_Menu); + RNA_def_struct_translation_context(mt->rna_ext.srna, mt->translation_context); + mt->rna_ext.data = data; + mt->rna_ext.call = call; + mt->rna_ext.free = free; + RNA_struct_blender_type_set(mt->rna_ext.srna, mt); + RNA_def_struct_flag(mt->rna_ext.srna, STRUCT_NO_IDPROPERTIES); mt->poll = (have_function[0]) ? menu_poll : NULL; mt->draw = (have_function[1]) ? menu_draw : NULL; @@ -954,13 +958,13 @@ static StructRNA *rna_Menu_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_WINDOW, NULL); - return mt->ext.srna; + return mt->rna_ext.srna; } static StructRNA *rna_Menu_refine(PointerRNA *mtr) { Menu *menu = (Menu *)mtr->data; - return (menu->type && menu->type->ext.srna) ? menu->type->ext.srna : &RNA_Menu; + return (menu->type && menu->type->rna_ext.srna) ? menu->type->rna_ext.srna : &RNA_Menu; } static void rna_Menu_bl_description_set(PointerRNA *ptr, const char *value) diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c index 3b2753518bb..b107c89388d 100644 --- a/source/blender/makesrna/intern/rna_userdef.c +++ b/source/blender/makesrna/intern/rna_userdef.c @@ -793,7 +793,7 @@ static PointerRNA rna_Addon_preferences_get(PointerRNA *ptr) IDPropertyTemplate val = {0}; addon->prop = IDP_New(IDP_GROUP, &val, addon->module); /* name is unimportant */ } - return rna_pointer_inherit_refine(ptr, apt->ext.srna, addon->prop); + return rna_pointer_inherit_refine(ptr, apt->rna_ext.srna, addon->prop); } else { return PointerRNA_NULL; @@ -808,7 +808,7 @@ static void rna_AddonPref_unregister(Main *UNUSED(bmain), StructRNA *type) return; } - RNA_struct_free_extension(type, &apt->ext); + RNA_struct_free_extension(type, &apt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); BKE_addon_pref_type_remove(apt); @@ -850,8 +850,8 @@ static StructRNA *rna_AddonPref_register(Main *bmain, /* check if we have registered this addon-pref type before, and remove it */ apt = BKE_addon_pref_type_find(dummy_addon.module, true); - if (apt && apt->ext.srna) { - rna_AddonPref_unregister(bmain, apt->ext.srna); + if (apt && apt->rna_ext.srna) { + rna_AddonPref_unregister(bmain, apt->rna_ext.srna); } /* create a new addon-pref type */ @@ -859,18 +859,18 @@ static StructRNA *rna_AddonPref_register(Main *bmain, memcpy(apt, &dummy_apt, sizeof(dummy_apt)); BKE_addon_pref_type_add(apt); - apt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, identifier, &RNA_AddonPreferences); - apt->ext.data = data; - apt->ext.call = call; - apt->ext.free = free; - RNA_struct_blender_type_set(apt->ext.srna, apt); + apt->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, identifier, &RNA_AddonPreferences); + apt->rna_ext.data = data; + apt->rna_ext.call = call; + apt->rna_ext.free = free; + RNA_struct_blender_type_set(apt->rna_ext.srna, apt); // apt->draw = (have_function[0]) ? header_draw : NULL; /* update while blender is running */ WM_main_add_notifier(NC_WINDOW, NULL); - return apt->ext.srna; + return apt->rna_ext.srna; } /* placeholder, doesn't do anything useful yet */ diff --git a/source/blender/makesrna/intern/rna_volume.c b/source/blender/makesrna/intern/rna_volume.c index 0ee1dbc791b..25b5395b35c 100644 --- a/source/blender/makesrna/intern/rna_volume.c +++ b/source/blender/makesrna/intern/rna_volume.c @@ -194,6 +194,19 @@ static int rna_VolumeGrids_error_message_length(PointerRNA *ptr) return strlen(BKE_volume_grids_error_msg(volume)); } +/* Frame Filepath */ +static void rna_VolumeGrids_frame_filepath_get(PointerRNA *ptr, char *value) +{ + Volume *volume = (Volume *)ptr->data; + strcpy(value, BKE_volume_grids_frame_filepath(volume)); +} + +static int rna_VolumeGrids_frame_filepath_length(PointerRNA *ptr) +{ + Volume *volume = (Volume *)ptr->data; + return strlen(BKE_volume_grids_frame_filepath(volume)); +} + #else static void rna_def_volume_grid(BlenderRNA *brna) @@ -308,6 +321,16 @@ static void rna_def_volume_grids(BlenderRNA *brna, PropertyRNA *cprop) "Frame number that volume grids will be loaded at, based on scene time " "and volume parameters"); + prop = RNA_def_property(srna, "frame_filepath", PROP_STRING, PROP_FILEPATH); + RNA_def_property_clear_flag(prop, PROP_EDITABLE); + RNA_def_property_string_funcs( + prop, "rna_VolumeGrids_frame_filepath_get", "rna_VolumeGrids_frame_filepath_length", NULL); + + RNA_def_property_ui_text(prop, + "Frame File Path", + "Volume file used for loading the volume at the current frame. Empty " + "if the volume has not be loaded or the frame only exists in memory"); + /* API */ FunctionRNA *func; PropertyRNA *parm; @@ -446,7 +469,7 @@ static void rna_def_volume(BlenderRNA *brna) /* File */ prop = RNA_def_property(srna, "filepath", PROP_STRING, PROP_FILEPATH); RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); - RNA_def_property_ui_text(prop, "File Path", "Volume sample file used by this Volume data-block"); + RNA_def_property_ui_text(prop, "File Path", "Volume file used by this Volume data-block"); RNA_def_property_update(prop, 0, "rna_Volume_update_filepath"); prop = RNA_def_property(srna, "packed_file", PROP_POINTER, PROP_NONE); diff --git a/source/blender/makesrna/intern/rna_wm.c b/source/blender/makesrna/intern/rna_wm.c index b0d77a2e176..151c772f533 100644 --- a/source/blender/makesrna/intern/rna_wm.c +++ b/source/blender/makesrna/intern/rna_wm.c @@ -1085,7 +1085,7 @@ static PointerRNA rna_wmKeyConfig_preferences_get(PointerRNA *ptr) wmKeyConfigPrefType_Runtime *kpt_rt = BKE_keyconfig_pref_type_find(kc->idname, true); if (kpt_rt) { wmKeyConfigPref *kpt = BKE_keyconfig_pref_ensure(&U, kc->idname); - return rna_pointer_inherit_refine(ptr, kpt_rt->ext.srna, kpt->prop); + return rna_pointer_inherit_refine(ptr, kpt_rt->rna_ext.srna, kpt->prop); } else { return PointerRNA_NULL; @@ -1109,7 +1109,7 @@ static void rna_wmKeyConfigPref_unregister(Main *UNUSED(bmain), StructRNA *type) return; } - RNA_struct_free_extension(type, &kpt_rt->ext); + RNA_struct_free_extension(type, &kpt_rt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); /* Possible we're not in the preferences if they have been reset. */ @@ -1152,8 +1152,8 @@ static StructRNA *rna_wmKeyConfigPref_register(Main *bmain, /* check if we have registered this keyconf-prefs type before, and remove it */ kpt_rt = BKE_keyconfig_pref_type_find(dummy_kpt.idname, true); - if (kpt_rt && kpt_rt->ext.srna) { - rna_wmKeyConfigPref_unregister(bmain, kpt_rt->ext.srna); + if (kpt_rt && kpt_rt->rna_ext.srna) { + rna_wmKeyConfigPref_unregister(bmain, kpt_rt->rna_ext.srna); } /* create a new keyconf-prefs type */ @@ -1162,18 +1162,18 @@ static StructRNA *rna_wmKeyConfigPref_register(Main *bmain, BKE_keyconfig_pref_type_add(kpt_rt); - kpt_rt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, identifier, &RNA_KeyConfigPreferences); - kpt_rt->ext.data = data; - kpt_rt->ext.call = call; - kpt_rt->ext.free = free; - RNA_struct_blender_type_set(kpt_rt->ext.srna, kpt_rt); + kpt_rt->rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, identifier, &RNA_KeyConfigPreferences); + kpt_rt->rna_ext.data = data; + kpt_rt->rna_ext.call = call; + kpt_rt->rna_ext.free = free; + RNA_struct_blender_type_set(kpt_rt->rna_ext.srna, kpt_rt); // kpt_rt->draw = (have_function[0]) ? header_draw : NULL; /* update while blender is running */ WM_main_add_notifier(NC_WINDOW, NULL); - return kpt_rt->ext.srna; + return kpt_rt->rna_ext.srna; } /* placeholder, doesn't do anything useful yet */ @@ -1292,12 +1292,12 @@ static bool rna_operator_poll_cb(bContext *C, wmOperatorType *ot) void *ret; bool visible; - RNA_pointer_create(NULL, ot->ext.srna, NULL, &ptr); /* dummy */ - func = &rna_Operator_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ + RNA_pointer_create(NULL, ot->rna_ext.srna, NULL, &ptr); /* dummy */ + func = &rna_Operator_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - ot->ext.call(C, &ptr, func, &list); + ot->rna_ext.call(C, &ptr, func, &list); RNA_parameter_get_lookup(&list, "visible", &ret); visible = *(bool *)ret; @@ -1317,12 +1317,12 @@ static int rna_operator_execute_cb(bContext *C, wmOperator *op) void *ret; int result; - RNA_pointer_create(NULL, op->type->ext.srna, op, &opr); + RNA_pointer_create(NULL, op->type->rna_ext.srna, op, &opr); func = &rna_Operator_execute_func; /* RNA_struct_find_function(&opr, "execute"); */ RNA_parameter_list_create(&list, &opr, func); RNA_parameter_set_lookup(&list, "context", &C); - op->type->ext.call(C, &opr, func, &list); + op->type->rna_ext.call(C, &opr, func, &list); RNA_parameter_get_lookup(&list, "result", &ret); result = *(int *)ret; @@ -1343,12 +1343,12 @@ static bool rna_operator_check_cb(bContext *C, wmOperator *op) void *ret; bool result; - RNA_pointer_create(NULL, op->type->ext.srna, op, &opr); + RNA_pointer_create(NULL, op->type->rna_ext.srna, op, &opr); func = &rna_Operator_check_func; /* RNA_struct_find_function(&opr, "check"); */ RNA_parameter_list_create(&list, &opr, func); RNA_parameter_set_lookup(&list, "context", &C); - op->type->ext.call(C, &opr, func, &list); + op->type->rna_ext.call(C, &opr, func, &list); RNA_parameter_get_lookup(&list, "result", &ret); result = (*(bool *)ret) != 0; @@ -1368,13 +1368,13 @@ static int rna_operator_invoke_cb(bContext *C, wmOperator *op, const wmEvent *ev void *ret; int result; - RNA_pointer_create(NULL, op->type->ext.srna, op, &opr); + RNA_pointer_create(NULL, op->type->rna_ext.srna, op, &opr); func = &rna_Operator_invoke_func; /* RNA_struct_find_function(&opr, "invoke"); */ RNA_parameter_list_create(&list, &opr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "event", &event); - op->type->ext.call(C, &opr, func, &list); + op->type->rna_ext.call(C, &opr, func, &list); RNA_parameter_get_lookup(&list, "result", &ret); result = *(int *)ret; @@ -1395,13 +1395,13 @@ static int rna_operator_modal_cb(bContext *C, wmOperator *op, const wmEvent *eve void *ret; int result; - RNA_pointer_create(NULL, op->type->ext.srna, op, &opr); + RNA_pointer_create(NULL, op->type->rna_ext.srna, op, &opr); func = &rna_Operator_modal_func; /* RNA_struct_find_function(&opr, "modal"); */ RNA_parameter_list_create(&list, &opr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "event", &event); - op->type->ext.call(C, &opr, func, &list); + op->type->rna_ext.call(C, &opr, func, &list); RNA_parameter_get_lookup(&list, "result", &ret); result = *(int *)ret; @@ -1419,12 +1419,12 @@ static void rna_operator_draw_cb(bContext *C, wmOperator *op) ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, op->type->ext.srna, op, &opr); + RNA_pointer_create(NULL, op->type->rna_ext.srna, op, &opr); func = &rna_Operator_draw_func; /* RNA_struct_find_function(&opr, "draw"); */ RNA_parameter_list_create(&list, &opr, func); RNA_parameter_set_lookup(&list, "context", &C); - op->type->ext.call(C, &opr, func, &list); + op->type->rna_ext.call(C, &opr, func, &list); RNA_parameter_list_free(&list); } @@ -1438,12 +1438,12 @@ static void rna_operator_cancel_cb(bContext *C, wmOperator *op) ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, op->type->ext.srna, op, &opr); + RNA_pointer_create(NULL, op->type->rna_ext.srna, op, &opr); func = &rna_Operator_cancel_func; /* RNA_struct_find_function(&opr, "cancel"); */ RNA_parameter_list_create(&list, &opr, func); RNA_parameter_set_lookup(&list, "context", &C); - op->type->ext.call(C, &opr, func, &list); + op->type->rna_ext.call(C, &opr, func, &list); RNA_parameter_list_free(&list); } @@ -1458,13 +1458,13 @@ static char *rna_operator_description_cb(bContext *C, wmOperatorType *ot, Pointe void *ret; char *result; - RNA_pointer_create(NULL, ot->ext.srna, NULL, &ptr); /* dummy */ + RNA_pointer_create(NULL, ot->rna_ext.srna, NULL, &ptr); /* dummy */ func = &rna_Operator_description_func; /* RNA_struct_find_function(&ptr, "description"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "properties", prop_ptr); - ot->ext.call(C, &ptr, func, &list); + ot->rna_ext.call(C, &ptr, func, &list); RNA_parameter_get_lookup(&list, "result", &ret); result = (char *)ret; @@ -1532,8 +1532,8 @@ static StructRNA *rna_Operator_register(Main *bmain, /* check if we have registered this operator type before, and remove it */ { wmOperatorType *ot = WM_operatortype_find(dummyot.idname, true); - if (ot && ot->ext.srna) { - rna_Operator_unregister(bmain, ot->ext.srna); + if (ot && ot->rna_ext.srna) { + rna_Operator_unregister(bmain, ot->rna_ext.srna); } } @@ -1574,16 +1574,16 @@ static StructRNA *rna_Operator_register(Main *bmain, * for now just remove from dir(bpy.types) */ /* create a new operator type */ - dummyot.ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummyot.idname, &RNA_Operator); + dummyot.rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummyot.idname, &RNA_Operator); /* Operator properties are registered separately. */ - RNA_def_struct_flag(dummyot.ext.srna, STRUCT_NO_IDPROPERTIES); + RNA_def_struct_flag(dummyot.rna_ext.srna, STRUCT_NO_IDPROPERTIES); - RNA_def_struct_property_tags(dummyot.ext.srna, rna_enum_operator_property_tags); - RNA_def_struct_translation_context(dummyot.ext.srna, dummyot.translation_context); - dummyot.ext.data = data; - dummyot.ext.call = call; - dummyot.ext.free = free; + RNA_def_struct_property_tags(dummyot.rna_ext.srna, rna_enum_operator_property_tags); + RNA_def_struct_translation_context(dummyot.rna_ext.srna, dummyot.translation_context); + dummyot.rna_ext.data = data; + dummyot.rna_ext.call = call; + dummyot.rna_ext.free = free; dummyot.pyop_poll = (have_function[0]) ? rna_operator_poll_cb : NULL; dummyot.exec = (have_function[1]) ? rna_operator_execute_cb : NULL; @@ -1598,7 +1598,7 @@ static StructRNA *rna_Operator_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); - return dummyot.ext.srna; + return dummyot.rna_ext.srna; } static void rna_Operator_unregister(struct Main *bmain, StructRNA *type) @@ -1620,7 +1620,7 @@ static void rna_Operator_unregister(struct Main *bmain, StructRNA *type) } WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); - RNA_struct_free_extension(type, &ot->ext); + RNA_struct_free_extension(type, &ot->rna_ext); idname = ot->idname; WM_operatortype_remove_ptr(ot); @@ -1692,8 +1692,8 @@ static StructRNA *rna_MacroOperator_register(Main *bmain, /* check if we have registered this operator type before, and remove it */ { wmOperatorType *ot = WM_operatortype_find(dummyot.idname, true); - if (ot && ot->ext.srna) { - rna_Operator_unregister(bmain, ot->ext.srna); + if (ot && ot->rna_ext.srna) { + rna_Operator_unregister(bmain, ot->rna_ext.srna); } } @@ -1734,11 +1734,11 @@ static StructRNA *rna_MacroOperator_register(Main *bmain, * for now just remove from dir(bpy.types) */ /* create a new operator type */ - dummyot.ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummyot.idname, &RNA_Operator); - RNA_def_struct_translation_context(dummyot.ext.srna, dummyot.translation_context); - dummyot.ext.data = data; - dummyot.ext.call = call; - dummyot.ext.free = free; + dummyot.rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummyot.idname, &RNA_Operator); + RNA_def_struct_translation_context(dummyot.rna_ext.srna, dummyot.translation_context); + dummyot.rna_ext.data = data; + dummyot.rna_ext.call = call; + dummyot.rna_ext.free = free; dummyot.pyop_poll = (have_function[0]) ? rna_operator_poll_cb : NULL; dummyot.ui = (have_function[3]) ? rna_operator_draw_cb : NULL; @@ -1748,20 +1748,20 @@ static StructRNA *rna_MacroOperator_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); - return dummyot.ext.srna; + return dummyot.rna_ext.srna; } # endif /* WITH_PYTHON */ static StructRNA *rna_Operator_refine(PointerRNA *opr) { wmOperator *op = (wmOperator *)opr->data; - return (op->type && op->type->ext.srna) ? op->type->ext.srna : &RNA_Operator; + return (op->type && op->type->rna_ext.srna) ? op->type->rna_ext.srna : &RNA_Operator; } static StructRNA *rna_MacroOperator_refine(PointerRNA *opr) { wmOperator *op = (wmOperator *)opr->data; - return (op->type && op->type->ext.srna) ? op->type->ext.srna : &RNA_Macro; + return (op->type && op->type->rna_ext.srna) ? op->type->rna_ext.srna : &RNA_Macro; } /* just to work around 'const char *' warning and to ensure this is a python op */ diff --git a/source/blender/makesrna/intern/rna_wm_gizmo.c b/source/blender/makesrna/intern/rna_wm_gizmo.c index 47d793382a7..826d4039c55 100644 --- a/source/blender/makesrna/intern/rna_wm_gizmo.c +++ b/source/blender/makesrna/intern/rna_wm_gizmo.c @@ -26,6 +26,7 @@ #include "DNA_view3d_types.h" #include "DNA_windowmanager_types.h" +#include "BLI_listbase.h" #include "BLI_utildefines.h" #include "BLT_translation.h" @@ -78,12 +79,12 @@ static void rna_gizmo_draw_cb(const struct bContext *C, struct wmGizmo *gz) PointerRNA gz_ptr; ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "draw"); */ func = &rna_Gizmo_draw_func; RNA_parameter_list_create(&list, &gz_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - gzgroup->type->ext.call((bContext *)C, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gz_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -94,13 +95,13 @@ static void rna_gizmo_draw_select_cb(const struct bContext *C, struct wmGizmo *g PointerRNA gz_ptr; ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "draw_select"); */ func = &rna_Gizmo_draw_select_func; RNA_parameter_list_create(&list, &gz_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "select_id", &select_id); - gzgroup->type->ext.call((bContext *)C, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gz_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -111,13 +112,13 @@ static int rna_gizmo_test_select_cb(struct bContext *C, struct wmGizmo *gz, cons PointerRNA gz_ptr; ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "test_select"); */ func = &rna_Gizmo_test_select_func; RNA_parameter_list_create(&list, &gz_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "location", location); - gzgroup->type->ext.call((bContext *)C, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gz_ptr, func, &list); void *ret; RNA_parameter_get_lookup(&list, "intersect_id", &ret); @@ -138,14 +139,14 @@ static int rna_gizmo_modal_cb(struct bContext *C, ParameterList list; FunctionRNA *func; const int tweak_flag_int = tweak_flag; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "modal"); */ func = &rna_Gizmo_modal_func; RNA_parameter_list_create(&list, &gz_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "event", &event); RNA_parameter_set_lookup(&list, "tweak", &tweak_flag_int); - gzgroup->type->ext.call((bContext *)C, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gz_ptr, func, &list); void *ret; RNA_parameter_get_lookup(&list, "result", &ret); @@ -162,11 +163,11 @@ static void rna_gizmo_setup_cb(struct wmGizmo *gz) PointerRNA gz_ptr; ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "setup"); */ func = &rna_Gizmo_setup_func; RNA_parameter_list_create(&list, &gz_ptr, func); - gzgroup->type->ext.call((bContext *)NULL, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)NULL, &gz_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -177,13 +178,13 @@ static int rna_gizmo_invoke_cb(struct bContext *C, struct wmGizmo *gz, const str PointerRNA gz_ptr; ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "invoke"); */ func = &rna_Gizmo_invoke_func; RNA_parameter_list_create(&list, &gz_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "event", &event); - gzgroup->type->ext.call((bContext *)C, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gz_ptr, func, &list); void *ret; RNA_parameter_get_lookup(&list, "result", &ret); @@ -200,7 +201,7 @@ static void rna_gizmo_exit_cb(struct bContext *C, struct wmGizmo *gz, bool cance PointerRNA gz_ptr; ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "exit"); */ func = &rna_Gizmo_exit_func; RNA_parameter_list_create(&list, &gz_ptr, func); @@ -209,7 +210,7 @@ static void rna_gizmo_exit_cb(struct bContext *C, struct wmGizmo *gz, bool cance int cancel_i = cancel; RNA_parameter_set_lookup(&list, "cancel", &cancel_i); } - gzgroup->type->ext.call((bContext *)C, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gz_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -220,11 +221,11 @@ static void rna_gizmo_select_refresh_cb(struct wmGizmo *gz) PointerRNA gz_ptr; ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gz->type->ext.srna, gz, &gz_ptr); + RNA_pointer_create(NULL, gz->type->rna_ext.srna, gz, &gz_ptr); /* RNA_struct_find_function(&gz_ptr, "select_refresh"); */ func = &rna_Gizmo_select_refresh_func; RNA_parameter_list_create(&list, &gz_ptr, func); - gzgroup->type->ext.call((bContext *)NULL, &gz_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)NULL, &gz_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -258,13 +259,12 @@ static wmGizmo *rna_GizmoProperties_find_operator(PointerRNA *ptr) /* We could try workaruond this lookup, but not trivial. */ for (bScreen *screen = G_MAIN->screens.first; screen; screen = screen->id.next) { IDProperty *properties = ptr->data; - for (ScrArea *sa = screen->areabase.first; sa; sa = sa->next) { - for (ARegion *region = sa->regionbase.first; region; region = region->next) { + LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) { + LISTBASE_FOREACH (ARegion *, region, &area->regionbase) { if (region->gizmo_map) { wmGizmoMap *gzmap = region->gizmo_map; - for (wmGizmoGroup *gzgroup = WM_gizmomap_group_list(gzmap)->first; gzgroup; - gzgroup = gzgroup->next) { - for (wmGizmo *gz = gzgroup->gizmos.first; gz; gz = gz->next) { + LISTBASE_FOREACH (wmGizmoGroup *, gzgroup, WM_gizmomap_group_list(gzmap)) { + LISTBASE_FOREACH (wmGizmo *, gz, &gzgroup->gizmos) { if (gz->properties == properties) { return gz; } @@ -475,8 +475,8 @@ static StructRNA *rna_Gizmo_register(Main *bmain, /* check if we have registered this gizmo type before, and remove it */ { const wmGizmoType *gzt = WM_gizmotype_find(dummygt.idname, true); - if (gzt && gzt->ext.srna) { - rna_Gizmo_unregister(bmain, gzt->ext.srna); + if (gzt && gzt->rna_ext.srna) { + rna_Gizmo_unregister(bmain, gzt->rna_ext.srna); } } if (!RNA_struct_available_or_report(reports, dummygt.idname)) { @@ -489,12 +489,12 @@ static StructRNA *rna_Gizmo_register(Main *bmain, } /* create a new gizmo type */ - dummygt.ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummygt.idname, &RNA_Gizmo); + dummygt.rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummygt.idname, &RNA_Gizmo); /* gizmo properties are registered separately */ - RNA_def_struct_flag(dummygt.ext.srna, STRUCT_NO_IDPROPERTIES); - dummygt.ext.data = data; - dummygt.ext.call = call; - dummygt.ext.free = free; + RNA_def_struct_flag(dummygt.rna_ext.srna, STRUCT_NO_IDPROPERTIES); + dummygt.rna_ext.data = data; + dummygt.rna_ext.call = call; + dummygt.rna_ext.free = free; { int i = 0; @@ -517,7 +517,7 @@ static StructRNA *rna_Gizmo_register(Main *bmain, /* update while blender is running */ WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); - return dummygt.ext.srna; + return dummygt.rna_ext.srna; } static void rna_Gizmo_unregister(struct Main *bmain, StructRNA *type) @@ -528,7 +528,7 @@ static void rna_Gizmo_unregister(struct Main *bmain, StructRNA *type) return; } - RNA_struct_free_extension(type, &gzt->ext); + RNA_struct_free_extension(type, &gzt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); @@ -547,7 +547,7 @@ static void **rna_Gizmo_instance(PointerRNA *ptr) static StructRNA *rna_Gizmo_refine(PointerRNA *mnp_ptr) { wmGizmo *gz = mnp_ptr->data; - return (gz->type && gz->type->ext.srna) ? gz->type->ext.srna : &RNA_Gizmo; + return (gz->type && gz->type->rna_ext.srna) ? gz->type->rna_ext.srna : &RNA_Gizmo; } /** \} */ @@ -665,12 +665,12 @@ static bool rna_gizmogroup_poll_cb(const bContext *C, wmGizmoGroupType *gzgt) void *ret; bool visible; - RNA_pointer_create(NULL, gzgt->ext.srna, NULL, &ptr); /* dummy */ + RNA_pointer_create(NULL, gzgt->rna_ext.srna, NULL, &ptr); /* dummy */ func = &rna_GizmoGroup_poll_func; /* RNA_struct_find_function(&ptr, "poll"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - gzgt->ext.call((bContext *)C, &ptr, func, &list); + gzgt->rna_ext.call((bContext *)C, &ptr, func, &list); RNA_parameter_get_lookup(&list, "visible", &ret); visible = *(bool *)ret; @@ -688,12 +688,12 @@ static void rna_gizmogroup_setup_cb(const bContext *C, wmGizmoGroup *gzgroup) ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gzgroup->type->ext.srna, gzgroup, &gzgroup_ptr); + RNA_pointer_create(NULL, gzgroup->type->rna_ext.srna, gzgroup, &gzgroup_ptr); func = &rna_GizmoGroup_setup_func; /* RNA_struct_find_function(&wgroupr, "setup"); */ RNA_parameter_list_create(&list, &gzgroup_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - gzgroup->type->ext.call((bContext *)C, &gzgroup_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gzgroup_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -707,13 +707,13 @@ static wmKeyMap *rna_gizmogroup_setup_keymap_cb(const wmGizmoGroupType *gzgt, wm ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gzgt->ext.srna, NULL, &ptr); /* dummy */ + RNA_pointer_create(NULL, gzgt->rna_ext.srna, NULL, &ptr); /* dummy */ func = &rna_GizmoGroup_setup_keymap_func; /* RNA_struct_find_function(&wgroupr, "setup_keymap"); */ RNA_parameter_list_create(&list, &ptr, func); RNA_parameter_set_lookup(&list, "keyconfig", &config); - gzgt->ext.call(NULL, &ptr, func, &list); + gzgt->rna_ext.call(NULL, &ptr, func, &list); RNA_parameter_get_lookup(&list, "keymap", &ret); wmKeyMap *keymap = *(wmKeyMap **)ret; @@ -731,12 +731,12 @@ static void rna_gizmogroup_refresh_cb(const bContext *C, wmGizmoGroup *gzgroup) ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gzgroup->type->ext.srna, gzgroup, &gzgroup_ptr); + RNA_pointer_create(NULL, gzgroup->type->rna_ext.srna, gzgroup, &gzgroup_ptr); func = &rna_GizmoGroup_refresh_func; /* RNA_struct_find_function(&wgroupr, "refresh"); */ RNA_parameter_list_create(&list, &gzgroup_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - gzgroup->type->ext.call((bContext *)C, &gzgroup_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gzgroup_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -749,13 +749,13 @@ static void rna_gizmogroup_draw_prepare_cb(const bContext *C, wmGizmoGroup *gzgr ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gzgroup->type->ext.srna, gzgroup, &gzgroup_ptr); + RNA_pointer_create(NULL, gzgroup->type->rna_ext.srna, gzgroup, &gzgroup_ptr); func = &rna_GizmoGroup_draw_prepare_func; /* RNA_struct_find_function(&wgroupr, "draw_prepare"); */ RNA_parameter_list_create(&list, &gzgroup_ptr, func); RNA_parameter_set_lookup(&list, "context", &C); - gzgroup->type->ext.call((bContext *)C, &gzgroup_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gzgroup_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -771,7 +771,7 @@ static void rna_gizmogroup_invoke_prepare_cb(const bContext *C, ParameterList list; FunctionRNA *func; - RNA_pointer_create(NULL, gzgroup->type->ext.srna, gzgroup, &gzgroup_ptr); + RNA_pointer_create(NULL, gzgroup->type->rna_ext.srna, gzgroup, &gzgroup_ptr); /* RNA_struct_find_function(&wgroupr, "invoke_prepare"); */ func = &rna_GizmoGroup_invoke_prepare_func; @@ -779,7 +779,7 @@ static void rna_gizmogroup_invoke_prepare_cb(const bContext *C, RNA_parameter_set_lookup(&list, "context", &C); RNA_parameter_set_lookup(&list, "gizmo", &gz); RNA_parameter_set_lookup(&list, "event", &event); - gzgroup->type->ext.call((bContext *)C, &gzgroup_ptr, func, &list); + gzgroup->type->rna_ext.call((bContext *)C, &gzgroup_ptr, func, &list); RNA_parameter_list_free(&list); } @@ -846,8 +846,8 @@ static StructRNA *rna_GizmoGroup_register(Main *bmain, /* check if we have registered this gizmogroup type before, and remove it */ { wmGizmoGroupType *gzgt = WM_gizmogrouptype_find(dummywgt.idname, true); - if (gzgt && gzgt->ext.srna) { - rna_GizmoGroup_unregister(bmain, gzgt->ext.srna); + if (gzgt && gzgt->rna_ext.srna) { + rna_GizmoGroup_unregister(bmain, gzgt->rna_ext.srna); } } if (!RNA_struct_available_or_report(reports, dummywgt.idname)) { @@ -869,14 +869,14 @@ static StructRNA *rna_GizmoGroup_register(Main *bmain, } /* create a new gizmogroup type */ - dummywgt.ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummywgt.idname, &RNA_GizmoGroup); + dummywgt.rna_ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, dummywgt.idname, &RNA_GizmoGroup); /* Gizmo group properties are registered separately. */ - RNA_def_struct_flag(dummywgt.ext.srna, STRUCT_NO_IDPROPERTIES); + RNA_def_struct_flag(dummywgt.rna_ext.srna, STRUCT_NO_IDPROPERTIES); - dummywgt.ext.data = data; - dummywgt.ext.call = call; - dummywgt.ext.free = free; + dummywgt.rna_ext.data = data; + dummywgt.rna_ext.call = call; + dummywgt.rna_ext.free = free; /* We used to register widget group types like this, now we do it similar to * operator types. Thus we should be able to do the same as operator types now. */ @@ -904,7 +904,7 @@ static StructRNA *rna_GizmoGroup_register(Main *bmain, WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); } - return dummywgt.ext.srna; + return dummywgt.rna_ext.srna; } static void rna_GizmoGroup_unregister(struct Main *bmain, StructRNA *type) @@ -915,7 +915,7 @@ static void rna_GizmoGroup_unregister(struct Main *bmain, StructRNA *type) return; } - RNA_struct_free_extension(type, &gzgt->ext); + RNA_struct_free_extension(type, &gzgt->rna_ext); RNA_struct_free(&BLENDER_RNA, type); WM_main_add_notifier(NC_SCREEN | NA_EDITED, NULL); @@ -934,7 +934,8 @@ static void **rna_GizmoGroup_instance(PointerRNA *ptr) static StructRNA *rna_GizmoGroup_refine(PointerRNA *gzgroup_ptr) { wmGizmoGroup *gzgroup = gzgroup_ptr->data; - return (gzgroup->type && gzgroup->type->ext.srna) ? gzgroup->type->ext.srna : &RNA_GizmoGroup; + return (gzgroup->type && gzgroup->type->rna_ext.srna) ? gzgroup->type->rna_ext.srna : + &RNA_GizmoGroup; } static void rna_GizmoGroup_gizmos_begin(CollectionPropertyIterator *iter, PointerRNA *gzgroup_ptr) diff --git a/source/blender/makesrna/intern/rna_xr.c b/source/blender/makesrna/intern/rna_xr.c index 76cbc99b397..b08e48a4b17 100644 --- a/source/blender/makesrna/intern/rna_xr.c +++ b/source/blender/makesrna/intern/rna_xr.c @@ -38,7 +38,7 @@ static bool rna_XrSessionState_is_running(bContext *C) { # ifdef WITH_XR_OPENXR const wmWindowManager *wm = CTX_wm_manager(C); - return WM_xr_session_is_ready(&wm->xr); + return WM_xr_session_exists(&wm->xr); # else UNUSED_VARS(C); return false; |