fixed some UI, and temporarily did some better UX for µscan

This commit is contained in:
2025-09-13 16:47:14 +02:00
parent 8d81052d4c
commit cf55db126d
5 changed files with 579 additions and 121 deletions

View File

@@ -10,7 +10,7 @@ import tempfile
import traceback
import threading
GITHUB_REPO_ZIP = "https://github.com/ZockerKatze/pfand_PKG/archive/refs/heads/main.zip"
GITHUB_REPO_ZIP = "https://rattatwinko.servecounterstrike.com/gitea/rattatwinko/pfand_PKG/archive/main.zip"
IGNORED_FILES = {"key.py"}
class GitHubUpdater(tk.Toplevel):
@@ -49,7 +49,7 @@ class GitHubUpdater(tk.Toplevel):
header = ttk.Label(self, text="Pfand Updater", style="Header.TLabel")
header.pack(pady=(20, 5))
self.status_label = ttk.Label(self, text="🔍 Suche nach Updates...", style="Status.TLabel")
self.status_label = ttk.Label(self, text="Suche nach Updates", style="Status.TLabel")
self.status_label.pack(pady=(0, 10))
self.frame = ttk.Frame(self)
@@ -73,14 +73,14 @@ class GitHubUpdater(tk.Toplevel):
button_frame = ttk.Frame(self)
button_frame.pack(pady=15)
self.back_button = ttk.Button(button_frame, text="⬅️ Zurück", command=self.show_root_view)
self.back_button = ttk.Button(button_frame, text="Zurück", command=self.show_root_view)
self.back_button.pack(side="left", padx=10)
self.back_button.pack_forget()
self.update_button = ttk.Button(button_frame, text="⬆️ Dateien aktualisieren", command=self.perform_update, state='disabled')
self.update_button = ttk.Button(button_frame, text="Dateien aktualisieren", command=self.perform_update, state='disabled')
self.update_button.pack(side="left", padx=10)
self.toggle_debug_btn = ttk.Button(self, text="🐞 Fehlerdetails anzeigen", command=self.toggle_debug_output)
self.toggle_debug_btn = ttk.Button(self, text="Fehlerdetails anzeigen", command=self.toggle_debug_output)
self.toggle_debug_btn.pack()
self.toggle_debug_btn.pack_forget()
@@ -93,10 +93,10 @@ class GitHubUpdater(tk.Toplevel):
self.debug_visible = not self.debug_visible
if self.debug_visible:
self.debug_output.pack()
self.toggle_debug_btn.config(text="🔽 Fehlerdetails verbergen")
self.toggle_debug_btn.config(text="Fehlerdetails verbergen")
else:
self.debug_output.pack_forget()
self.toggle_debug_btn.config(text="🐞 Fehlerdetails anzeigen")
self.toggle_debug_btn.config(text="Fehlerdetails anzeigen")
def show_root_view(self):
self.current_view = "root"
@@ -125,7 +125,7 @@ class GitHubUpdater(tk.Toplevel):
def check_for_updates(self):
try:
self.status_label.config(text="⬇️ Lade Update herunter...", foreground="#ffb300")
self.status_label.config(text="Lade Update herunter...", foreground="#ffb300")
self.update_idletasks()
response = requests.get(GITHUB_REPO_ZIP)
@@ -137,13 +137,13 @@ class GitHubUpdater(tk.Toplevel):
if self.file_differences:
self.structure = self.build_structure(self.file_differences)
self.status_label.config(text="⚠️ Updates verfügbar", foreground="#e53935")
self.status_label.config(text="Updates verfügbar", foreground="#e53935")
self.display_structure(self.structure)
self.update_button.config(state='normal')
else:
self.status_label.config(text="Alles ist aktuell", foreground="#43a047")
self.status_label.config(text="Alles ist aktuell", foreground="#43a047")
except Exception:
self.status_label.config(text="Fehler beim Laden", foreground="#e53935")
self.status_label.config(text="Fehler beim Laden", foreground="#e53935")
self.toggle_debug_btn.pack()
self.debug_output.insert("1.0", traceback.format_exc())
@@ -183,7 +183,7 @@ class GitHubUpdater(tk.Toplevel):
def perform_update(self):
self.update_button.config(state='disabled')
self.status_label.config(text="🚧 Update läuft...", foreground="#fb8c00")
self.status_label.config(text="Update läuft", foreground="#fb8c00")
self.update_idletasks()
try:
@@ -199,10 +199,10 @@ class GitHubUpdater(tk.Toplevel):
os.makedirs(os.path.dirname(dest_path), exist_ok=True)
shutil.copy2(src_path, dest_path)
messagebox.showinfo("Aktualisiert", "Dateien wurden erfolgreich aktualisiert.")
messagebox.showinfo("Aktualisiert", "Dateien wurden erfolgreich aktualisiert.")
self.destroy()
except Exception as e:
messagebox.showerror("Fehler", str(e))
messagebox.showerror("Fehler", str(e))
self.toggle_debug_btn.pack()
self.debug_output.insert("1.0", traceback.format_exc())
@@ -238,7 +238,7 @@ def run_silent_update(master=None):
file_differences.append(rel_path)
if file_differences:
result = messagebox.askyesno("🔄 Update verfügbar", "Es sind Updates verfügbar. Möchten Sie aktualisieren?")
result = messagebox.askyesno("Update verfügbar", "Es sind Updates verfügbar. Möchten Sie aktualisieren?")
if result:
updater = GitHubUpdater(master)
updater.grab_set()