diff options
author | Joseph Eagar <joeedh@gmail.com> | 2022-03-29 08:54:24 +0300 |
---|---|---|
committer | Joseph Eagar <joeedh@gmail.com> | 2022-03-29 08:54:24 +0300 |
commit | 176b331c43c5378b0a346b7c96b0934c9c5bf19f (patch) | |
tree | 546efd965d57bfa16945c2ef1ab664b2a3667471 /source/blender/makesrna/intern | |
parent | 2f3ace40240797100161a659a12d995e1480b91b (diff) | |
parent | 540bfbbb27966b4b8affeaa273a70beac9373b23 (diff) |
Merge branch 'master' into temp-sculpt-colors
Diffstat (limited to 'source/blender/makesrna/intern')
-rw-r--r-- | source/blender/makesrna/intern/CMakeLists.txt | 4 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_ID.c | 6 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_brush.c | 5 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_gpencil_modifier.c | 166 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_image_api.c | 8 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_modifier.c | 28 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_particle.c | 8 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_scene.c | 12 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_shader_fx.c | 1 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_space.c | 7 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_text.c | 8 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_userdef.c | 10 |
12 files changed, 218 insertions, 45 deletions
diff --git a/source/blender/makesrna/intern/CMakeLists.txt b/source/blender/makesrna/intern/CMakeLists.txt index 4e3a4aae727..9980545c19d 100644 --- a/source/blender/makesrna/intern/CMakeLists.txt +++ b/source/blender/makesrna/intern/CMakeLists.txt @@ -236,6 +236,10 @@ if(WITH_IMAGE_HDR) add_definitions(-DWITH_HDR) endif() +if(WITH_IMAGE_WEBP) + add_definitions(-DWITH_WEBP) +endif() + if(WITH_AUDASPACE) add_definitions(-DWITH_AUDASPACE) diff --git a/source/blender/makesrna/intern/rna_ID.c b/source/blender/makesrna/intern/rna_ID.c index a9725da7841..82d90a5c54b 100644 --- a/source/blender/makesrna/intern/rna_ID.c +++ b/source/blender/makesrna/intern/rna_ID.c @@ -137,7 +137,11 @@ const struct IDFilterEnumPropertyItem rna_enum_id_type_filter_items[] = { ICON_OUTLINER_COLLECTION, "Collections", "Show Collection data-blocks"}, - {FILTER_ID_CV, "filter_hair", ICON_CURVES_DATA, "Hairs", "Show/hide Hair data-blocks"}, + {FILTER_ID_CV, + "filter_curves", + ICON_CURVES_DATA, + "Hair Curves", + "Show/hide Curves data-blocks"}, {FILTER_ID_IM, "filter_image", ICON_IMAGE_DATA, "Images", "Show Image data-blocks"}, {FILTER_ID_LA, "filter_light", ICON_LIGHT_DATA, "Lights", "Show Light data-blocks"}, {FILTER_ID_LP, diff --git a/source/blender/makesrna/intern/rna_brush.c b/source/blender/makesrna/intern/rna_brush.c index c86a852b0ea..b2b6bdbcffc 100644 --- a/source/blender/makesrna/intern/rna_brush.c +++ b/source/blender/makesrna/intern/rna_brush.c @@ -1355,7 +1355,8 @@ static void rna_def_gpencil_options(BlenderRNA *brna) /* Smoothing factor for new strokes */ prop = RNA_def_property(srna, "pen_smooth_factor", PROP_FLOAT, PROP_NONE); RNA_def_property_float_sdna(prop, NULL, "draw_smoothfac"); - RNA_def_property_range(prop, 0.0, 2.0f); + RNA_def_property_range(prop, 0.0, 2.0); + RNA_def_property_ui_range(prop, 0.0, 1.0, 10, 3); RNA_def_property_ui_text( prop, "Smooth", @@ -1366,7 +1367,7 @@ static void rna_def_gpencil_options(BlenderRNA *brna) /* Iterations of the Smoothing factor */ prop = RNA_def_property(srna, "pen_smooth_steps", PROP_INT, PROP_NONE); RNA_def_property_int_sdna(prop, NULL, "draw_smoothlvl"); - RNA_def_property_range(prop, 1, 3); + RNA_def_property_range(prop, 0, 100); RNA_def_property_ui_text(prop, "Iterations", "Number of times to smooth newly created strokes"); RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); RNA_def_property_update(prop, NC_GPENCIL | ND_DATA, NULL); diff --git a/source/blender/makesrna/intern/rna_gpencil_modifier.c b/source/blender/makesrna/intern/rna_gpencil_modifier.c index 33c0b29f6d0..81103f4fe49 100644 --- a/source/blender/makesrna/intern/rna_gpencil_modifier.c +++ b/source/blender/makesrna/intern/rna_gpencil_modifier.c @@ -79,6 +79,11 @@ const EnumPropertyItem rna_enum_object_greasepencil_modifier_type_items[] = { ICON_MOD_DASH, "Dot Dash", "Generate dot-dash styled strokes"}, + {eGpencilModifierType_Envelope, + "GP_ENVELOPE", + ICON_MOD_SKIN, + "Envelope", + "Create an envelope shape"}, {eGpencilModifierType_Length, "GP_LENGTH", ICON_MOD_LENGTH, @@ -208,6 +213,25 @@ static const EnumPropertyItem gpencil_length_mode_items[] = { {GP_LENGTH_ABSOLUTE, "ABSOLUTE", 0, "Absolute", "Length in geometry space"}, {0, NULL, 0, NULL, NULL}, }; + +static const EnumPropertyItem gpencil_envelope_mode_items[] = { + {GP_ENVELOPE_DEFORM, + "DEFORM", + 0, + "Deform", + "Deform the stroke to best match the envelope shape"}, + {GP_ENVELOPE_SEGMENTS, + "SEGMENTS", + 0, + "Segments", + "Add segments to create the envelope. Keep the original stroke"}, + {GP_ENVELOPE_FILLS, + "FILLS", + 0, + "Fills", + "Add fill segments to create the envelope. Don't keep the original stroke"}, + {0, NULL, 0, NULL, NULL}, +}; #endif #ifdef RNA_RUNTIME @@ -279,6 +303,8 @@ static StructRNA *rna_GpencilModifier_refine(struct PointerRNA *ptr) return &RNA_LineartGpencilModifier; case eGpencilModifierType_Dash: return &RNA_DashGpencilModifierData; + case eGpencilModifierType_Envelope: + return &RNA_EnvelopeGpencilModifier; /* Default */ case eGpencilModifierType_None: case NUM_GREASEPENCIL_MODIFIER_TYPES: @@ -355,6 +381,7 @@ RNA_GP_MOD_VGROUP_NAME_SET(WeightAngle, target_vgname); RNA_GP_MOD_VGROUP_NAME_SET(WeightAngle, vgname); RNA_GP_MOD_VGROUP_NAME_SET(Lineart, vgname); RNA_GP_MOD_VGROUP_NAME_SET(Shrinkwrap, vgname); +RNA_GP_MOD_VGROUP_NAME_SET(Envelope, vgname); # undef RNA_GP_MOD_VGROUP_NAME_SET @@ -775,6 +802,16 @@ static void rna_ShrinkwrapGpencilModifier_face_cull_set(struct PointerRNA *ptr, swm->shrink_opts = (swm->shrink_opts & ~MOD_SHRINKWRAP_CULL_TARGET_MASK) | value; } +static void rna_EnvelopeGpencilModifier_material_set(PointerRNA *ptr, + PointerRNA value, + struct ReportList *reports) +{ + EnvelopeGpencilModifierData *emd = (EnvelopeGpencilModifierData *)ptr->data; + Material **ma_target = &emd->material; + + rna_GpencilModifier_material_set(ptr, value, ma_target, reports); +} + #else static void rna_def_modifier_gpencilnoise(BlenderRNA *brna) @@ -989,11 +1026,16 @@ static void rna_def_modifier_gpencilsmooth(BlenderRNA *brna) prop = RNA_def_property(srna, "step", PROP_INT, PROP_NONE); RNA_def_property_int_sdna(prop, NULL, "step"); - RNA_def_property_range(prop, 1, 10); + RNA_def_property_range(prop, 1, 1000); RNA_def_property_ui_text( prop, "Step", "Number of times to apply smooth (high numbers can reduce fps)"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + prop = RNA_def_property(srna, "use_keep_shape", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_SMOOTH_KEEP_SHAPE); + RNA_def_property_ui_text(prop, "Keep Shape", "Smooth the details, but keep the overall shape"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + prop = RNA_def_property(srna, "invert_layers", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_SMOOTH_INVERT_LAYER); RNA_def_property_ui_text(prop, "Inverse Layers", "Inverse filter"); @@ -3676,7 +3718,7 @@ static void rna_def_modifier_gpencildash(BlenderRNA *brna) RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); prop = RNA_def_property(srna, "gap", PROP_INT, PROP_NONE); - RNA_def_property_range(prop, 1, INT16_MAX); + RNA_def_property_range(prop, 0, INT16_MAX); RNA_def_property_ui_text(prop, "Gap", "The number of points skipped after this segment"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); @@ -3701,6 +3743,11 @@ static void rna_def_modifier_gpencildash(BlenderRNA *brna) "Use this index on generated segment. -1 means using the existing material"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + prop = RNA_def_property(srna, "use_cyclic", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_DASH_USE_CYCLIC); + RNA_def_property_ui_text(prop, "Use Cyclic", "Enable cyclic on individual stroke dashes"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + srna = RNA_def_struct(brna, "DashGpencilModifierData", "GpencilModifier"); RNA_def_struct_ui_text(srna, "Dash Modifier", "Create dot-dash effect for strokes"); RNA_def_struct_sdna(srna, "DashGpencilModifierData"); @@ -3752,17 +3799,17 @@ static void rna_def_modifier_gpencildash(BlenderRNA *brna) RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); prop = RNA_def_property(srna, "invert_layers", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_LENGTH_INVERT_LAYER); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_DASH_INVERT_LAYER); RNA_def_property_ui_text(prop, "Inverse Layers", "Inverse filter"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); prop = RNA_def_property(srna, "invert_materials", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_LENGTH_INVERT_MATERIAL); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_DASH_INVERT_MATERIAL); RNA_def_property_ui_text(prop, "Inverse Materials", "Inverse filter"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); prop = RNA_def_property(srna, "invert_material_pass", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_LENGTH_INVERT_PASS); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_DASH_INVERT_PASS); RNA_def_property_ui_text(prop, "Inverse Pass", "Inverse filter"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); @@ -3773,7 +3820,7 @@ static void rna_def_modifier_gpencildash(BlenderRNA *brna) RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); prop = RNA_def_property(srna, "invert_layer_pass", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_LENGTH_INVERT_LAYERPASS); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_DASH_INVERT_LAYERPASS); RNA_def_property_ui_text(prop, "Inverse Pass", "Inverse filter"); RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); @@ -3968,6 +4015,112 @@ static void rna_def_modifier_gpencilshrinkwrap(BlenderRNA *brna) RNA_define_lib_overridable(false); } +static void rna_def_modifier_gpencilenvelope(BlenderRNA *brna) +{ + StructRNA *srna; + PropertyRNA *prop; + + srna = RNA_def_struct(brna, "EnvelopeGpencilModifier", "GpencilModifier"); + RNA_def_struct_ui_text(srna, "Envelope Modifier", "Envelope stroke effect modifier"); + RNA_def_struct_sdna(srna, "EnvelopeGpencilModifierData"); + RNA_def_struct_ui_icon(srna, ICON_MOD_SKIN); + + RNA_define_lib_overridable(true); + + prop = RNA_def_property(srna, "layer", PROP_STRING, PROP_NONE); + RNA_def_property_string_sdna(prop, NULL, "layername"); + RNA_def_property_ui_text(prop, "Layer", "Layer name"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE); + RNA_def_property_flag(prop, PROP_EDITABLE); + RNA_def_property_pointer_funcs(prop, + NULL, + "rna_EnvelopeGpencilModifier_material_set", + NULL, + "rna_GpencilModifier_material_poll"); + RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE); + RNA_def_property_string_sdna(prop, NULL, "vgname"); + RNA_def_property_ui_text(prop, "Vertex Group", "Vertex group name for modulating the deform"); + RNA_def_property_string_funcs(prop, NULL, NULL, "rna_EnvelopeGpencilModifier_vgname_set"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "pass_index", PROP_INT, PROP_NONE); + RNA_def_property_int_sdna(prop, NULL, "pass_index"); + RNA_def_property_range(prop, 0, 100); + RNA_def_property_ui_text(prop, "Pass", "Pass index"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "spread", PROP_INT, PROP_NONE); + RNA_def_property_int_sdna(prop, NULL, "spread"); + RNA_def_property_range(prop, 1, INT_MAX); + RNA_def_property_ui_text( + prop, "Spread Length", "The number of points to skip to create straight segments"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "mode", PROP_ENUM, PROP_NONE); + RNA_def_property_enum_sdna(prop, NULL, "mode"); + RNA_def_property_enum_items(prop, gpencil_envelope_mode_items); + RNA_def_property_ui_text(prop, "Mode", "Algorithm to use for generating the envelope"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "mat_nr", PROP_INT, PROP_NONE); + RNA_def_property_int_sdna(prop, NULL, "mat_nr"); + RNA_def_property_range(prop, -1, INT16_MAX); + RNA_def_property_ui_text(prop, "Material Index", "The material to use for the new strokes"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "thickness", PROP_FLOAT, PROP_FACTOR); + RNA_def_property_float_sdna(prop, NULL, "thickness"); + RNA_def_property_range(prop, 0, FLT_MAX); + RNA_def_property_ui_range(prop, 0, 1, 10, 3); + RNA_def_property_ui_text(prop, "Thickness", "Multiplier for the thickness of the new strokes"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "strength", PROP_FLOAT, PROP_FACTOR); + RNA_def_property_float_sdna(prop, NULL, "strength"); + RNA_def_property_range(prop, 0, FLT_MAX); + RNA_def_property_ui_range(prop, 0, 1, 10, 3); + RNA_def_property_ui_text(prop, "Strength", "Multiplier for the strength of the new strokes"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "invert_layers", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_ENVELOPE_INVERT_LAYER); + RNA_def_property_ui_text(prop, "Inverse Layers", "Inverse filter"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "invert_materials", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_ENVELOPE_INVERT_MATERIAL); + RNA_def_property_ui_text(prop, "Inverse Materials", "Inverse filter"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "invert_material_pass", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_ENVELOPE_INVERT_PASS); + RNA_def_property_ui_text(prop, "Inverse Pass", "Inverse filter"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "invert_vertex", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_ENVELOPE_INVERT_VGROUP); + RNA_def_property_ui_text(prop, "Inverse VertexGroup", "Inverse filter"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "layer_pass", PROP_INT, PROP_NONE); + RNA_def_property_int_sdna(prop, NULL, "layer_pass"); + RNA_def_property_range(prop, 0, 100); + RNA_def_property_ui_text(prop, "Pass", "Layer pass index"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + prop = RNA_def_property(srna, "invert_layer_pass", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_ENVELOPE_INVERT_LAYERPASS); + RNA_def_property_ui_text(prop, "Inverse Pass", "Inverse filter"); + RNA_def_property_update(prop, 0, "rna_GpencilModifier_update"); + + RNA_define_lib_overridable(false); +} + void RNA_def_greasepencil_modifier(BlenderRNA *brna) { StructRNA *srna; @@ -4058,6 +4211,7 @@ void RNA_def_greasepencil_modifier(BlenderRNA *brna) rna_def_modifier_gpencillength(brna); rna_def_modifier_gpencildash(brna); rna_def_modifier_gpencilshrinkwrap(brna); + rna_def_modifier_gpencilenvelope(brna); } #endif diff --git a/source/blender/makesrna/intern/rna_image_api.c b/source/blender/makesrna/intern/rna_image_api.c index 55d365f9827..0b188b2b3db 100644 --- a/source/blender/makesrna/intern/rna_image_api.c +++ b/source/blender/makesrna/intern/rna_image_api.c @@ -102,14 +102,14 @@ static void rna_Image_save(Image *image, Main *bmain, bContext *C, ReportList *r ImBuf *ibuf = BKE_image_acquire_ibuf(image, NULL, &lock); if (ibuf) { - char filename[FILE_MAX]; - BLI_strncpy(filename, image->filepath, sizeof(filename)); - BLI_path_abs(filename, ID_BLEND_PATH(bmain, &image->id)); + char filepath[FILE_MAX]; + BLI_strncpy(filepath, image->filepath, sizeof(filepath)); + BLI_path_abs(filepath, ID_BLEND_PATH(bmain, &image->id)); /* NOTE: we purposefully ignore packed files here, * developers need to explicitly write them via 'packed_files' */ - if (IMB_saveiff(ibuf, filename, ibuf->flags)) { + if (IMB_saveiff(ibuf, filepath, ibuf->flags)) { image->type = IMA_TYPE_IMAGE; if (image->source == IMA_SRC_GENERATED) { diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c index 0bea5172d89..bd5960ce7d8 100644 --- a/source/blender/makesrna/intern/rna_modifier.c +++ b/source/blender/makesrna/intern/rna_modifier.c @@ -688,7 +688,7 @@ static void rna_UVProject_projectors_begin(CollectionPropertyIterator *iter, Poi { UVProjectModifierData *uvp = (UVProjectModifierData *)ptr->data; rna_iterator_array_begin( - iter, (void *)uvp->projectors, sizeof(Object *), uvp->num_projectors, 0, NULL); + iter, (void *)uvp->projectors, sizeof(Object *), uvp->projectors_num, 0, NULL); } static StructRNA *rna_Modifier_refine(struct PointerRNA *ptr) @@ -950,15 +950,15 @@ static int rna_HookModifier_vertex_indices_get_length(PointerRNA *ptr, int length[RNA_MAX_ARRAY_DIMENSION]) { HookModifierData *hmd = ptr->data; - int totindex = hmd->indexar ? hmd->totindex : 0; - return (length[0] = totindex); + int indexar_num = hmd->indexar ? hmd->indexar_num : 0; + return (length[0] = indexar_num); } static void rna_HookModifier_vertex_indices_get(PointerRNA *ptr, int *values) { HookModifierData *hmd = ptr->data; if (hmd->indexar != NULL) { - memcpy(values, hmd->indexar, sizeof(int) * hmd->totindex); + memcpy(values, hmd->indexar, sizeof(int) * hmd->indexar_num); } } @@ -969,7 +969,7 @@ static void rna_HookModifier_vertex_indices_set(HookModifierData *hmd, { if (indices_len == 0) { MEM_SAFE_FREE(hmd->indexar); - hmd->totindex = 0; + hmd->indexar_num = 0; } else { /* Reject negative indices. */ @@ -999,7 +999,7 @@ static void rna_HookModifier_vertex_indices_set(HookModifierData *hmd, /* Success - save the new array. */ MEM_SAFE_FREE(hmd->indexar); hmd->indexar = buffer; - hmd->totindex = indices_len; + hmd->indexar_num = indices_len; } } @@ -1075,7 +1075,7 @@ static void rna_MultiresModifier_filepath_get(PointerRNA *ptr, char *value) Object *ob = (Object *)ptr->owner_id; CustomDataExternal *external = ((Mesh *)ob->data)->ldata.external; - BLI_strncpy(value, (external) ? external->filename : "", sizeof(external->filename)); + BLI_strncpy(value, (external) ? external->filepath : "", sizeof(external->filepath)); } static void rna_MultiresModifier_filepath_set(PointerRNA *ptr, const char *value) @@ -1083,8 +1083,8 @@ static void rna_MultiresModifier_filepath_set(PointerRNA *ptr, const char *value Object *ob = (Object *)ptr->owner_id; CustomDataExternal *external = ((Mesh *)ob->data)->ldata.external; - if (external && !STREQ(external->filename, value)) { - BLI_strncpy(external->filename, value, sizeof(external->filename)); + if (external && !STREQ(external->filepath, value)) { + BLI_strncpy(external->filepath, value, sizeof(external->filepath)); multires_force_external_reload(ob); } } @@ -1094,7 +1094,7 @@ static int rna_MultiresModifier_filepath_length(PointerRNA *ptr) Object *ob = (Object *)ptr->owner_id; CustomDataExternal *external = ((Mesh *)ob->data)->ldata.external; - return strlen((external) ? external->filename : ""); + return strlen((external) ? external->filepath : ""); } static int rna_ShrinkwrapModifier_face_cull_get(PointerRNA *ptr) @@ -1149,8 +1149,8 @@ static void rna_UVProjectModifier_num_projectors_set(PointerRNA *ptr, int value) UVProjectModifierData *md = (UVProjectModifierData *)ptr->data; int a; - md->num_projectors = CLAMPIS(value, 1, MOD_UVPROJECT_MAXPROJECTORS); - for (a = md->num_projectors; a < MOD_UVPROJECT_MAXPROJECTORS; a++) { + md->projectors_num = CLAMPIS(value, 1, MOD_UVPROJECT_MAXPROJECTORS); + for (a = md->projectors_num; a < MOD_UVPROJECT_MAXPROJECTORS; a++) { md->projectors[a] = NULL; } } @@ -3133,7 +3133,7 @@ static void rna_def_modifier_uvproject(BlenderRNA *brna) RNA_def_property_update(prop, 0, "rna_Modifier_update"); prop = RNA_def_property(srna, "projector_count", PROP_INT, PROP_NONE); - RNA_def_property_int_sdna(prop, NULL, "num_projectors"); + RNA_def_property_int_sdna(prop, NULL, "projectors_num"); RNA_def_property_ui_text(prop, "Number of Projectors", "Number of projectors to use"); RNA_def_property_int_funcs(prop, NULL, "rna_UVProjectModifier_num_projectors_set", NULL); RNA_def_property_range(prop, 1, MOD_UVPROJECT_MAXPROJECTORS); @@ -4110,7 +4110,7 @@ static void rna_def_modifier_bevel(BlenderRNA *brna) prop = RNA_def_property(srna, "segments", PROP_INT, PROP_NONE); RNA_def_property_int_sdna(prop, NULL, "res"); - RNA_def_property_range(prop, 1, 100); + RNA_def_property_range(prop, 1, 1000); RNA_def_property_ui_text(prop, "Segments", "Number of segments for round edges/verts"); RNA_def_property_update(prop, 0, "rna_BevelModifier_update_segments"); diff --git a/source/blender/makesrna/intern/rna_particle.c b/source/blender/makesrna/intern/rna_particle.c index 2770255802d..03f800d14d1 100644 --- a/source/blender/makesrna/intern/rna_particle.c +++ b/source/blender/makesrna/intern/rna_particle.c @@ -3139,15 +3139,19 @@ static void rna_def_particle_settings(BlenderRNA *brna) RNA_def_property_update(prop, 0, "rna_Particle_redo"); /* children */ + + /* NOTE(@campbellbarton): name is not following conventions: `nbr`. + * Could be changed next major version. */ prop = RNA_def_property(srna, "child_nbr", PROP_INT, PROP_NONE); - RNA_def_property_int_sdna(prop, NULL, "child_nbr"); /* Optional if prop names are the same. */ + RNA_def_property_int_sdna( + prop, NULL, "child_percent"); /* Optional if prop names are the same. */ RNA_def_property_range(prop, 0, 100000); RNA_def_property_ui_range(prop, 0, 1000, 1, -1); RNA_def_property_ui_text(prop, "Children Per Parent", "Number of children per parent"); RNA_def_property_update(prop, 0, "rna_Particle_redo_child"); prop = RNA_def_property(srna, "rendered_child_count", PROP_INT, PROP_NONE); - RNA_def_property_int_sdna(prop, NULL, "ren_child_nbr"); + RNA_def_property_int_sdna(prop, NULL, "child_render_percent"); RNA_def_property_range(prop, 0, 100000); RNA_def_property_ui_range(prop, 0, 10000, 1, -1); RNA_def_property_ui_text( diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c index 9400e34d193..abaee9ddfc3 100644 --- a/source/blender/makesrna/intern/rna_scene.c +++ b/source/blender/makesrna/intern/rna_scene.c @@ -330,6 +330,13 @@ const EnumPropertyItem rna_enum_curve_fit_method_items[] = { # define R_IMF_ENUM_TIFF #endif +#ifdef WITH_WEBP +# define R_IMF_ENUM_WEBP \ + {R_IMF_IMTYPE_WEBP, "WEBP", ICON_FILE_IMAGE, "WebP", "Output image in WebP format"}, +#else +# define R_IMF_ENUM_WEBP +#endif + #define IMAGE_TYPE_ITEMS_IMAGE_ONLY \ R_IMF_ENUM_BMP \ /* DDS save not supported yet R_IMF_ENUM_DDS */ \ @@ -340,7 +347,7 @@ const EnumPropertyItem rna_enum_curve_fit_method_items[] = { R_IMF_ENUM_TAGA \ R_IMF_ENUM_TAGA_RAW{0, "", 0, " ", NULL}, \ R_IMF_ENUM_CINEON R_IMF_ENUM_DPX R_IMF_ENUM_EXR_MULTILAYER R_IMF_ENUM_EXR R_IMF_ENUM_HDR \ - R_IMF_ENUM_TIFF + R_IMF_ENUM_TIFF R_IMF_ENUM_WEBP #ifdef RNA_RUNTIME static const EnumPropertyItem image_only_type_items[] = { @@ -6213,7 +6220,8 @@ static void rna_def_scene_render_data(BlenderRNA *brna) prop = RNA_def_property(srna, "hair_subdiv", PROP_INT, PROP_NONE); RNA_def_property_range(prop, 0, 3); - RNA_def_property_ui_text(prop, "Additional Subdivision", "Additional subdivision along the hair"); + RNA_def_property_ui_text( + prop, "Additional Subdivision", "Additional subdivision along the hair"); RNA_def_property_update(prop, NC_SCENE | ND_RENDER_OPTIONS, "rna_Scene_glsl_update"); /* Performance */ diff --git a/source/blender/makesrna/intern/rna_shader_fx.c b/source/blender/makesrna/intern/rna_shader_fx.c index ae7772fcb62..cefa445740d 100644 --- a/source/blender/makesrna/intern/rna_shader_fx.c +++ b/source/blender/makesrna/intern/rna_shader_fx.c @@ -524,7 +524,6 @@ static void rna_def_shader_fx_glow(BlenderRNA *brna) RNA_def_property_float_sdna(prop, NULL, "glow_color[3]"); RNA_def_property_range(prop, 0.0, 1.0f); RNA_def_property_ui_text(prop, "Opacity", "Effect Opacity"); - RNA_def_property_update(prop, NC_GPENCIL | ND_DATA, "rna_GPencil_update"); RNA_def_property_update(prop, NC_OBJECT | ND_SHADERFX, "rna_ShaderFx_update"); prop = RNA_def_property(srna, "select_color", PROP_FLOAT, PROP_COLOR); diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c index 2344aa42838..3839b3ba6a4 100644 --- a/source/blender/makesrna/intern/rna_space.c +++ b/source/blender/makesrna/intern/rna_space.c @@ -3773,13 +3773,6 @@ static void rna_def_space_outliner(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Filter by Type", "Data-block type to show"); RNA_def_property_translation_context(prop, BLT_I18NCONTEXT_ID_ID); - prop = RNA_def_property(srna, "use_filter_lib_override", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_negative_sdna(prop, NULL, "filter", SO_FILTER_NO_LIB_OVERRIDE); - RNA_def_property_ui_text(prop, - "Show Library Overrides", - "For libraries with overrides created, show the overridden values"); - RNA_def_property_update(prop, NC_SPACE | ND_SPACE_OUTLINER, NULL); - prop = RNA_def_property(srna, "use_filter_lib_override_system", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "filter", SO_FILTER_SHOW_SYSTEM_OVERRIDES); RNA_def_property_ui_text( diff --git a/source/blender/makesrna/intern/rna_text.c b/source/blender/makesrna/intern/rna_text.c index 3d2df5b7411..e9c67d71ceb 100644 --- a/source/blender/makesrna/intern/rna_text.c +++ b/source/blender/makesrna/intern/rna_text.c @@ -25,7 +25,7 @@ #ifdef RNA_RUNTIME -static void rna_Text_filename_get(PointerRNA *ptr, char *value) +static void rna_Text_filepath_get(PointerRNA *ptr, char *value) { Text *text = (Text *)ptr->data; @@ -37,13 +37,13 @@ static void rna_Text_filename_get(PointerRNA *ptr, char *value) } } -static int rna_Text_filename_length(PointerRNA *ptr) +static int rna_Text_filepath_length(PointerRNA *ptr) { Text *text = (Text *)ptr->data; return (text->filepath) ? strlen(text->filepath) : 0; } -static void rna_Text_filename_set(PointerRNA *ptr, const char *value) +static void rna_Text_filepath_set(PointerRNA *ptr, const char *value) { Text *text = (Text *)ptr->data; @@ -204,7 +204,7 @@ static void rna_def_text(BlenderRNA *brna) prop = RNA_def_property(srna, "filepath", PROP_STRING, PROP_NONE); RNA_def_property_string_funcs( - prop, "rna_Text_filename_get", "rna_Text_filename_length", "rna_Text_filename_set"); + prop, "rna_Text_filepath_get", "rna_Text_filepath_length", "rna_Text_filepath_set"); RNA_def_property_ui_text(prop, "File Path", "Filename of the text file"); prop = RNA_def_property(srna, "is_dirty", PROP_BOOLEAN, PROP_NONE); diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c index a0d53701e26..06a5df5ad41 100644 --- a/source/blender/makesrna/intern/rna_userdef.c +++ b/source/blender/makesrna/intern/rna_userdef.c @@ -5278,10 +5278,10 @@ static void rna_def_userdef_edit(BlenderRNA *brna) RNA_def_property_ui_text( prop, "Duplicate GPencil", "Causes grease pencil data to be duplicated with the object"); - prop = RNA_def_property(srna, "use_duplicate_hair", PROP_BOOLEAN, PROP_NONE); + prop = RNA_def_property(srna, "use_duplicate_curves", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_CURVES); RNA_def_property_ui_text( - prop, "Duplicate Hair", "Causes hair data to be duplicated with the object"); + prop, "Duplicate Curves", "Causes curves data to be duplicated with the object"); prop = RNA_def_property(srna, "use_duplicate_pointcloud", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "dupflag", USER_DUP_POINTCLOUD); @@ -6435,6 +6435,12 @@ static void rna_def_userdef_experimental(BlenderRNA *brna) "Named Attribute Nodes", "Enable named attribute nodes in the geometry nodes add menu"); + prop = RNA_def_property(srna, "use_select_nearest_on_first_click", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "use_select_nearest_on_first_click", 1); + RNA_def_property_ui_text(prop, + "Object Select Nearest on First Click", + "When enabled, always select the front-most object on the first click"); + prop = RNA_def_property(srna, "enable_eevee_next", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "enable_eevee_next", 1); RNA_def_property_ui_text(prop, "EEVEE Next", "Enable the new EEVEE codebase, requires restart"); |