From 255e244bad3277a908778ff4608e298dc9129b81 Mon Sep 17 00:00:00 2001 From: rattatwinko Date: Thu, 17 Apr 2025 21:52:39 +0200 Subject: [PATCH] Pineapple + Bugfixed + New Versioning system! --- .../images/versions/pineapple.png | Bin 0 -> 25775 bytes PfandApplication/main.py | 86 ++++++++++++------ 2 files changed, 60 insertions(+), 26 deletions(-) create mode 100644 PfandApplication/images/versions/pineapple.png diff --git a/PfandApplication/images/versions/pineapple.png b/PfandApplication/images/versions/pineapple.png new file mode 100644 index 0000000000000000000000000000000000000000..b16e33df5e937dae6dbd87ba8f708dfebc3dd5f7 GIT binary patch literal 25775 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 literal 0 HcmV?d00001 diff --git a/PfandApplication/main.py b/PfandApplication/main.py index 11e89d9..588a3d4 100644 --- a/PfandApplication/main.py +++ b/PfandApplication/main.py @@ -338,51 +338,85 @@ class PfandCalculator: canvas.pack(side="left", fill="both", expand=True) scrollbar.pack(side="right", fill="y") - # Credit Section (Overall made nicer in Version 7.04.001) || Changed up a bit in V7.04.101 - - def create_credits(self): + # Credit Section (Overall made nicer in Version 7.04.001) || Changed up a LOT in V8.05.501 (Pineapple) + def create_credits(self, future_icons): about_window = tk.Toplevel(self.root) about_window.title("Über Programm") about_window.resizable(True, True) - # Configure grid weights so widgets expand properly | This is some new Stuff! + # Grid configuration about_window.grid_columnconfigure(0, weight=1) about_window.grid_columnconfigure(1, weight=1) about_window.grid_rowconfigure(0, weight=1) - label = tk.Label(about_window, - text=( - "PfandApp V.8.04.301-PKG1\n\n" - "Erstellt mit TKinter, CV2, Numpy, PyZbar, TGTG-API, TKCalendar, Datetime\n" - "Eigene Module: Updater, TGTG_OC, Wiki, BuildUtil\n" - ), - padx=10, - pady=10, - justify="center", - anchor="center") - label.grid(row=0, column=0, columnspan=2, pady=10, sticky="nsew") + image_path = os.path.join(os.getcwd(), "PfandApplication", "images", "versions", "pineapple.png") + + try: + img = Image.open(image_path).convert("RGBA") + + bg_color_hex = about_window.cget("bg") + bg_color_rgb = about_window.winfo_rgb(bg_color_hex) + bg_color_rgba = tuple(c // 256 for c in bg_color_rgb) + (255,) + + background = Image.new("RGBA", img.size, bg_color_rgba) + img = Image.alpha_composite(background, img) + img = img.resize((100, 100), Image.Resampling.LANCZOS) + pineapple_img = ImageTk.PhotoImage(img) + + img_label = tk.Label(about_window, image=pineapple_img) + img_label.image = pineapple_img + img_label.grid(row=0, column=0, columnspan=2, pady=(15, 5)) + except Exception as e: + print(f"Fehler beim Laden des Bildes: {e}") + + # Info label + label = tk.Label( + about_window, + text=( + "PfandApp V.8.05.501 - 'Pineapple'\n" + "PaketVersion 1.1 ( PKG1.1 )\n\n" + "Erstellt mit TKinter, CV2, Numpy, PyZbar, TGTG-API, TKCalendar, Datetime\n" + ), + padx=10, + pady=10, + justify="center", + anchor="center" + ) + label.grid(row=1, column=0, columnspan=2, pady=0, sticky="nsew") url = "https://zockerkatze.github.io/ZockerKatze/" - + url_future_icons = "https://www.svgrepo.com/svg/266606/watermelon" + # Website button - website_button = tk.Button(about_window, text="WebSite", command=lambda: webbrowser.open(url)) - website_button.grid(row=1, column=0, padx=10, pady=10, sticky="ew") + website_button = tk.Button(about_window, text="Webseite", command=lambda: webbrowser.open(url)) + website_button.grid(row=2, column=0, padx=10, pady=10, sticky="ew") + + if future_icons: + future_icon_button = tk.Button(about_window, text="Futur-Icons", command=lambda: webbrowser.open(url_future_icons)) + future_icon_button.grid(row=3, column=0, padx=10, pady=10, sticky="ew") + else: + future_icon_button = None # Close button - close_button = tk.Button(about_window, text="Close", command=about_window.destroy) - close_button.grid(row=1, column=1, padx=10, pady=10, sticky="ew") + close_button = tk.Button(about_window, text="Schließen", command=about_window.destroy) + close_button.grid(row=2, column=1, padx=10, pady=10, sticky="ew") + # TGTG Credits def TGTG_credits(self): about_tgtg = tk.Toplevel(self.root) about_tgtg.title("Über TGTG-OrderChecker") about_tgtg.resizable(True, True) + about_tgtg.grid_columnconfigure(0, weight=1) about_tgtg.grid_columnconfigure(1, weight=1) about_tgtg.grid_rowconfigure(0, weight=1) label_TGTG = tk.Label( about_tgtg, - text="TooGoodToGo OrderChecker\nOriginalerweiße: https://github.com/ZockerKatze/tgtg_orderchecker\nV1.102.202 (PfandVersion-PKG)", + text=( + "PV2-PKG1 - ( PfandVersion 2 - Package 1 )\n\n" + "TooGoodToGo OrderChecker\n" + ), padx=10, pady=10, justify="center", @@ -400,7 +434,7 @@ class PfandCalculator: close_button = tk.Button(about_tgtg, text="Close", command=about_tgtg.destroy) close_button.grid(row=1, column=1, padx=10, pady=10, sticky="ew") - def update_credits(self): # Credits for the Updater Application (not some update function for some credits) || Rewrote this in Version 7.04.101 => Inconsistency is key + def update_credits(self): # Credits for the Updater Application (not some update function for some credits) || Rewrote this in Version Pineapple => Inconsistency is key about_update = tk.Toplevel(self.root) about_update.title("Über UpdaterApp") about_update.geometry("650x190") @@ -413,7 +447,7 @@ class PfandCalculator: label_update_app = tk.Label( about_update, text=( - "Updater App für PfandApp\n" + "Updater App für PfandApp - (PKG1)\n" "Version 1.200.000\n" "Diese Updater App nutzt das GitHub Repository, um die App zu updaten.\n" "Nach Updates sollte die App neugestartet (oder reloaded, bei UI) werden.\n" @@ -469,7 +503,7 @@ class PfandCalculator: file_menu.add_command(label="Öffne PfandListe", command=wiki.select_file, accelerator="Strg+L") file_menu.add_command(label="Beenden", command=self.root.quit, accelerator="Strg+Q") file_menu.add_separator() - file_menu.add_command(label="Über Programm", command=self.create_credits, accelerator="Strg+F10") + file_menu.add_command(label="Über Programm", command=lambda: self.create_credits(False), accelerator="Strg+F10") # Else this will autolaunch (wo lambda) # Deposit Menu @@ -513,7 +547,7 @@ class PfandCalculator: tgtg_menu.add_command(label="Öffne TGTG-OC", command=tgtg.start_tgtg, accelerator="Strg+F12") tgtg_menu.add_command(label="Öffne KeyTool", command=tgtg_kt.ask_for_tokens, accelerator="Strg+F11") tgtg_menu.add_separator() - tgtg_menu.add_command(label="Über TGTG", command=self.TGTG_credits) # No keybind , why tf would you need one anyways + tgtg_menu.add_command(label="Über TGTG", command=self.TGTG_credits) # No keybind , why tf would you need one anyway update_menu = tk.Menu(self.menubar, tearoff=0) self.menubar.add_cascade(label="Updater", menu=update_menu) @@ -537,7 +571,7 @@ class PfandCalculator: self.root.bind('', lambda e: self.delete_achievements()) self.root.bind('', lambda e: tgtg.start_tgtg(self.root)) self.root.bind('', lambda e: tgtg_kt.ask_for_tokens()) - self.root.bind('', lambda e: self.create_credits()) + self.root.bind('', lambda e: self.create_credits(False)) # True this will show future Icons self.root.bind('', lambda e: self.export_barcodes_csv() if e.state & 0x1 else self.export_history_csv()) self.root.bind('', lambda e: self.show_add_product_window()) self.root.bind('', lambda e: self.show_manage_products_window() if e.state & 0x1 else self.show_add_product_window())