From a8aba7163899e1e5f81cba041b371cf52e8801c7 Mon Sep 17 00:00:00 2001
From: punix <polunga40@unity-mail.de>
Date: Wed, 7 May 2025 12:46:52 +0200
Subject: [PATCH] tooltips add x_offset: int = 65, y_offset: int = 40 as
 atribute for edit

---
 __pycache__/common_tools.cpython-312.pyc  | Bin 33666 -> 33948 bytes
 __pycache__/wp_app_config.cpython-312.pyc | Bin 9435 -> 9435 bytes
 common_tools.py                           |  10 +++++++---
 wirepy.py                                 |  22 ++++++++++++++--------
 4 files changed, 21 insertions(+), 11 deletions(-)

diff --git a/__pycache__/common_tools.cpython-312.pyc b/__pycache__/common_tools.cpython-312.pyc
index 70ccf6b5d5e3d5b11a7ea809e42816c53901815f..83b6bc0a5ec05ef93b94ea3e2a83b6102b98e0a4 100644
GIT binary patch
delta 1034
zcmZuvTWC{35Z%4Gxw(1V#L~1HW9qiP8Z2s4T1Bk*rYcsY3K~C(cyCBW8oBqHmoY{u
zn&JyPA6C>q5w(hzB8vFo<3q%+pkmC2=%?sMYY}`PIGeOSz=55ab7ppDXJ?Nd7cTY-
z?&pf)ASjz!{LzRu?Cvt^6^>EH^Qg`djfAO6!h%Y}7CW&M)eTvrF|65D8!lNDA}-b5
zXAL`4kLu_X!%lUI>eM7n^x^h$TvS~ccm0P~kXKSdu&QL+7K`mOd-m^U0(><-!DVyl
z^d^?<jzuDdX10eGHL=trXkG+w%^&`fJQ*&@lQDfY7TqJky8~YO7QP%<9uPC6TST%f
z87m^|Z$#j|%L`0)LRWkN^*|x*g`dfKxEl{p8D7O_+VoSD5dAca#o1g*--<i+6P#)0
z-bwCN63{aw<QRkb3AQ9IAdVu=kx_}vXvm8vokd>&jlCFZ%Zo2%f6>QTcX1j+qfD3)
zBhewy0eFy_L65_m)D;?qT>2&qCu?Eh!C5fJ>W9rrts{*`r*Te)Ea2Q&2OT@=;LgEn
zS_8XX)rw^ZZ^MO>ejAK6)zpg_;Q~>`jO7BkB>st-Rh2wKV1KO_S~5PrRh3j54$ZFG
zZ#ahJO8k(Nk@ot5rmErg1{-XNTR}>CX@FO2apr9iiUXF1uxBomq-an{S9L{W34@tY
zjhU6vc9x``UPIGO_?Y=V^E!Vb{?)$b$Zg@SW7sj`$`QQ*nV?5M3u2Z{EkAC_nds?_
z#JcrZ%uMO0u{UVWuBGQ8kqxnP2-Dt)zq7!=lHC*42Kf2k;8}M4eDAHmwLn2>E68nm
zT9obiZD)4%?|QAwE-15KD08p=6(4Cm%xL>rJXL?fZz5D?ejW*f_s5vd(CCBz)Q$G2
z+GO1uFpyj93tBoqti;3*jXZl5SDmPWZg`bzt?A`>3s(cY5^q8ugy~1>cOFBskBkWp
zt2|muw$q)o*t&Sk;<2uwgT^S~_Uf#Pz1R3K^tAm^dtvF;3Q_dejg~Wu3qupmvK8ZH
bX1rk}d1O7M_u=u;Vb3~B=Y1wzm!JC=HF+CH

delta 769
zcmZuuUr1A76u;lS*ZXJp-Wg4^>o&UTLt93nP(rjYD@dWp>LC^((l_x>w7Q$l&CTf?
zq$Fyc)WCY^MHCYfUwpKpdI+jPkVr&Nh0sH5^wLY6ujN|@zTY{&^PThKeCK;G#%FHv
z&ew+F;LyB%m7NK?;=B;?s*Ix*k_fY0hzk<R1$jz>0@WcC@tvo9heG9SNl>K*RkC8x
zL3OHzq>yN03zhI*qz=5-{*%`*ug7`6b5p(;4quCQ-DrPFK#YEamfoKp`vfXn6%n?L
z#R8tfGYIz`6S!^_ZpK~kq(z1=eRc3vbP1GCLQX7)w{Z>5#Jog;p4c9^7xPw%b}P2p
zw+TWWi^egEFiH3jvwXcgvP;N@xX<pYQE^<`Fumy1jrzl*;(NutVOAq`t{&_^&66qU
zPk6`(Oef|^BOD!A=BWU`2WoHzx08wq)JYf|mlC1|Jlf}hfn*)r>2X1$qKjj4w+q^J
zmnkLrIb2avnByLbOE?WP!ePsLg9j>7rYTc}s?<R>sy)`1lww6nN=lI5Uj~+<L1$_g
zF_~J0F)DWu>dY!j_!4G>ixYn-ET%k;t>ehId<gI&^^45I`k-4d>`C}EXc?PYtm}G5
zxXliSqj4xtpCYqxIbBbtVIplx6KpSeSWY*~J99>DPN@YlRK6XrRt;GsFv)iM9M%1N
zamll6wQLN_vMqG>3?>p~|33LZXBQ2%MT<Ya0E5E~x_y>aH6i#7cr$!x$2rEQnC>)#
z8Q7hv3Up&K%jJ2sM9G)wB`3-K$ajwUg_@#Y^R3sv3Oo(uj<gmN@2<2L{#Fz`t9LWa
Vgsj2Gk(JUWLiYaP7~0jS`3LxG&I14d

diff --git a/__pycache__/wp_app_config.cpython-312.pyc b/__pycache__/wp_app_config.cpython-312.pyc
index ed1738b3fe4f990281232bec949dd032e15152c1..65b6f49c2268fcd2564373ae183ea291ac33a552 100644
GIT binary patch
delta 19
ZcmccZdE1lgG%qg~0}zB5Z{)hD0suXe1$h7f

delta 19
ZcmccZdE1lgG%qg~0}x!%*vNHJ1pq)?1?~U<

diff --git a/common_tools.py b/common_tools.py
index e321658..b87fc1a 100755
--- a/common_tools.py
+++ b/common_tools.py
@@ -621,17 +621,21 @@ class Tooltip():
     example: Tooltip(label, "Show tooltip on label")
     example: Tooltip(button, "Show tooltip on button")
     example: Tooltip(widget, "Text", state_var=tk.BooleanVar())
+    example: Tooltip(widget, "Text", state_var=tk.BooleanVar(), x_offset=20, y_offset=10)
     
     info: label and button are parent widgets.
     NOTE: When using with state_var, pass the tk.BooleanVar object directly,
     NOT its value. For example: use state_var=my_bool_var, NOT state_var=my_bool_var.get()
     """
-    def __init__(self, widget: Any, text: str, state_var: Optional[tk.BooleanVar] = None) -> None:
+    def __init__(self, widget: Any, text: str, state_var: Optional[tk.BooleanVar] = None, 
+                 x_offset: int = 65, y_offset: int = 40) -> None:
         """Tooltip Class"""
         self.widget: Any = widget
         self.text: str = text
         self.tooltip_window: Optional[Toplevel] = None
         self.state_var = state_var
+        self.x_offset = x_offset
+        self.y_offset = y_offset
         
         # Initial binding based on current state
         self.update_bindings()
@@ -662,8 +666,8 @@ class Tooltip():
         cy: int
         
         x, y, cx, cy = self.widget.bbox("insert")
-        x += self.widget.winfo_rootx() + 65
-        y += self.widget.winfo_rooty() + 40
+        x += self.widget.winfo_rootx() + self.x_offset
+        y += self.widget.winfo_rooty() + self.y_offset
         
         self.tooltip_window = tw = tk.Toplevel(self.widget)
         tw.wm_overrideredirect(True)
diff --git a/wirepy.py b/wirepy.py
index 6e6c784..9e7114d 100755
--- a/wirepy.py
+++ b/wirepy.py
@@ -266,9 +266,9 @@ class FrameWidgets(ttk.Frame):
         self.lb_rename.config(state="disable")
 
         if self.l_box.size() != 0:
-            Tooltip(self.lb_rename, Msg.TTIP["rename_tl"], self.tooltip_state)
+            Tooltip(self.lb_rename, Msg.TTIP["rename_tl"], self.tooltip_state, x_offset= -120, y_offset=-70)
         else:
-            Tooltip(self.lb_rename, Msg.TTIP["rename_tl_info"], self.tooltip_state)
+            Tooltip(self.lb_rename, Msg.TTIP["rename_tl_info"], self.tooltip_state, x_offset=-180, y_offset=-50)
 
         # Button Rename
         self.btn_rename = ttk.Button(self.lb_frame4, text=_("Rename"), state="disable", command=self.tl_rename,
@@ -289,14 +289,14 @@ class FrameWidgets(ttk.Frame):
         self.wg_autostart.grid(column=0, row=0, pady=15, padx=15, sticky="nw")
 
         if self.l_box.size() >= 1 and len(self.l_box.curselection()) >= 1:
-            Tooltip(self.wg_autostart, Msg.TTIP["autostart"], self.tooltip_state)
+            Tooltip(self.wg_autostart, Msg.TTIP["autostart"], self.tooltip_state, x_offset=-10, y_offset=-40)
 
         if self.l_box.size() == 0:
-            Tooltip(self.wg_autostart, Msg.TTIP["autostart_info"], self.tooltip_state)
+            Tooltip(self.wg_autostart, Msg.TTIP["autostart_info"], self.tooltip_state, x_offset=30, y_offset=-50)
 
         else:
 
-            Tooltip(self.wg_autostart, Msg.TTIP["autostart"], self.tooltip_state)
+            Tooltip(self.wg_autostart, Msg.TTIP["autostart"], self.tooltip_state, x_offset=-10, y_offset=-40)
 
         self.on_off()
 
@@ -326,15 +326,21 @@ class FrameWidgets(ttk.Frame):
             self.update_tooltip.set(_("Updates you have disabled"))
             # Clear the foreground color as requested
             self.update_foreground.set("")
+            # Set tooltip for the label
+            Tooltip(self.updates_lb, self.update_tooltip.get(), self.tooltip_state)
             
         elif res == "No Internet Connection!":
             self.update_label.set(_("No Server Connection!"))
             self.update_foreground.set("red")
+            # Set tooltip for "No Server Connection"
+            Tooltip(self.updates_lb, _("Could not connect to update server"), self.tooltip_state)
             
         elif res == "No Updates":
             self.update_label.set(_("No Updates"))
             self.update_tooltip.set(_("Congratulations! Wire-Py is up to date"))
             self.update_foreground.set("")
+            # Set tooltip for the label
+            Tooltip(self.updates_lb, self.update_tooltip.get(), self.tooltip_state)
             
         else:
             self.set_update.set(value=0)
@@ -346,7 +352,7 @@ class FrameWidgets(ttk.Frame):
             # Create the update button
             self.update_btn = ttk.Menubutton(self.menu_frame, text=update_text)
             self.update_btn.grid(column=4, columnspan=3, row=0, padx=0)
-            Tooltip(self.update_btn, Msg.TTIP["download"], self.tooltip_state)
+            Tooltip(self.update_btn, _("Click to download new version"), self.tooltip_state)
             
             self.download = tk.Menu(self, relief="flat")
             self.update_btn.configure(menu=self.download, style="Toolbutton")
@@ -579,7 +585,7 @@ class FrameWidgets(ttk.Frame):
                         self.l_box.update()
                         self.l_box.selection_set(0)
                         
-                        Tooltip(self.wg_autostart, Msg.TTIP["autostart"], self.tooltip_state)
+                        Tooltip(self.wg_autostart, Msg.TTIP["autostart"], self.tooltip_state, x_offset=-10, y_offset=-40)
                         Tooltip(self.btn_tr, Msg.TTIP["trash_tl"], self.tooltip_state)
                         Tooltip(self.btn_exp, Msg.TTIP["export_tl"], self.tooltip_state)
                         Tooltip(self.btn_rename, Msg.TTIP["rename_tl"], self.tooltip_state)
@@ -645,7 +651,7 @@ class FrameWidgets(ttk.Frame):
                 self.wg_autostart.configure(state="disabled")
                 self.lb_rename.configure(state="disabled")
                 Tooltip(self.wg_autostart, Msg.TTIP["autostart_info"]
-                        , self.tooltip_state)
+                        , self.tooltip_state, x_offset=30, y_offset=-50)
 
                 Tooltip(self.btn_exp, Msg.TTIP["export_tl_info"], self.tooltip_state)
                 Tooltip(self.btn_stst, Msg.TTIP["empty_list"], self.tooltip_state)