Collection Manager: QCD polishing. Task: T69577

Made QCD internal structure more stable.
Prevented reload scripts from resetting QCD slots.
Fixed QCD being left in an incorrect state on undo/redo.
Fixed a small error on unregister.
This commit is contained in:
Ryan Inch
2020-03-30 02:34:28 -04:00
parent bbd5fd92a3
commit a32b859fec
8 changed files with 159 additions and 118 deletions

View File

@ -343,7 +343,7 @@ class CM_UL_items(UIList):
if context.preferences.addons[__package__].preferences.enable_qcd:
QCD = row.row()
QCD.scale_x = 0.4
QCD.prop(item, "qcd_slot", text="")
QCD.prop(item, "qcd_slot_idx", text="")
name_row = row.row()
@ -483,7 +483,7 @@ class CM_UL_items(UIList):
flt_flags = [0] * len(list_items)
for idx, item in enumerate(list_items):
if item.qcd_slot:
if item.qcd_slot_idx:
flt_flags[idx] |= self.bitflag_filter_item
else: # display as treeview
@ -533,10 +533,10 @@ def view3d_header_qcd_slots(self, context):
update_collection_tree(context)
for x in range(20):
qcd_slot = qcd_slots.get_name(str(x+1))
qcd_slot_name = qcd_slots.get_name(str(x+1))
if qcd_slot:
qcd_laycol = layer_collections[qcd_slot]["ptr"]
if qcd_slot_name:
qcd_laycol = layer_collections[qcd_slot_name]["ptr"]
collection_objects = qcd_laycol.collection.objects
selected_objects = qcd_operators.get_move_selection()
active_object = qcd_operators.get_move_active()