Merge branch 'view' into UI_2.0
This commit is contained in:
12
view.py
12
view.py
@@ -24,7 +24,6 @@ class View():
|
||||
self.settings.main = SimpleNamespace(
|
||||
ctm=all_ctm.main,
|
||||
uism=all_uism.main,
|
||||
IS_SIDEBAR_COMPACT_MODE=False,
|
||||
COMPACT_MODE_ICON_SIZE=0,
|
||||
**common_args
|
||||
)
|
||||
@@ -38,6 +37,10 @@ class View():
|
||||
|
||||
self.view_variable = SimpleNamespace(
|
||||
# Main Window
|
||||
# Sidebar Compact Mode
|
||||
IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE=False,
|
||||
CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE=None,
|
||||
|
||||
# Sidebar Features
|
||||
VAR_LABEL_TRANSLATION=StringVar(value="Translation"),
|
||||
CALLBACK_TOGGLE_TRANSLATION=None,
|
||||
@@ -211,6 +214,8 @@ class View():
|
||||
|
||||
def register(self, sidebar_features, language_presets, entry_message_box_commands, config_window):
|
||||
|
||||
self.view_variable.CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = self._toggleMainWindowSidebarCompactMode
|
||||
|
||||
vrct_gui.CALLBACK_TOGGLE_TRANSLATION = sidebar_features["callback_toggle_translation"]
|
||||
vrct_gui.CALLBACK_TOGGLE_TRANSCRIPTION_SEND = sidebar_features["callback_toggle_transcription_send"]
|
||||
vrct_gui.CALLBACK_TOGGLE_TRANSCRIPTION_RECEIVE = sidebar_features["callback_toggle_transcription_receive"]
|
||||
@@ -325,6 +330,11 @@ class View():
|
||||
vrct_gui.attributes("-topmost", False)
|
||||
|
||||
|
||||
def _toggleMainWindowSidebarCompactMode(self, is_turned_on):
|
||||
self.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = is_turned_on
|
||||
vrct_gui.recreateMainWindowSidebar()
|
||||
|
||||
|
||||
def updateGuiVariableByPresetTabNo(self, tab_no:str):
|
||||
self.view_variable.VAR_YOUR_LANGUAGE.set(config.SELECTED_TAB_YOUR_LANGUAGES[tab_no])
|
||||
self.view_variable.VAR_TARGET_LANGUAGE.set(config.SELECTED_TAB_TARGET_LANGUAGES[tab_no])
|
||||
|
||||
@@ -85,7 +85,7 @@ def _changeMainWindowWidgetsStatus(vrct_gui, settings, status, target_names):
|
||||
vrct_gui.sls__container_title.configure(text_color=settings.ctm.SF__TEXT_DISABLED_COLOR)
|
||||
vrct_gui.sls__title_text_your_language.configure(text_color=settings.ctm.SF__TEXT_DISABLED_COLOR)
|
||||
vrct_gui.sls__title_text_target_language.configure(text_color=settings.ctm.SF__TEXT_DISABLED_COLOR)
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is False:
|
||||
if vrct_gui.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is False:
|
||||
vrct_gui.current_active_preset_tab.children["!ctklabel"].configure(text_color=settings.ctm.SLS__PRESETS_TAB_ACTIVE_TEXT_COLOR_PASSIVE)
|
||||
vrct_gui.sls__optionmenu_your_language.configure(state="disabled")
|
||||
vrct_gui.sls__optionmenu_target_language.configure(state="disabled")
|
||||
@@ -94,7 +94,7 @@ def _changeMainWindowWidgetsStatus(vrct_gui, settings, status, target_names):
|
||||
vrct_gui.sls__container_title.configure(text_color=settings.ctm.LABELS_TEXT_COLOR)
|
||||
vrct_gui.sls__title_text_your_language.configure(text_color=settings.ctm.LABELS_TEXT_COLOR)
|
||||
vrct_gui.sls__title_text_target_language.configure(text_color=settings.ctm.LABELS_TEXT_COLOR)
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is False:
|
||||
if vrct_gui.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is False:
|
||||
vrct_gui.current_active_preset_tab.children["!ctklabel"].configure(text_color=settings.ctm.SLS__PRESETS_TAB_ACTIVE_TEXT_COLOR)
|
||||
vrct_gui.current_active_preset_tab.children["!ctklabel"].configure(text_color=settings.ctm.SLS__PRESETS_TAB_ACTIVE_TEXT_COLOR)
|
||||
vrct_gui.sls__optionmenu_your_language.configure(state="normal")
|
||||
@@ -120,7 +120,7 @@ def _changeMainWindowWidgetsStatus(vrct_gui, settings, status, target_names):
|
||||
vrct_gui.minimize_sidebar_button_container.configure(cursor="")
|
||||
|
||||
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is True:
|
||||
if vrct_gui.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True:
|
||||
image_file = CTkImage(getImageFileFromUiUtils(settings.image_filename.ARROW_LEFT_DISABLED).rotate(180), size=LOGO_SIZE)
|
||||
else:
|
||||
image_file = CTkImage(getImageFileFromUiUtils(settings.image_filename.ARROW_LEFT_DISABLED), size=LOGO_SIZE)
|
||||
@@ -128,7 +128,7 @@ def _changeMainWindowWidgetsStatus(vrct_gui, settings, status, target_names):
|
||||
|
||||
elif status == "normal":
|
||||
vrct_gui.minimize_sidebar_button_container.configure(cursor="hand2")
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is True:
|
||||
if vrct_gui.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True:
|
||||
image_file = CTkImage(getImageFileFromUiUtils(settings.image_filename.ARROW_LEFT).rotate(180), size=LOGO_SIZE)
|
||||
else:
|
||||
image_file = CTkImage(getImageFileFromUiUtils(settings.image_filename.ARROW_LEFT), size=LOGO_SIZE)
|
||||
|
||||
@@ -3,24 +3,16 @@ from customtkinter import CTkFrame, CTkLabel, CTkImage
|
||||
|
||||
from ...ui_utils import getImageFileFromUiUtils, bindEnterAndLeaveColor, bindButtonPressColor, bindButtonReleaseFunction
|
||||
|
||||
from .create_sidebar import createSidebar
|
||||
|
||||
from utils import callFunctionIfCallable
|
||||
|
||||
def createMinimizeSidebarButton(settings, main_window):
|
||||
|
||||
def enableCompactMode(e):
|
||||
settings.IS_SIDEBAR_COMPACT_MODE = True
|
||||
main_window.minimize_sidebar_button_container.destroy()
|
||||
createMinimizeSidebarButton(settings, main_window)
|
||||
main_window.sidebar_bg_container.destroy()
|
||||
createSidebar(settings, main_window)
|
||||
callFunctionIfCallable(main_window.view_variable.CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE, True)
|
||||
|
||||
def disableCompactMode(e):
|
||||
settings.IS_SIDEBAR_COMPACT_MODE = False
|
||||
main_window.minimize_sidebar_button_container.destroy()
|
||||
createMinimizeSidebarButton(settings, main_window)
|
||||
main_window.sidebar_bg_container.destroy()
|
||||
createSidebar(settings, main_window)
|
||||
callFunctionIfCallable(main_window.view_variable.CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE, False)
|
||||
|
||||
|
||||
|
||||
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)
|
||||
@@ -36,7 +28,7 @@ def createMinimizeSidebarButton(settings, main_window):
|
||||
)
|
||||
|
||||
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is True:
|
||||
if main_window.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True:
|
||||
image_file = CTkImage(getImageFileFromUiUtils(settings.image_filename.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)
|
||||
|
||||
|
||||
@@ -175,7 +175,7 @@ def createSidebar(settings, main_window):
|
||||
main_window.sidebar_bg_container.grid(row=0, column=0, sticky="nsew")
|
||||
|
||||
|
||||
MIN_SIDEBAR_WIDTH = settings.uism.COMPACT_MODE_SIDEBAR_WIDTH if settings.IS_SIDEBAR_COMPACT_MODE is True else settings.uism.SIDEBAR_WIDTH
|
||||
MIN_SIDEBAR_WIDTH = settings.uism.COMPACT_MODE_SIDEBAR_WIDTH if main_window.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True else settings.uism.SIDEBAR_WIDTH
|
||||
main_window.sidebar_bg_container.grid_columnconfigure(0, weight=0, minsize=MIN_SIDEBAR_WIDTH)
|
||||
main_window.grid_rowconfigure(0, weight=1)
|
||||
|
||||
@@ -200,7 +200,7 @@ def createSidebar(settings, main_window):
|
||||
image=CTkImage(img, size=(width,height))
|
||||
)
|
||||
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is True:
|
||||
if main_window.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True:
|
||||
main_window.sidebar_compact_mode_logo.grid(row=0, column=0, pady=(
|
||||
int(settings.uism.SF__LOGO_PADY[0]+a_s/2),
|
||||
int(settings.uism.SF__LOGO_PADY[1]+a_s/2)
|
||||
@@ -338,7 +338,7 @@ def createSidebar(settings, main_window):
|
||||
|
||||
|
||||
# Arrange
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is True:
|
||||
if main_window.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is True:
|
||||
compact_mode_icon_widget.grid(row=row, column=0, pady=settings.uism.SF__COMPACT_MODE_ICON_PADY)
|
||||
selected_mark_widget.place(relx=-1, rely=0.5, relheight=0.75, anchor="center")
|
||||
else:
|
||||
@@ -386,7 +386,7 @@ def createSidebar(settings, main_window):
|
||||
# Sidebar Quick Language Settings, SQLS
|
||||
main_window.sls__container = CTkFrame(main_window.sidebar_bg_container, corner_radius=0, fg_color=settings.ctm.SIDEBAR_BG_COLOR, width=0, height=0)
|
||||
|
||||
if settings.IS_SIDEBAR_COMPACT_MODE is False:
|
||||
if main_window.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE is False:
|
||||
main_window.sls__container.grid(row=2, column=0, sticky="new")
|
||||
|
||||
main_window.sls__container.grid_columnconfigure(0, weight=1)
|
||||
|
||||
@@ -12,6 +12,8 @@ from .main_window import createMainWindowWidgets
|
||||
from .config_window import ConfigWindow
|
||||
from .ui_utils import _setDefaultActiveTab
|
||||
|
||||
from .main_window.widgets import createSidebar, createMinimizeSidebarButton
|
||||
|
||||
|
||||
class VRCT_GUI(CTk):
|
||||
def __init__(self):
|
||||
@@ -76,6 +78,11 @@ class VRCT_GUI(CTk):
|
||||
active_text_color=self.settings.main.ctm.SLS__PRESETS_TAB_ACTIVE_TEXT_COLOR
|
||||
)
|
||||
|
||||
def recreateMainWindowSidebar(self):
|
||||
self.minimize_sidebar_button_container.destroy()
|
||||
createMinimizeSidebarButton(self.settings.main, self)
|
||||
self.sidebar_bg_container.destroy()
|
||||
createSidebar(self.settings.main, self)
|
||||
|
||||
|
||||
vrct_gui = VRCT_GUI()
|
||||
Reference in New Issue
Block a user