diff --git a/main.py b/main.py index 8aabddf..43b8224 100644 --- a/main.py +++ b/main.py @@ -16,7 +16,7 @@ def main(): root = customtkinter.CTk() root.title("Drawing Training!") - root.geometry("300x600") + root.geometry("300x300") icon = PhotoImage(file="assets/icons/logo-dt.png") root.iconphoto(True, icon) diff --git a/src/util.py b/src/util.py index 31ffe60..a90b4b0 100644 --- a/src/util.py +++ b/src/util.py @@ -47,4 +47,4 @@ class Util: @staticmethod def get_default_active_button_color(): - return "gray29", "gray29" + return "green", "green" diff --git a/src/window/app.py b/src/window/app.py index c04c44d..eb95851 100644 --- a/src/window/app.py +++ b/src/window/app.py @@ -1,3 +1,4 @@ +import tkinter from pathlib import Path from tkinter import * from tkinter import filedialog @@ -33,8 +34,8 @@ class App: self.images_len = customtkinter.CTkLabel(root, text="Found : " + str(len(self.found_images))) self.images_len.pack() - self.button_frame = Frame(root) - self.button_frame.pack(fill=X) + self.button_frame = Frame(root, bg=root.cget("bg")) + self.button_frame.pack(fill=X, expand=True) timers = [ Util.format_seconds(30), @@ -45,14 +46,15 @@ class App: Util.format_seconds(600), "Custom" ] - self.buttons = customtkinter.CTkSegmentedButton( - root, values=timers, - command=self.set_timer_in_seconds - ) - self.buttons.pack(fill=X) + + self.buttons = [] + for i, timer in enumerate(timers): + new_button = customtkinter.CTkButton(self.button_frame, width=10, text=timer, command=lambda t=timer: self.set_timer_in_seconds(t)) + new_button.pack(side=tkinter.LEFT, fill=X, expand=True) + self.buttons.append(new_button) self.launch_button = customtkinter.CTkButton(root, text="Let's draw!", command=self.lets_draw, state="disabled") - self.launch_button.pack(side="bottom") + self.launch_button.pack(side=tkinter.BOTTOM) self.read_config() @@ -73,11 +75,13 @@ class App: self.session_window.open() def select_folder(self): - self.selected_folder = filedialog.askdirectory() - self.folder_name.configure(text="Folder : " + self.selected_folder) - Config.set_config_var("default_folder", self.selected_folder).save() - self.find_images_in_folder() - self.check_lets_draw() + new_directory = filedialog.askdirectory() + if new_directory: + self.selected_folder = new_directory + self.folder_name.configure(text="Folder : " + self.selected_folder) + Config.set_config_var("default_folder", self.selected_folder).save() + self.find_images_in_folder() + self.check_lets_draw() def find_images_in_folder(self): if Path(self.selected_folder).exists(): @@ -93,6 +97,10 @@ class App: self.launch_button.configure(state="disabled") def set_timer_in_seconds(self, user_data): + # resetting buttons states + for button in self.buttons: + button.configure(fg_color=(Util.get_default_button_color() if user_data != button.cget("text") else Util.get_default_active_button_color())) + self.custom = False if user_data == "Custom": return self.custom_session() diff --git a/src/window/session.py b/src/window/session.py index 7d5ab3b..6a64032 100644 --- a/src/window/session.py +++ b/src/window/session.py @@ -45,14 +45,14 @@ class SessionWindow: text=session.number_of_drawings + " drawings of " + Util.format_seconds(int(session.timer)) + " each", command=partial(self.edit_element, i), fg_color=( - Util.get_default_button_color() if i == self.selected_element_index else Util.get_default_active_button_color()) + Util.get_default_active_button_color() if i == self.selected_element_index else Util.get_default_button_color()) ) elif isinstance(session, BreakElement): new_session = CTkButton(self.left_column, text="Break of " + Util.format_seconds(int(session.timer)) + " each", command=partial(self.edit_element, i), fg_color=( - Util.get_default_button_color() if i == self.selected_element_index else Util.get_default_active_button_color()) + Util.get_default_active_button_color() if i == self.selected_element_index else Util.get_default_button_color()) ) else: raise Exception("unknown type.")