[refactor] Main Window: Sidebar開閉ボタンを開閉時に毎回destroyしてwidget再生成していたのを、grid_removeとgridに置き換えて、再生成しないように。

This commit is contained in:
Sakamoto Shiina
2023-09-17 09:24:27 +09:00
parent 7f888ea08a
commit 5e7174501d
3 changed files with 62 additions and 34 deletions

View File

@@ -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":