GPv3: Disable mask property for default layers of primitives
Caused by 85ce2a34e31f764cab1eaf195a3f80f30b77cf06 Default layers added with the primitive gpv3 object has the `use_mask` property enabled. To fix this, set `GP_LAYER_TREE_NODE_HIDE_MASKS` inside `add_layer/groups()` function instead of the operator's code. Falk found this in #121734 Pull Request: https://projects.blender.org/blender/blender/pulls/121780
This commit is contained in:
parent
b8febd87e1
commit
0fa207d5ef
@ -2720,6 +2720,8 @@ blender::bke::greasepencil::Layer &GreasePencil::add_layer(const blender::String
|
||||
const int numLayers = layers().size();
|
||||
CustomData_realloc(&layers_data, numLayers, numLayers + 1);
|
||||
bke::greasepencil::Layer *new_layer = MEM_new<bke::greasepencil::Layer>(__func__, unique_name);
|
||||
/* Hide masks by default. */
|
||||
new_layer->base.flag |= GP_LAYER_TREE_NODE_HIDE_MASKS;
|
||||
return root_group().add_node(new_layer->as_node()).as_layer();
|
||||
}
|
||||
|
||||
@ -2728,6 +2730,8 @@ blender::bke::greasepencil::Layer &GreasePencil::add_layer(
|
||||
{
|
||||
using namespace blender;
|
||||
blender::bke::greasepencil::Layer &new_layer = this->add_layer(name);
|
||||
/* Hide masks by default. */
|
||||
new_layer.base.flag |= GP_LAYER_TREE_NODE_HIDE_MASKS;
|
||||
move_node_into(new_layer.as_node(), parent_group);
|
||||
return new_layer;
|
||||
}
|
||||
@ -2764,6 +2768,8 @@ blender::bke::greasepencil::LayerGroup &GreasePencil::add_layer_group(
|
||||
std::string unique_name = unique_layer_group_name(*this, name);
|
||||
bke::greasepencil::LayerGroup *new_group = MEM_new<bke::greasepencil::LayerGroup>(__func__,
|
||||
unique_name);
|
||||
/* Hide masks by default. */
|
||||
new_group->base.flag |= GP_LAYER_TREE_NODE_HIDE_MASKS;
|
||||
return parent_group.add_node(new_group->as_node()).as_group();
|
||||
}
|
||||
|
||||
|
@ -51,8 +51,7 @@ static int grease_pencil_layer_add_exec(bContext *C, wmOperator *op)
|
||||
op->ptr, "new_layer_name", nullptr, 0, &new_layer_name_length);
|
||||
BLI_SCOPED_DEFER([&] { MEM_SAFE_FREE(new_layer_name); });
|
||||
Layer &new_layer = grease_pencil.add_layer(new_layer_name);
|
||||
/* Hide masks by default. */
|
||||
new_layer.base.flag |= GP_LAYER_TREE_NODE_HIDE_MASKS;
|
||||
|
||||
if (grease_pencil.has_active_layer()) {
|
||||
grease_pencil.move_node_after(new_layer.as_node(),
|
||||
grease_pencil.get_active_layer()->as_node());
|
||||
@ -260,8 +259,7 @@ static int grease_pencil_layer_group_add_exec(bContext *C, wmOperator *op)
|
||||
}();
|
||||
|
||||
LayerGroup &new_group = grease_pencil.add_layer_group(parent_group, new_layer_group_name);
|
||||
/* Hide masks by default. */
|
||||
new_group.base.flag |= GP_LAYER_TREE_NODE_HIDE_MASKS;
|
||||
|
||||
if (grease_pencil.has_active_layer()) {
|
||||
grease_pencil.move_node_after(new_group.as_node(),
|
||||
grease_pencil.get_active_layer()->as_node());
|
||||
|
Loading…
Reference in New Issue
Block a user