04-06-2025_large_update #35
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							@@ -621,17 +621,21 @@ class Tooltip():
 | 
				
			|||||||
    example: Tooltip(label, "Show tooltip on label")
 | 
					    example: Tooltip(label, "Show tooltip on label")
 | 
				
			||||||
    example: Tooltip(button, "Show tooltip on button")
 | 
					    example: Tooltip(button, "Show tooltip on button")
 | 
				
			||||||
    example: Tooltip(widget, "Text", state_var=tk.BooleanVar())
 | 
					    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.
 | 
					    info: label and button are parent widgets.
 | 
				
			||||||
    NOTE: When using with state_var, pass the tk.BooleanVar object directly,
 | 
					    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()
 | 
					    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"""
 | 
					        """Tooltip Class"""
 | 
				
			||||||
        self.widget: Any = widget
 | 
					        self.widget: Any = widget
 | 
				
			||||||
        self.text: str = text
 | 
					        self.text: str = text
 | 
				
			||||||
        self.tooltip_window: Optional[Toplevel] = None
 | 
					        self.tooltip_window: Optional[Toplevel] = None
 | 
				
			||||||
        self.state_var = state_var
 | 
					        self.state_var = state_var
 | 
				
			||||||
 | 
					        self.x_offset = x_offset
 | 
				
			||||||
 | 
					        self.y_offset = y_offset
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        # Initial binding based on current state
 | 
					        # Initial binding based on current state
 | 
				
			||||||
        self.update_bindings()
 | 
					        self.update_bindings()
 | 
				
			||||||
@@ -662,8 +666,8 @@ class Tooltip():
 | 
				
			|||||||
        cy: int
 | 
					        cy: int
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        x, y, cx, cy = self.widget.bbox("insert")
 | 
					        x, y, cx, cy = self.widget.bbox("insert")
 | 
				
			||||||
        x += self.widget.winfo_rootx() + 65
 | 
					        x += self.widget.winfo_rootx() + self.x_offset
 | 
				
			||||||
        y += self.widget.winfo_rooty() + 40
 | 
					        y += self.widget.winfo_rooty() + self.y_offset
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        self.tooltip_window = tw = tk.Toplevel(self.widget)
 | 
					        self.tooltip_window = tw = tk.Toplevel(self.widget)
 | 
				
			||||||
        tw.wm_overrideredirect(True)
 | 
					        tw.wm_overrideredirect(True)
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										22
									
								
								wirepy.py
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								wirepy.py
									
									
									
									
									
								
							@@ -266,9 +266,9 @@ class FrameWidgets(ttk.Frame):
 | 
				
			|||||||
        self.lb_rename.config(state="disable")
 | 
					        self.lb_rename.config(state="disable")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if self.l_box.size() != 0:
 | 
					        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:
 | 
					        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
 | 
					        # Button Rename
 | 
				
			||||||
        self.btn_rename = ttk.Button(self.lb_frame4, text=_("Rename"), state="disable", command=self.tl_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")
 | 
					        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:
 | 
					        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:
 | 
					        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:
 | 
					        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()
 | 
					        self.on_off()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -326,15 +326,21 @@ class FrameWidgets(ttk.Frame):
 | 
				
			|||||||
            self.update_tooltip.set(_("Updates you have disabled"))
 | 
					            self.update_tooltip.set(_("Updates you have disabled"))
 | 
				
			||||||
            # Clear the foreground color as requested
 | 
					            # Clear the foreground color as requested
 | 
				
			||||||
            self.update_foreground.set("")
 | 
					            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!":
 | 
					        elif res == "No Internet Connection!":
 | 
				
			||||||
            self.update_label.set(_("No Server Connection!"))
 | 
					            self.update_label.set(_("No Server Connection!"))
 | 
				
			||||||
            self.update_foreground.set("red")
 | 
					            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":
 | 
					        elif res == "No Updates":
 | 
				
			||||||
            self.update_label.set(_("No Updates"))
 | 
					            self.update_label.set(_("No Updates"))
 | 
				
			||||||
            self.update_tooltip.set(_("Congratulations! Wire-Py is up to date"))
 | 
					            self.update_tooltip.set(_("Congratulations! Wire-Py is up to date"))
 | 
				
			||||||
            self.update_foreground.set("")
 | 
					            self.update_foreground.set("")
 | 
				
			||||||
 | 
					            # Set tooltip for the label
 | 
				
			||||||
 | 
					            Tooltip(self.updates_lb, self.update_tooltip.get(), self.tooltip_state)
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
        else:
 | 
					        else:
 | 
				
			||||||
            self.set_update.set(value=0)
 | 
					            self.set_update.set(value=0)
 | 
				
			||||||
@@ -346,7 +352,7 @@ class FrameWidgets(ttk.Frame):
 | 
				
			|||||||
            # Create the update button
 | 
					            # Create the update button
 | 
				
			||||||
            self.update_btn = ttk.Menubutton(self.menu_frame, text=update_text)
 | 
					            self.update_btn = ttk.Menubutton(self.menu_frame, text=update_text)
 | 
				
			||||||
            self.update_btn.grid(column=4, columnspan=3, row=0, padx=0)
 | 
					            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.download = tk.Menu(self, relief="flat")
 | 
				
			||||||
            self.update_btn.configure(menu=self.download, style="Toolbutton")
 | 
					            self.update_btn.configure(menu=self.download, style="Toolbutton")
 | 
				
			||||||
@@ -579,7 +585,7 @@ class FrameWidgets(ttk.Frame):
 | 
				
			|||||||
                        self.l_box.update()
 | 
					                        self.l_box.update()
 | 
				
			||||||
                        self.l_box.selection_set(0)
 | 
					                        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_tr, Msg.TTIP["trash_tl"], self.tooltip_state)
 | 
				
			||||||
                        Tooltip(self.btn_exp, Msg.TTIP["export_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)
 | 
					                        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.wg_autostart.configure(state="disabled")
 | 
				
			||||||
                self.lb_rename.configure(state="disabled")
 | 
					                self.lb_rename.configure(state="disabled")
 | 
				
			||||||
                Tooltip(self.wg_autostart, Msg.TTIP["autostart_info"]
 | 
					                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_exp, Msg.TTIP["export_tl_info"], self.tooltip_state)
 | 
				
			||||||
                Tooltip(self.btn_stst, Msg.TTIP["empty_list"], self.tooltip_state)
 | 
					                Tooltip(self.btn_stst, Msg.TTIP["empty_list"], self.tooltip_state)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user