|
- import tkinter as tk
-
- from ui.icons.icons import icons
-
- class LabelWithRefresh(tk.Frame):
- def __init__(self, parent, initial_text, callback, initial_state=tk.DISABLED):
- super().__init__(parent)
- self.callback = callback
- self._create_ui(initial_text, initial_state)
-
- def _create_ui(self, initial_text, initial_state):
- self.refresh_button = tk.Button(self, image=icons["refresh"], state=initial_state, command=self.callback)
- self.refresh_button.pack(side=tk.RIGHT, padx=5)
- self.label = tk.Label(self, text=initial_text)
- self.label.pack(side=tk.RIGHT, padx=5)
-
- def set_state(self, state):
- self.refresh_button.config(state=state)
-
- def set_text(self, text):
- self.label.config(text=text)
|