Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'object_collection_manager/internals.py')
-rw-r--r--object_collection_manager/internals.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/object_collection_manager/internals.py b/object_collection_manager/internals.py
index 163e9804..34e66737 100644
--- a/object_collection_manager/internals.py
+++ b/object_collection_manager/internals.py
@@ -39,6 +39,7 @@ move_active = None
layer_collections = {}
collection_tree = []
collection_state = {}
+qcd_collection_state = {}
expanded = set()
row_index = 0
max_lvl = 0
@@ -60,6 +61,8 @@ rto_history = {
"indirect_all": {},
}
+qcd_history = {}
+
expand_history = {
"target": "",
"history": [],
@@ -131,6 +134,13 @@ class QCDSlots():
raise
+ def object_in_slots(self, obj):
+ for collection in obj.users_collection:
+ if self.contains(name=collection.name):
+ return True
+
+ return False
+
def get_data_for_blend(self):
return f"{self._slots.__repr__()}\n{self.overrides.__repr__()}"
@@ -584,8 +594,9 @@ def get_modifiers(event):
return set(modifiers)
-def generate_state():
+def generate_state(*, qcd=False):
global layer_collections
+ global qcd_slots
state = {
"name": [],
@@ -608,6 +619,9 @@ def generate_state():
state["holdout"].append(laycol["ptr"].holdout)
state["indirect"].append(laycol["ptr"].indirect_only)
+ if qcd:
+ state["qcd"] = dict(qcd_slots)
+
return state