From 5e7174501debe7ad20832dbe6b38b454f434b3d1 Mon Sep 17 00:00:00 2001 From: Sakamoto Shiina <68018796+ShiinaSakamoto@users.noreply.github.com> Date: Sun, 17 Sep 2023 09:24:27 +0900 Subject: [PATCH] =?UTF-8?q?[refactor]=20Main=20Window:=20Sidebar=E9=96=8B?= =?UTF-8?q?=E9=96=89=E3=83=9C=E3=82=BF=E3=83=B3=E3=82=92=E9=96=8B=E9=96=89?= =?UTF-8?q?=E6=99=82=E3=81=AB=E6=AF=8E=E5=9B=9Edestroy=E3=81=97=E3=81=A6wi?= =?UTF-8?q?dget=E5=86=8D=E7=94=9F=E6=88=90=E3=81=97=E3=81=A6=E3=81=84?= =?UTF-8?q?=E3=81=9F=E3=81=AE=E3=82=92=E3=80=81grid=5Fremove=E3=81=A8grid?= =?UTF-8?q?=E3=81=AB=E7=BD=AE=E3=81=8D=E6=8F=9B=E3=81=88=E3=81=A6=E3=80=81?= =?UTF-8?q?=E5=86=8D=E7=94=9F=E6=88=90=E3=81=97=E3=81=AA=E3=81=84=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AB=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vrct_gui/_changeMainWindowWidgetsStatus.py | 22 +++--- .../widgets/create_minimize_sidebar_button.py | 67 +++++++++++++------ vrct_gui/vrct_gui.py | 7 +- 3 files changed, 62 insertions(+), 34 deletions(-) diff --git a/vrct_gui/_changeMainWindowWidgetsStatus.py b/vrct_gui/_changeMainWindowWidgetsStatus.py index c2350182..eeea8cee 100644 --- a/vrct_gui/_changeMainWindowWidgetsStatus.py +++ b/vrct_gui/_changeMainWindowWidgetsStatus.py @@ -115,24 +115,26 @@ def _changeMainWindowWidgetsStatus(vrct_gui, settings, view_variable, status, ta case "minimize_sidebar_button": - LOGO_SIZE = vrct_gui.minimize_sidebar_button.cget("image").cget("size") + MINIMIZE_SIDEBAR_IMAGE_SIZE = vrct_gui.minimize_sidebar_button__for_opening.cget("image").cget("size") if status == "disabled": - vrct_gui.minimize_sidebar_button_container.configure(cursor="") - + vrct_gui.minimize_sidebar_button_container__for_opening.configure(cursor="") + vrct_gui.minimize_sidebar_button_container__for_closing.configure(cursor="") if view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True: - image_file = CTkImage((settings.image_file.ARROW_LEFT_DISABLED).rotate(180), size=LOGO_SIZE) + image_file = CTkImage((settings.image_file.ARROW_LEFT_DISABLED).rotate(180), size=MINIMIZE_SIDEBAR_IMAGE_SIZE) else: - image_file = CTkImage((settings.image_file.ARROW_LEFT_DISABLED), size=LOGO_SIZE) - vrct_gui.minimize_sidebar_button.configure(image=image_file) + image_file = CTkImage((settings.image_file.ARROW_LEFT_DISABLED), size=MINIMIZE_SIDEBAR_IMAGE_SIZE) elif status == "normal": - vrct_gui.minimize_sidebar_button_container.configure(cursor="hand2") + vrct_gui.minimize_sidebar_button_container__for_opening.configure(cursor="hand2") + vrct_gui.minimize_sidebar_button_container__for_closing.configure(cursor="hand2") + if view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True: - image_file = CTkImage((settings.image_file.ARROW_LEFT).rotate(180), size=LOGO_SIZE) + image_file = CTkImage((settings.image_file.ARROW_LEFT).rotate(180), size=MINIMIZE_SIDEBAR_IMAGE_SIZE) else: - image_file = CTkImage((settings.image_file.ARROW_LEFT), size=LOGO_SIZE) - vrct_gui.minimize_sidebar_button.configure(image=image_file) + image_file = CTkImage((settings.image_file.ARROW_LEFT), size=MINIMIZE_SIDEBAR_IMAGE_SIZE) + vrct_gui.minimize_sidebar_button__for_opening.configure(image=image_file) + vrct_gui.minimize_sidebar_button__for_closing.configure(image=image_file) case "entry_message_box": diff --git a/vrct_gui/main_window/widgets/create_minimize_sidebar_button.py b/vrct_gui/main_window/widgets/create_minimize_sidebar_button.py index 250e2ac4..8a08c1f0 100644 --- a/vrct_gui/main_window/widgets/create_minimize_sidebar_button.py +++ b/vrct_gui/main_window/widgets/create_minimize_sidebar_button.py @@ -15,36 +15,61 @@ def createMinimizeSidebarButton(settings, main_window, view_variable): - main_window.minimize_sidebar_button_container = CTkFrame(main_window.main_topbar_container, corner_radius=0, fg_color=settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR, cursor="hand2", width=0, height=0) + main_window.minimize_sidebar_button_container__for_closing = CTkFrame(main_window.main_topbar_container, corner_radius=0, fg_color=settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR, cursor="hand2", width=0, height=0) + main_window.minimize_sidebar_button_container__for_opening = CTkFrame(main_window.main_topbar_container, corner_radius=0, fg_color=settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR, cursor="hand2", width=0, height=0) - main_window.minimize_sidebar_button = CTkLabel( - main_window.minimize_sidebar_button_container, + + # For Closing [<] + main_window.minimize_sidebar_button__for_closing = CTkLabel( + main_window.minimize_sidebar_button_container__for_closing, text=None, corner_radius=0, height=0, image=CTkImage((settings.image_file.ARROW_LEFT),size=(settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_X,settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_Y)) ) + main_window.minimize_sidebar_button_container__for_closing.grid_rowconfigure((0,2), weight=1) + main_window.minimize_sidebar_button__for_closing.grid(row=1, column=0, padx=0, pady=0) + + bindEnterAndLeaveColor([main_window.minimize_sidebar_button__for_closing, main_window.minimize_sidebar_button_container__for_closing], settings.ctm.MINIMIZE_SIDEBAR_BUTTON_HOVERED_BG_COLOR, settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR) + bindButtonPressColor([main_window.minimize_sidebar_button__for_closing, main_window.minimize_sidebar_button_container__for_closing], settings.ctm.MINIMIZE_SIDEBAR_BUTTON_CLICKED_BG_COLOR, settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR) + bindButtonReleaseFunction([main_window.minimize_sidebar_button_container__for_closing, main_window.minimize_sidebar_button__for_closing], enableCompactMode) + + + + +# For Opening [>] + main_window.minimize_sidebar_button__for_opening = CTkLabel( + main_window.minimize_sidebar_button_container__for_opening, + text=None, + corner_radius=0, + height=0, + image=CTkImage((settings.image_file.ARROW_LEFT).rotate(180),size=(settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_X,settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_Y)) + ) + + + + + main_window.minimize_sidebar_button_container__for_opening.grid_rowconfigure((0,2), weight=1) + main_window.minimize_sidebar_button__for_opening.grid(row=1, column=0, padx=0, pady=0) + + + bindEnterAndLeaveColor([main_window.minimize_sidebar_button__for_opening, main_window.minimize_sidebar_button_container__for_opening], settings.ctm.MINIMIZE_SIDEBAR_BUTTON_HOVERED_BG_COLOR, settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR) + bindButtonPressColor([main_window.minimize_sidebar_button__for_opening, main_window.minimize_sidebar_button_container__for_opening], settings.ctm.MINIMIZE_SIDEBAR_BUTTON_CLICKED_BG_COLOR, settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR) + bindButtonReleaseFunction([main_window.minimize_sidebar_button_container__for_opening, main_window.minimize_sidebar_button__for_opening], disableCompactMode) + + + + + + main_window.minimize_sidebar_button_container__for_opening.grid(row=0, column=0, sticky="nsw") + main_window.minimize_sidebar_button_container__for_closing.grid(row=0, column=0, sticky="nsw") + main_window.minimize_sidebar_button_container__for_opening.grid_remove() + main_window.minimize_sidebar_button_container__for_closing.grid_remove() if view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True: - image_file = CTkImage((settings.image_file.ARROW_LEFT).rotate(180),size=(settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_X,settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_Y)) - bindButtonReleaseFunction([main_window.minimize_sidebar_button_container, main_window.minimize_sidebar_button], disableCompactMode) - + main_window.minimize_sidebar_button_container__for_opening.grid() else: - image_file = CTkImage((settings.image_file.ARROW_LEFT),size=(settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_X,settings.uism.MINIMIZE_SIDEBAR_BUTTON_ICON_SIZE_Y)) - bindButtonReleaseFunction([main_window.minimize_sidebar_button_container, main_window.minimize_sidebar_button], enableCompactMode) - - main_window.minimize_sidebar_button_container.grid_rowconfigure((0,2), weight=1) - main_window.minimize_sidebar_button.configure(image=image_file) - main_window.minimize_sidebar_button_container.grid(row=0, column=0, sticky="nsw") - main_window.minimize_sidebar_button.grid(row=1, column=0, padx=0, pady=0) - - - bindEnterAndLeaveColor([main_window.minimize_sidebar_button, main_window.minimize_sidebar_button_container], settings.ctm.MINIMIZE_SIDEBAR_BUTTON_HOVERED_BG_COLOR, settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR) - bindButtonPressColor([main_window.minimize_sidebar_button, main_window.minimize_sidebar_button_container], settings.ctm.MINIMIZE_SIDEBAR_BUTTON_CLICKED_BG_COLOR, settings.ctm.MINIMIZE_SIDEBAR_BUTTON_BG_COLOR) - - - - + main_window.minimize_sidebar_button_container__for_closing.grid() \ No newline at end of file diff --git a/vrct_gui/vrct_gui.py b/vrct_gui/vrct_gui.py index 383bf4cd..ae343c2c 100644 --- a/vrct_gui/vrct_gui.py +++ b/vrct_gui/vrct_gui.py @@ -156,15 +156,16 @@ class VRCT_GUI(CTk): ) def recreateMainWindowSidebar(self): - self.minimize_sidebar_button_container.destroy() - createMinimizeSidebarButton(self.settings.main, self, view_variable=self._view_variable) - if self._view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE: self.sidebar_bg_container.grid_remove() self.sidebar_compact_mode_bg_container.grid() + self.minimize_sidebar_button_container__for_closing.grid_remove() + self.minimize_sidebar_button_container__for_opening.grid() else: self.sidebar_compact_mode_bg_container.grid_remove() self.sidebar_bg_container.grid() + self.minimize_sidebar_button_container__for_opening.grid_remove() + self.minimize_sidebar_button_container__for_closing.grid() vrct_gui = VRCT_GUI() \ No newline at end of file