From f5a8b16a7f63d180cd8597c094977a4efc81d7b8 Mon Sep 17 00:00:00 2001 From: Christoph Stahl <christoph.stahl@uni-dortmund.de> Date: Mon, 13 Nov 2023 19:11:20 +0100 Subject: [PATCH] gui can now launch client and server (almost there) --- pyproject.toml | 3 + syng/client.py | 7 +- syng/gui.py | 141 ++++++++++++++++++++++++++++++++------ syng/sources/__init__.py | 3 +- syng/sources/filebased.py | 2 +- syng/static/syng.png | Bin 0 -> 43591 bytes 6 files changed, 133 insertions(+), 23 deletions(-) create mode 100644 syng/static/syng.png diff --git a/pyproject.toml b/pyproject.toml index 2cf4967..7b7f246 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,6 +10,7 @@ include = ["syng/static"] [tool.poetry.scripts] syng-client = "syng.client:main" syng-server = "syng.server:main" +syng-gui = "syng.gui:main" syng-shell = "syng.webclientmockup:main" [tool.poetry.dependencies] @@ -27,6 +28,8 @@ qrcode = "^7.4.2" pymediainfo = "^6.1.0" pyyaml = "^6.0.1" async-tkinter-loop = "^0.9.2" +tkcalendar = "^1.6.1" +tktimepicker = "^2.0.2" [build-system] requires = ["poetry-core"] diff --git a/syng/client.py b/syng/client.py index ea27b23..f5da742 100644 --- a/syng/client.py +++ b/syng/client.py @@ -65,6 +65,8 @@ currentLock: asyncio.Semaphore = asyncio.Semaphore(0) def default_config() -> dict[str, Optional[int | str]]: return { + "server": "http://localhost:8080", + "room": "ABCD", "preview_duration": 3, "secret": None, "last_song": None, @@ -416,6 +418,9 @@ async def aiomain() -> None: """ pass +def create_async_and_start_client(config): + asyncio.run(start_client(config)) + def main() -> None: """Entry point for the syng-client script.""" @@ -443,7 +448,7 @@ def main() -> None: if args.server: config["config"] |= {"server": args.server} - asyncio.run(start_client(config)) + create_async_and_start_client(config) if __name__ == "__main__": diff --git a/syng/gui.py b/syng/gui.py index dda9ebf..3803b87 100644 --- a/syng/gui.py +++ b/syng/gui.py @@ -1,19 +1,57 @@ import asyncio +from datetime import datetime, date, time +import os import builtins from functools import partial import webbrowser +import PIL from yaml import load, Loader +import multiprocessing import customtkinter import qrcode import secrets import string -from tkinter import filedialog -from async_tkinter_loop import async_handler, async_mainloop -from async_tkinter_loop.mixins import AsyncCTk +from tkinter import PhotoImage, filedialog +from tkcalendar import Calendar +from tktimepicker import SpinTimePickerOld, AnalogPicker, AnalogThemes +from tktimepicker import constants -from .client import default_config, start_client +from .client import create_async_and_start_client, default_config, start_client from .sources import available_sources +from .server import main as server_main + +class DateAndTimePickerWindow(customtkinter.CTkToplevel): + def __init__(self, parent, input_field): + super().__init__(parent) + self.calendar = Calendar(self) + self.calendar.pack(expand=True, fill="both") + self.timepicker = AnalogPicker(self, type=constants.HOURS12) + theme = AnalogThemes(self.timepicker) + theme.setDracula() + # self.timepicker.addAll(constants.HOURS24) + self.timepicker.pack(expand=True, fill="both") + + button = customtkinter.CTkButton(self, text="Ok", command=partial(self.insert, input_field)) + button.pack(expand=True, fill='x') + + def insert(self, input_field: customtkinter.CTkTextbox): + input_field.delete("0.0", "end") + selected_date = self.calendar.selection_get() + print(type(selected_date)) + if not isinstance(selected_date, date): + return + hours, minutes, ampm = self.timepicker.time() + if ampm == "PM": + hours = (hours + 12) % 24 + + selected_datetime = datetime.combine(selected_date, time(hours, minutes)) + input_field.insert("0.0", selected_datetime.isoformat()) + self.withdraw() + self.destroy() + + + class OptionFrame(customtkinter.CTkScrollableFrame): @@ -104,6 +142,35 @@ class OptionFrame(customtkinter.CTkScrollableFrame): self.choose_options[name].set(value) self.number_of_options += 1 + def open_date_and_time_picker(self, name, input_field): + if name not in self.date_and_time_pickers or not self.date_and_time_pickers[name].winfo_exists(): + self.date_and_time_pickers[name] = DateAndTimePickerWindow(self, input_field) + else: + self.date_and_time_pickers[name].focus() + + + def add_date_time_option(self, name, description, value): + self.add_option_label(description) + self.date_time_options[name] = None + input_and_button = customtkinter.CTkFrame(self) + input_and_button.grid(column=1, row=self.number_of_options, sticky="EW") + input_field = customtkinter.CTkTextbox(input_and_button, wrap="none", height=1) + input_field.pack(side="left", fill="x", expand=True) + try: + datetime.fromisoformat(value) + except TypeError: + value = "" + input_field.insert("0.0", value) + + button = customtkinter.CTkButton( + input_and_button, + text="...", + width=40, + command=partial(self.open_date_and_time_picker, name, input_field), + ) + button.pack(side="right") + self.number_of_options += 1 + def __init__(self, parent): super().__init__(parent) self.columnconfigure((1,), weight=1) @@ -112,6 +179,8 @@ class OptionFrame(customtkinter.CTkScrollableFrame): self.choose_options = {} self.bool_options = {} self.list_options = {} + self.date_time_options = {} + self.date_and_time_pickers = {} def get_config(self): config = {} @@ -173,9 +242,10 @@ class GeneralConfig(OptionFrame): ["forced", "optional", "none"], str(config["waiting_room_policy"]).lower(), ) - self.add_string_option( - "last_song", "Time of last song\nin ISO-8601", config["last_song"] - ) + # self.add_string_option( + # "last_song", "Time of last song\nin ISO-8601", config["last_song"] + # ) + self.add_date_time_option("last_song", "Time of last song", config["last_song"]) self.add_string_option( "preview_duration", "Preview Duration", config["preview_duration"] ) @@ -190,15 +260,37 @@ class GeneralConfig(OptionFrame): return config -class SyngGui(customtkinter.CTk, AsyncCTk): +class SyngGui(customtkinter.CTk): def loadConfig(self): filedialog.askopenfilename() + def on_close(self): + if self.server is not None: + self.server.kill() + + if self.client is not None: + self.client.kill() + + self.withdraw() + self.destroy() + def __init__(self): super().__init__(className="Syng") + self.protocol("WM_DELETE_WINDOW", self.on_close) - with open("syng-client.yaml") as cfile: - loaded_config = load(cfile, Loader=Loader) + rel_path = os.path.dirname(__file__) + img = PIL.ImageTk.PhotoImage(file=os.path.join(rel_path,"static/syng.png")) + self.wm_iconbitmap() + self.iconphoto(False, img) + + self.server = None + self.client = None + + try: + with open("syng-client.yaml") as cfile: + loaded_config = load(cfile, Loader=Loader) + except FileNotFoundError: + loaded_config = {} config = {"sources": {}, "config": default_config()} if "config" in loaded_config: config["config"] |= loaded_config["config"] @@ -222,10 +314,16 @@ class SyngGui(customtkinter.CTk, AsyncCTk): loadbutton.pack(side="left") startbutton = customtkinter.CTkButton( - fileframe, text="Start", command=self.start + fileframe, text="Start", command=self.start_client ) startbutton.pack(side="right") + startserverbutton = customtkinter.CTkButton( + fileframe, text="Start Server", command=self.start_server + ) + startserverbutton.pack(side="right") + + open_web_button = customtkinter.CTkButton( fileframe, text="Open Web", command=self.open_web ) @@ -266,8 +364,7 @@ class SyngGui(customtkinter.CTk, AsyncCTk): self.updateQr() - @async_handler - async def start(self): + def start_client(self): sources = {} for source, tab in self.tabs.items(): sources[source] = tab.get_config() @@ -275,8 +372,14 @@ class SyngGui(customtkinter.CTk, AsyncCTk): general_config = self.general_config.get_config() config = {"sources": sources, "config": general_config} - print(config) - await start_client(config) + # print(config) + self.client = multiprocessing.Process(target=create_async_and_start_client, args=(config,)) + self.client.start() + + def start_server(self): + self.server = multiprocessing.Process(target=server_main) + self.server.start() + def open_web(self): config = self.general_config.get_config() @@ -303,11 +406,9 @@ class SyngGui(customtkinter.CTk, AsyncCTk): self.changeQr(server + room) -# async def main(): -# gui = SyngGui() -# await gui.run() +def main(): + SyngGui().mainloop() if __name__ == "__main__": - # asyncio.run(main()) - SyngGui().async_mainloop() + main() diff --git a/syng/sources/__init__.py b/syng/sources/__init__.py index b57aefc..976615f 100644 --- a/syng/sources/__init__.py +++ b/syng/sources/__init__.py @@ -26,5 +26,6 @@ def configure_sources(configs: dict[str, Any]) -> dict[str, Source]: configured_sources = {} for source, config in configs.items(): if source in available_sources: - configured_sources[source] = available_sources[source](config) + if config["enabled"]: + configured_sources[source] = available_sources[source](config) return configured_sources diff --git a/syng/sources/filebased.py b/syng/sources/filebased.py index 64577e2..dc59be0 100644 --- a/syng/sources/filebased.py +++ b/syng/sources/filebased.py @@ -19,7 +19,7 @@ class FileBasedSource(Source): "extensions": ( list, "List of filename extensions\n(mp3+cdg, mp4, ...)", - "mp3+cdg", + ["mp3+cdg"], ) } diff --git a/syng/static/syng.png b/syng/static/syng.png new file mode 100644 index 0000000000000000000000000000000000000000..f60bac32ed97c20fc84a596e86e1260a83cfade6 GIT binary patch literal 43591 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 literal 0 HcmV?d00001