فهرست منبع

cleanup: main_menu ACTIVE:: {FIX : SUB} . {DIM}

micha 6 ماه پیش
والد
کامیت
eef366b705
1فایلهای تغییر یافته به همراه108 افزوده شده و 26 حذف شده
  1. 108 26
      _LibreLightDesk.py

+ 108 - 26
_LibreLightDesk.py

@@ -1278,6 +1278,81 @@ class MASTER():
 
     def refresh_fix(self):
         refresher_fix.reset() # = tkrefresh.Refresher()
+        self._refresh_fix_menu()
+    def _refresh_fix_menu(self):
+        #cprint("_refresh_fix_menu")
+        s=time.time(); _XXX=0
+
+        menu_buff = {"DIM":0,"DIM-SUB":0,"FIX":0,"FIX-SUB":0}
+
+        elem_buffer = []
+
+        for fix in FIXTURES.fixtures:                            
+            sdata = FIXTURES.fixtures[fix]                            
+
+            elem_attr_fix = None
+            if fix in self.elem_attr:
+                elem_attr_fix = self.elem_attr[fix]
+
+            if "DIM" in sdata["ATTRIBUT"] and "_ACTIVE" in sdata["ATTRIBUT"] and len(sdata["ATTRIBUT"]) == 2:
+                KEY = "DIM-SUB"
+            else:
+                KEY = "FIX-SUB"
+            FIX = 0
+            DIM = 0
+            for attr in sdata["ATTRIBUT"]:
+                _buff = {}
+                row = sdata["ATTRIBUT"][attr]
+
+                if attr.endswith("-FINE"):
+                    continue
+
+                b_attr = attr
+                if b_attr == "_ACTIVE":
+                    b_attr = "S"
+
+
+                if row["ACTIVE"]:
+
+                    menu_buff[KEY] += 1
+                    if b_attr == "S":
+                        if KEY == "DIM-SUB":
+                            DIM =1
+                        else:
+                            FIX =1
+
+
+            menu_buff["FIX"] += FIX
+            menu_buff["DIM"] += DIM
+
+
+        menu_buff["FIX-SUB"] -= menu_buff["FIX"]
+        if menu_buff["FIX-SUB"]:
+            gui_menu.config("FIX-LIST","bg","yellow")
+            gui_menu.config("FIX-LIST","activebackground","yellow")
+        elif menu_buff["FIX"]:
+            gui_menu.config("FIX-LIST","bg","orange")
+            gui_menu.config("FIX-LIST","activebackground","orange")
+        else:
+            gui_menu.config("FIX-LIST","bg","")
+            gui_menu.config("FIX-LIST","activebackground","")
+
+        gui_menu.update("FIX-LIST","{} : {}".format(menu_buff["FIX"],menu_buff["FIX-SUB"]))
+
+        menu_buff["DIM-SUB"] -= menu_buff["DIM"]
+        if menu_buff["DIM-SUB"]:
+            gui_menu.config("DIMMER","bg","yellow")
+            gui_menu.config("DIMMER","activebackground","yellow")
+        elif menu_buff["DIM"]:
+            gui_menu.config("DIMMER","bg","orange")
+            gui_menu.config("DIMMER","activebackground","orange")
+        else:
+            gui_menu.config("DIMMER","bg","")
+            gui_menu.config("DIMMER","activebackground","")
+
+        gui_menu.update("DIMMER","{} : {}".format(menu_buff["DIM"],menu_buff["DIM-SUB"]))
+        #cprint("fix:",_XXX,round(time.time()-s),color="red"); _XXX += 1
+
     def _refresh_fix(self):
         cprint("_refresh_fix")
         s=time.time(); _XXX=0
@@ -1384,32 +1459,32 @@ class MASTER():
         cprint("fix:",_XXX,round(time.time()-s,2),color="red");_XXX += 1
         cprint(gui_menu)
 
-        menu_buff["FIX-SUB"] -= menu_buff["FIX"]
-        if menu_buff["FIX-SUB"]:
-            gui_menu.config("FIXTURES","bg","yellow")
-            gui_menu.config("FIXTURES","activebackground","yellow")
-        elif menu_buff["FIX"]:
-            gui_menu.config("FIXTURES","bg","orange")
-            gui_menu.config("FIXTURES","activebackground","orange")
-        else:
-            gui_menu.config("FIXTURES","bg","")
-            gui_menu.config("FIXTURES","activebackground","")
-
-        gui_menu.update("FIXTURES","{} : {}".format(menu_buff["FIX"],menu_buff["FIX-SUB"]))
-
-        menu_buff["DIM-SUB"] -= menu_buff["DIM"]
-        if menu_buff["DIM-SUB"]:
-            gui_menu.config("DIMMER","bg","yellow")
-            gui_menu.config("DIMMER","activebackground","yellow")
-        elif menu_buff["DIM"]:
-            gui_menu.config("DIMMER","bg","orange")
-            gui_menu.config("DIMMER","activebackground","orange")
-        else:
-            gui_menu.config("DIMMER","bg","")
-            gui_menu.config("DIMMER","activebackground","")
-
-
-        gui_menu.update("DIMMER","{} : {}".format(menu_buff["DIM"],menu_buff["DIM-SUB"]))
+        #menu_buff["FIX-SUB"] -= menu_buff["FIX"]
+        #if menu_buff["FIX-SUB"]:
+        #    gui_menu.config("FIXTURES","bg","yellow")
+        #    gui_menu.config("FIXTURES","activebackground","yellow")
+        #elif menu_buff["FIX"]:
+        #    gui_menu.config("FIXTURES","bg","orange")
+        #    gui_menu.config("FIXTURES","activebackground","orange")
+        #else:
+        #    gui_menu.config("FIXTURES","bg","")
+        #    gui_menu.config("FIXTURES","activebackground","")
+
+        #gui_menu.update("FIXTURES","{} : {}".format(menu_buff["FIX"],menu_buff["FIX-SUB"]))
+
+        #menu_buff["DIM-SUB"] -= menu_buff["DIM"]
+        #if menu_buff["DIM-SUB"]:
+        #    gui_menu.config("DIMMER","bg","yellow")
+        #    gui_menu.config("DIMMER","activebackground","yellow")
+        #elif menu_buff["DIM"]:
+        #    gui_menu.config("DIMMER","bg","orange")
+        #    gui_menu.config("DIMMER","activebackground","orange")
+        #else:
+        #    gui_menu.config("DIMMER","bg","")
+        #    gui_menu.config("DIMMER","activebackground","")
+
+
+        #gui_menu.update("DIMMER","{} : {}".format(menu_buff["DIM"],menu_buff["DIM-SUB"]))
 
         cprint("fix:",_XXX,round(time.time()-s),color="red"); _XXX += 1
 
@@ -1807,6 +1882,13 @@ LOAD_SHOW()
 
 master = MASTER()
 
+def menu_loop():
+    time.sleep(5)
+    while 1:
+        time.sleep(1)
+        master._refresh_fix_menu()
+    
+thread.start_new_thread(menu_loop,())
 
 
 print("main",__name__)