mirror of
https://github.com/blender/blender
synced 2026-09-29 04:37:17 +03:00
Merge branch 'blender-v2.90-release' into master
This commit is contained in:
commit
701a026d95
2 changed files with 23 additions and 3 deletions
|
|
@ -309,13 +309,15 @@ def draw(layout, context, context_member, property_type, use_edit=True):
|
|||
# Do not allow editing of overridden properties (we cannot use a poll function of the operators here
|
||||
# since they's have no access to the specific property...).
|
||||
row.enabled = not(is_lib_override and key in rna_item.id_data.override_library.reference)
|
||||
if not is_rna:
|
||||
if is_rna:
|
||||
row.label(text="API Defined")
|
||||
elif is_lib_override:
|
||||
row.label(text="Library Override")
|
||||
else:
|
||||
props = row.operator("wm.properties_edit", text="Edit")
|
||||
assign_props(props, val_draw, key)
|
||||
props = row.operator("wm.properties_remove", text="", icon='REMOVE')
|
||||
assign_props(props, val_draw, key)
|
||||
else:
|
||||
row.label(text="API Defined")
|
||||
|
||||
del flow
|
||||
|
||||
|
|
|
|||
|
|
@ -1276,6 +1276,11 @@ class WM_OT_properties_edit(Operator):
|
|||
|
||||
# First remove
|
||||
item = eval("context.%s" % data_path)
|
||||
|
||||
if (item.id_data and item.id_data.override_library and item.id_data.override_library.reference):
|
||||
self.report({'ERROR'}, "Cannot edit properties from override data")
|
||||
return {'CANCELLED'}
|
||||
|
||||
prop_type_old = type(item[prop_old])
|
||||
|
||||
rna_idprop_ui_prop_clear(item, prop_old)
|
||||
|
|
@ -1375,6 +1380,10 @@ class WM_OT_properties_edit(Operator):
|
|||
|
||||
item = eval("context.%s" % data_path)
|
||||
|
||||
if (item.id_data and item.id_data.override_library and item.id_data.override_library.reference):
|
||||
self.report({'ERROR'}, "Cannot edit properties from override data")
|
||||
return {'CANCELLED'}
|
||||
|
||||
# retrieve overridable static
|
||||
exec_str = "item.is_property_overridable_library('[\"%s\"]')" % (self.property)
|
||||
self.is_overridable_library = bool(eval(exec_str))
|
||||
|
|
@ -1498,6 +1507,10 @@ class WM_OT_properties_add(Operator):
|
|||
data_path = self.data_path
|
||||
item = eval("context.%s" % data_path)
|
||||
|
||||
if (item.id_data and item.id_data.override_library and item.id_data.override_library.reference):
|
||||
self.report({'ERROR'}, "Cannot add properties to override data")
|
||||
return {'CANCELLED'}
|
||||
|
||||
def unique_name(names):
|
||||
prop = "prop"
|
||||
prop_new = prop
|
||||
|
|
@ -1550,6 +1563,11 @@ class WM_OT_properties_remove(Operator):
|
|||
)
|
||||
data_path = self.data_path
|
||||
item = eval("context.%s" % data_path)
|
||||
|
||||
if (item.id_data and item.id_data.override_library and item.id_data.override_library.reference):
|
||||
self.report({'ERROR'}, "Cannot remove properties from override data")
|
||||
return {'CANCELLED'}
|
||||
|
||||
prop = self.property
|
||||
rna_idprop_ui_prop_update(item, prop)
|
||||
del item[prop]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue