|
|
@@ -4,7 +4,7 @@ import sys
|
|
|
sys.path.insert(0,"/opt/LibreLight/Xdesk/")
|
|
|
|
|
|
|
|
|
-CAPTION = 'R-FIX-LIST'
|
|
|
+CAPTION = 'RAY-FIX-LIST'
|
|
|
import tool.movewin as movewin
|
|
|
|
|
|
import pathlib
|
|
|
@@ -67,13 +67,19 @@ a = "/usr/share/fonts/truetype/freefont/FreeSansBold.ttf"
|
|
|
|
|
|
k=200
|
|
|
a = "/usr/share/fonts/truetype/freefont/FreeSans.ttf"
|
|
|
-font10l = pyray.load_font_ex(a, 10, None, 0);
|
|
|
+font_l_10 = pyray.load_font_ex(a, 10, None, 0);
|
|
|
+
|
|
|
a = "/usr/share/fonts/truetype/freefont/FreeSansBold.ttf"
|
|
|
-font10 = pyray.load_font_ex(a, 12, None, 0);
|
|
|
-print(dir(font10))
|
|
|
-print(font10.baseSize)
|
|
|
-##exit()
|
|
|
+font12 = pyray.load_font_ex(a, 12, None, 0);
|
|
|
+font14 = pyray.load_font_ex(a, 14, None, 0);
|
|
|
+font16 = pyray.load_font_ex(a, 16, None, 0);
|
|
|
font20 = pyray.load_font_ex(a, 20, None, 0);
|
|
|
+font22 = pyray.load_font_ex(a, 22, None, 0);
|
|
|
+font24 = pyray.load_font_ex(a, 24, None, 0);
|
|
|
+
|
|
|
+a = "/usr/share/fonts/truetype/freefont/FreeSans.ttf"
|
|
|
+font_l_22 = pyray.load_font_ex(a, 22, None, 0);
|
|
|
+
|
|
|
a = "/usr/share/fonts/truetype/freefont/FreeMono.ttf"
|
|
|
a = "/usr/share/fonts/truetype/freefont/FreeSansBold.ttf"
|
|
|
a = "/usr/share/fonts/truetype/freefont/FreeSans.ttf"
|
|
|
@@ -110,7 +116,6 @@ class BUTTON():
|
|
|
def __repr__(self):
|
|
|
return "<BUTTON {} {} {}>".format(id(self),str(self.btn.pos),self.btn.btn1.name)
|
|
|
def draw(self,event=None):
|
|
|
- font_size = font10.baseSize
|
|
|
pos=self.btn.pos
|
|
|
c=[122,122,122,122] #btn.btn2.get_color()
|
|
|
pyray.draw_rectangle(pos[1],pos[0],pos[3],pos[2],c)
|
|
|
@@ -123,7 +128,9 @@ class BUTTON():
|
|
|
pyray.draw_rectangle_lines_ex([pos[1]+1,pos[0]+1,pos[3]-2,pos[2]-2],1,c)
|
|
|
|
|
|
x=self.btn.btn1.name
|
|
|
- pyray.draw_text_ex(font10,str(x), [pos[1]+4,pos[0]+4], font_size, 0, [0,0,0,255])#pyray.YELLOW)#[0,255,0,255]) #pyray.YELLOW)
|
|
|
+
|
|
|
+ font_size = font14.baseSize
|
|
|
+ pyray.draw_text_ex(font14,str(x), [pos[1]+4,pos[0]+4], font_size, 0, [0,0,0,255])#pyray.YELLOW)#[0,255,0,255]) #pyray.YELLOW)
|
|
|
|
|
|
def event(self,x,y,mouse):
|
|
|
try:
|
|
|
@@ -202,11 +209,11 @@ def draw_mouse_box(window,pos1,mouse=[None,None,None],color=[128,128,128],text=1
|
|
|
if w > 10 or h > 10:
|
|
|
c=[255,255,255,255]
|
|
|
pyray.draw_rectangle_lines_ex([pos[0],pos[1],w,h],1,c)
|
|
|
- font_size = font10l.baseSize
|
|
|
- pyray.draw_text_ex(font10l,str(pos1[0])+" "+str(pos1[1]), [pos1[0],pos1[1]-10], font_size, 0, pyray.WHITE)
|
|
|
- pyray.draw_text_ex(font10l,str(pos2[0])+" "+str(pos2[1]), [pos2[0]+5,pos2[1]+10], font_size, 0, pyray.WHITE)
|
|
|
- pyray.draw_text_ex(font10l,str(w), [pos2[0]+5+w/2*wd,pos2[1]], font_size, 0, pyray.WHITE)
|
|
|
- pyray.draw_text_ex(font10l,str(h), [pos2[0]+5,pos2[1]+h/2*hd], font_size, 0, pyray.WHITE)
|
|
|
+ font_size = font_l_10.baseSize
|
|
|
+ pyray.draw_text_ex(font_l_10,str(pos1[0])+" "+str(pos1[1]), [pos1[0],pos1[1]-10], font_size, 0, pyray.WHITE)
|
|
|
+ pyray.draw_text_ex(font_l_10,str(pos2[0])+" "+str(pos2[1]), [pos2[0]+5,pos2[1]+10], font_size, 0, pyray.WHITE)
|
|
|
+ pyray.draw_text_ex(font_l_10,str(w), [pos2[0]+5+w/2*wd,pos2[1]], font_size, 0, pyray.WHITE)
|
|
|
+ pyray.draw_text_ex(font_l_10,str(h), [pos2[0]+5,pos2[1]+h/2*hd], font_size, 0, pyray.WHITE)
|
|
|
return pos1,pos2
|
|
|
|
|
|
mouse_old=[None,None,None]
|
|
|
@@ -265,50 +272,62 @@ def load_fix():
|
|
|
XFIRST_RUN = 1
|
|
|
def check_buttons(buttons,host_list):
|
|
|
global XFIRST_RUN
|
|
|
- _x=30
|
|
|
- _y=60
|
|
|
+ _x=20
|
|
|
+ _y=30
|
|
|
if not XFIRST_RUN:
|
|
|
return
|
|
|
XFIRST_RUN = 0
|
|
|
-
|
|
|
- if 1:#FIRST_RUN:
|
|
|
- for i,k in enumerate(host_list): #.items():
|
|
|
- key = str(i)
|
|
|
- if key not in buttons:
|
|
|
- v=host_list[k]
|
|
|
- txt=v["NAME"]
|
|
|
- btn=BUTTON(None,txt,[_y,_x,30,60])
|
|
|
- btn.btn.btn1.color_on = [255,255,0,255]
|
|
|
- buttons[key] = btn
|
|
|
- #print("ADD",key,btn)
|
|
|
-
|
|
|
- if "ATTRIBUT" in v:
|
|
|
- #print(txt)
|
|
|
- ATTR = v["ATTRIBUT"]
|
|
|
- if 1:
|
|
|
- ay2=_y
|
|
|
- ax2=_x+70
|
|
|
- for kk,vv in v["ATTRIBUT"].items():
|
|
|
- if "-FINE" in kk or kk.startswith("_"):
|
|
|
- continue
|
|
|
- key = str(i)+":" +kk
|
|
|
- VAL = vv["VALUE"]
|
|
|
- print("-",kk,vv)
|
|
|
- txt = kk+" "+str(VAL)
|
|
|
- btn=BUTTON(None,txt,[ay2,ax2,30,70])
|
|
|
- btn.btn.btn1.color_on = [255,255,0,255]
|
|
|
- buttons[key] = btn
|
|
|
- add=1
|
|
|
- ax2+=73
|
|
|
-
|
|
|
- _y+=30
|
|
|
+ H = 22
|
|
|
+ W = 120
|
|
|
+ W2 = W
|
|
|
+ for i,k in enumerate(host_list): #.items():
|
|
|
+ _x=20
|
|
|
+ key = str(i)
|
|
|
+ if key not in buttons: # insert
|
|
|
+ v=host_list[k]
|
|
|
+ txt=v["NAME"]
|
|
|
+ btn=BUTTON(None,txt,[_y,_x,H,W])
|
|
|
+ btn.btn.btn1.color_on = [255,255,0,255]
|
|
|
+ buttons[key] = btn
|
|
|
+ #print("ADD",key,btn)
|
|
|
+
|
|
|
+ _x+=W+2
|
|
|
+ key = str(i)+":rgb"
|
|
|
+ txt = ""
|
|
|
+ btn=BUTTON(None,txt,[_y,_x,H,20])
|
|
|
+ btn.btn.btn1.color = [0,0,0,255]
|
|
|
+ btn.btn.btn1.color_on = [255,255,0,255]
|
|
|
+ buttons[key] = btn
|
|
|
+ _x+=20+2
|
|
|
+
|
|
|
+ if "ATTRIBUT" in v:
|
|
|
+ #print(txt)
|
|
|
+ ATTR = v["ATTRIBUT"]
|
|
|
+ if 1:
|
|
|
+ ay2=_y
|
|
|
+ ax2=_x
|
|
|
+ for kk,vv in v["ATTRIBUT"].items():
|
|
|
+ if "-FINE" in kk or kk.startswith("_"):
|
|
|
+ continue
|
|
|
+ key = str(i)+":" +kk
|
|
|
+ VAL = vv["VALUE"]
|
|
|
+ #print("-",kk,vv)
|
|
|
+ txt = kk+" "+str(VAL)
|
|
|
+ btn=BUTTON(None,txt,[ay2,ax2,H,W2])
|
|
|
+ btn.btn.btn1.color_on = [255,255,0,255]
|
|
|
+ buttons[key] = btn
|
|
|
+ add=1
|
|
|
+ ax2+=W2+3
|
|
|
+
|
|
|
+ _y+=23
|
|
|
|
|
|
def draw_buttons(buttons):
|
|
|
+ mh = pyray.get_screen_height()
|
|
|
for k,btn in buttons.items():
|
|
|
btn.event(old_x,old_y,mouse_old)
|
|
|
#print(btn)
|
|
|
pos = btn.btn.pos
|
|
|
- if pos[0] > 300:
|
|
|
+ if pos[0] > (mh-40):
|
|
|
continue
|
|
|
btn.draw()
|
|
|
|
|
|
@@ -330,8 +349,11 @@ while not pyray.window_should_close():
|
|
|
|
|
|
|
|
|
|
|
|
- font_size = font10.baseSize
|
|
|
+ font_size = font12.baseSize
|
|
|
try:
|
|
|
+ mw = pyray.get_screen_width()
|
|
|
+ mh = pyray.get_screen_height()
|
|
|
+
|
|
|
keys,host_list = load_fix()
|
|
|
|
|
|
GREY = [122,122,122,255]
|
|
|
@@ -344,16 +366,14 @@ while not pyray.window_should_close():
|
|
|
check_buttons(buttons,host_list)
|
|
|
|
|
|
|
|
|
+ pyray.draw_text_ex(font_l_22,"FIXTURE LIST",[20,5], 22, 0, pyray.GRAY)
|
|
|
|
|
|
- w=200
|
|
|
- h=50
|
|
|
+ pyray.draw_text_ex(font12,"ACTIVE:{:0.1f} {:0.1f}".format(0,0),[200,5], 12, 0, pyray.YELLOW)
|
|
|
+ pyray.draw_text_ex(font12,"ENCODER:±{:0.2f}".format(5),[310,5], 12, 0, pyray.YELLOW)
|
|
|
|
|
|
- x=200
|
|
|
- y=200
|
|
|
-
|
|
|
- pyray.draw_text_ex(font25,"FPS:{}".format(fps_count),[10,5], 25, 0, pyray.VIOLET)
|
|
|
- pyray.draw_text_ex(font25,"BTN:{}".format(len(buttons)),[150,5], 25, 0, pyray.VIOLET)
|
|
|
- pyray.draw_text_ex(font25,"FIX:{}".format(len(host_list)),[350,5], 25, 0, pyray.VIOLET)
|
|
|
+ pyray.draw_text_ex(font12,"FPS:{}".format(fps_count) ,[420,5], 12, 0, pyray.BLUE)
|
|
|
+ pyray.draw_text_ex(font12,"BTN:{}".format(len(buttons)) ,[460,5], 12, 0, pyray.BLUE)
|
|
|
+ pyray.draw_text_ex(font12,"FIX:{}".format(len(host_list)),[520,5], 12, 0, pyray.BLUE)
|
|
|
|
|
|
m=pyray.get_mouse_position()
|
|
|
#print(m)
|
|
|
@@ -399,10 +419,16 @@ while not pyray.window_should_close():
|
|
|
#print(mouse)
|
|
|
mouse_old = mouse[:]
|
|
|
|
|
|
+ txt=""
|
|
|
+ key="scroll-bar"
|
|
|
+ btn=BUTTON(None,txt,[30,mw-35,mh-75,30])
|
|
|
+ btn.btn.btn1.color_on = [255,255,0,255]
|
|
|
+ buttons[key] = btn
|
|
|
+
|
|
|
draw_buttons(buttons)
|
|
|
|
|
|
- pyray.draw_text_ex(font20,"X:{}".format(int(m.x)),[10,34], 20, 0, pyray.VIOLET)
|
|
|
- pyray.draw_text_ex(font20,"Y:{}".format(int(m.y)),[65,34], 20, 0, pyray.VIOLET)
|
|
|
+ pyray.draw_text_ex(font12,"X:{}".format(int(m.x)),[590,5], 12, 0, pyray.VIOLET)
|
|
|
+ pyray.draw_text_ex(font12,"Y:{}".format(int(m.y)),[620,5], 12, 0, pyray.VIOLET)
|
|
|
|
|
|
pyray.draw_rectangle(int(old_x-10),int(old_y-1),20,2,[255,0,255,255])
|
|
|
pyray.draw_rectangle(int(old_x-1),int(old_y-10),2,20,[255,0,255,255])
|