[Update/bugfix/Refactor] Main Window: Sidebar Compact Mode 有効無効値がjsonに保存されていなかったのを修正、起動時も保持されるように。 コンパクトモード有効無効関数分け。 main.pyで受け取るmain window系 callback関数のkeyをまとめた。
This commit is contained in:
12
config.py
12
config.py
@@ -181,6 +181,17 @@ class Config:
|
|||||||
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
||||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||||
|
|
||||||
|
@property
|
||||||
|
@json_serializable('IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE')
|
||||||
|
def IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE(self):
|
||||||
|
return self._IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE
|
||||||
|
|
||||||
|
@IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE.setter
|
||||||
|
def IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE(self, value):
|
||||||
|
if type(value) is bool:
|
||||||
|
self._IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = value
|
||||||
|
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||||
|
|
||||||
## Config Window
|
## Config Window
|
||||||
@property
|
@property
|
||||||
@json_serializable('TRANSPARENCY')
|
@json_serializable('TRANSPARENCY')
|
||||||
@@ -542,6 +553,7 @@ class Config:
|
|||||||
"2":"English\n(United States)",
|
"2":"English\n(United States)",
|
||||||
"3":"English\n(United States)",
|
"3":"English\n(United States)",
|
||||||
}
|
}
|
||||||
|
self._IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = False
|
||||||
|
|
||||||
## Config Window
|
## Config Window
|
||||||
self._TRANSPARENCY = 100
|
self._TRANSPARENCY = 100
|
||||||
|
|||||||
18
main.py
18
main.py
@@ -270,6 +270,14 @@ def callbackToggleForeground(is_turned_on):
|
|||||||
view.printToTextbox_disableForeground()
|
view.printToTextbox_disableForeground()
|
||||||
view.foregroundOff()
|
view.foregroundOff()
|
||||||
|
|
||||||
|
def callbackEnableMainWindowSidebarCompactMode():
|
||||||
|
config.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = True
|
||||||
|
view.enableMainWindowSidebarCompactMode()
|
||||||
|
|
||||||
|
def callbackDisableMainWindowSidebarCompactMode():
|
||||||
|
config.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = False
|
||||||
|
view.disableMainWindowSidebarCompactMode()
|
||||||
|
|
||||||
# Config Window
|
# Config Window
|
||||||
def callbackOpenConfigWindow():
|
def callbackOpenConfigWindow():
|
||||||
view.setMainWindowAllWidgetsStatusToDisabled()
|
view.setMainWindowAllWidgetsStatusToDisabled()
|
||||||
@@ -610,22 +618,20 @@ view.register(
|
|||||||
"callback_close_config_window": callbackCloseConfigWindow,
|
"callback_close_config_window": callbackCloseConfigWindow,
|
||||||
},
|
},
|
||||||
|
|
||||||
sidebar_features_registers={
|
main_window_registers={
|
||||||
|
"callback_enable_main_window_sidebar_compact_mode": callbackEnableMainWindowSidebarCompactMode,
|
||||||
|
"callback_disable_main_window_sidebar_compact_mode": callbackDisableMainWindowSidebarCompactMode,
|
||||||
|
|
||||||
"callback_toggle_translation": callbackToggleTranslation,
|
"callback_toggle_translation": callbackToggleTranslation,
|
||||||
"callback_toggle_transcription_send": callbackToggleTranscriptionSend,
|
"callback_toggle_transcription_send": callbackToggleTranscriptionSend,
|
||||||
"callback_toggle_transcription_receive": callbackToggleTranscriptionReceive,
|
"callback_toggle_transcription_receive": callbackToggleTranscriptionReceive,
|
||||||
"callback_toggle_foreground": callbackToggleForeground,
|
"callback_toggle_foreground": callbackToggleForeground,
|
||||||
},
|
|
||||||
|
|
||||||
language_presets_registers={
|
|
||||||
"callback_your_language": setYourLanguageAndCountry,
|
"callback_your_language": setYourLanguageAndCountry,
|
||||||
"callback_target_language": setTargetLanguageAndCountry,
|
"callback_target_language": setTargetLanguageAndCountry,
|
||||||
"values": model.getListLanguageAndCountry(),
|
"values": model.getListLanguageAndCountry(),
|
||||||
|
|
||||||
"callback_selected_language_preset_tab": callbackSelectedLanguagePresetTab,
|
"callback_selected_language_preset_tab": callbackSelectedLanguagePresetTab,
|
||||||
},
|
|
||||||
|
|
||||||
entry_message_box_registers={
|
|
||||||
"bind_Return": messageBoxPressKeyEnter,
|
"bind_Return": messageBoxPressKeyEnter,
|
||||||
"bind_Any_KeyPress": messageBoxPressKeyAny,
|
"bind_Any_KeyPress": messageBoxPressKeyAny,
|
||||||
},
|
},
|
||||||
|
|||||||
65
view.py
65
view.py
@@ -68,7 +68,7 @@ class View():
|
|||||||
# Main Window
|
# Main Window
|
||||||
# Sidebar
|
# Sidebar
|
||||||
# Sidebar Compact Mode
|
# Sidebar Compact Mode
|
||||||
IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE=False,
|
IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE=config.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE,
|
||||||
CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE=None,
|
CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE=None,
|
||||||
|
|
||||||
# Sidebar Features
|
# Sidebar Features
|
||||||
@@ -307,9 +307,7 @@ class View():
|
|||||||
def register(
|
def register(
|
||||||
self,
|
self,
|
||||||
window_action_registers=None,
|
window_action_registers=None,
|
||||||
sidebar_features_registers=None,
|
main_window_registers=None,
|
||||||
language_presets_registers=None,
|
|
||||||
entry_message_box_registers=None,
|
|
||||||
config_window_registers=None
|
config_window_registers=None
|
||||||
):
|
):
|
||||||
|
|
||||||
@@ -321,39 +319,35 @@ class View():
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
self.view_variable.CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = self._toggleMainWindowSidebarCompactMode
|
|
||||||
|
|
||||||
if sidebar_features_registers is not None:
|
if main_window_registers is not None:
|
||||||
self.view_variable.CALLBACK_TOGGLE_TRANSLATION = sidebar_features_registers.get("callback_toggle_translation", None)
|
self.view_variable.CALLBACK_ENABLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = main_window_registers.get("callback_enable_main_window_sidebar_compact_mode", None)
|
||||||
self.view_variable.CALLBACK_TOGGLE_TRANSCRIPTION_SEND = sidebar_features_registers.get("callback_toggle_transcription_send", None)
|
self.view_variable.CALLBACK_DISABLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = main_window_registers.get("callback_disable_main_window_sidebar_compact_mode", None)
|
||||||
self.view_variable.CALLBACK_TOGGLE_TRANSCRIPTION_RECEIVE = sidebar_features_registers.get("callback_toggle_transcription_receive", None)
|
|
||||||
self.view_variable.CALLBACK_TOGGLE_FOREGROUND = sidebar_features_registers.get("callback_toggle_foreground", None)
|
|
||||||
|
|
||||||
if language_presets_registers is not None:
|
|
||||||
self.view_variable.CALLBACK_SELECTED_YOUR_LANGUAGE = language_presets_registers.get("callback_your_language", None)
|
|
||||||
self.view_variable.CALLBACK_SELECTED_TARGET_LANGUAGE = language_presets_registers.get("callback_target_language", None)
|
|
||||||
language_presets_registers.get("values", None) and self.updateList_selectableLanguages(language_presets_registers["values"])
|
|
||||||
|
|
||||||
self.view_variable.CALLBACK_SELECTED_LANGUAGE_PRESET_TAB = language_presets_registers.get("callback_selected_language_preset_tab", None)
|
self.view_variable.CALLBACK_TOGGLE_TRANSLATION = main_window_registers.get("callback_toggle_translation", None)
|
||||||
|
self.view_variable.CALLBACK_TOGGLE_TRANSCRIPTION_SEND = main_window_registers.get("callback_toggle_transcription_send", None)
|
||||||
|
self.view_variable.CALLBACK_TOGGLE_TRANSCRIPTION_RECEIVE = main_window_registers.get("callback_toggle_transcription_receive", None)
|
||||||
|
self.view_variable.CALLBACK_TOGGLE_FOREGROUND = main_window_registers.get("callback_toggle_foreground", None)
|
||||||
|
|
||||||
|
self.view_variable.CALLBACK_SELECTED_YOUR_LANGUAGE = main_window_registers.get("callback_your_language", None)
|
||||||
|
self.view_variable.CALLBACK_SELECTED_TARGET_LANGUAGE = main_window_registers.get("callback_target_language", None)
|
||||||
|
main_window_registers.get("values", None) and self.updateList_selectableLanguages(main_window_registers["values"])
|
||||||
|
|
||||||
|
self.view_variable.CALLBACK_SELECTED_LANGUAGE_PRESET_TAB = main_window_registers.get("callback_selected_language_preset_tab", None)
|
||||||
|
|
||||||
|
|
||||||
|
entry_message_box = getattr(vrct_gui, "entry_message_box")
|
||||||
|
entry_message_box.bind("<Return>", main_window_registers.get("bind_Return"))
|
||||||
|
entry_message_box.bind("<Any-KeyPress>", main_window_registers.get("bind_Any_KeyPress"))
|
||||||
|
|
||||||
|
|
||||||
|
entry_message_box.bind("<FocusIn>", self._foregroundOffForcefully)
|
||||||
|
entry_message_box.bind("<FocusOut>", self._foregroundOnForcefully)
|
||||||
|
|
||||||
self.updateGuiVariableByPresetTabNo(config.SELECTED_TAB_NO)
|
self.updateGuiVariableByPresetTabNo(config.SELECTED_TAB_NO)
|
||||||
vrct_gui.setDefaultActiveLanguagePresetTab(tab_no=config.SELECTED_TAB_NO)
|
vrct_gui.setDefaultActiveLanguagePresetTab(tab_no=config.SELECTED_TAB_NO)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
self.view_variable.CALLBACK_OPEN_SELECTABLE_YOUR_LANGUAGE_WINDOW = self.openSelectableLanguagesWindow_YourLanguage
|
|
||||||
self.view_variable.CALLBACK_OPEN_SELECTABLE_TARGET_LANGUAGE_WINDOW = self.openSelectableLanguagesWindow_TargetLanguage
|
|
||||||
|
|
||||||
entry_message_box = getattr(vrct_gui, "entry_message_box")
|
|
||||||
if entry_message_box_registers is not None:
|
|
||||||
entry_message_box.bind("<Return>", entry_message_box_registers.get("bind_Return"))
|
|
||||||
entry_message_box.bind("<Any-KeyPress>", entry_message_box_registers.get("bind_Any_KeyPress"))
|
|
||||||
|
|
||||||
|
|
||||||
entry_message_box.bind("<FocusIn>", self._foregroundOffForcefully)
|
|
||||||
entry_message_box.bind("<FocusOut>", self._foregroundOnForcefully)
|
|
||||||
|
|
||||||
|
|
||||||
# Config Window
|
# Config Window
|
||||||
self.view_variable.CALLBACK_SELECTED_SETTING_BOX_TAB=self._updateActiveSettingBoxTabNo
|
self.view_variable.CALLBACK_SELECTED_SETTING_BOX_TAB=self._updateActiveSettingBoxTabNo
|
||||||
|
|
||||||
@@ -470,13 +464,18 @@ class View():
|
|||||||
vrct_gui.attributes("-topmost", False)
|
vrct_gui.attributes("-topmost", False)
|
||||||
|
|
||||||
|
|
||||||
def _toggleMainWindowSidebarCompactMode(self, is_turned_on):
|
def enableMainWindowSidebarCompactMode(self):
|
||||||
self.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = is_turned_on
|
self.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = True
|
||||||
vrct_gui.recreateMainWindowSidebar()
|
vrct_gui.enableMainWindowSidebarCompactMode()
|
||||||
|
|
||||||
|
def disableMainWindowSidebarCompactMode(self):
|
||||||
|
self.view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = False
|
||||||
|
vrct_gui.disableMainWindowSidebarCompactMode()
|
||||||
|
|
||||||
def openSelectableLanguagesWindow_YourLanguage(self, _e):
|
def openSelectableLanguagesWindow_YourLanguage(self, _e):
|
||||||
self.view_variable.VAR_TITLE_LABEL_SELECTABLE_LANGUAGE.set(i18n.t("selectable_language_window.title_your_language"))
|
self.view_variable.VAR_TITLE_LABEL_SELECTABLE_LANGUAGE.set(i18n.t("selectable_language_window.title_your_language"))
|
||||||
vrct_gui.openSelectableLanguagesWindow("your_language")
|
vrct_gui.openSelectableLanguagesWindow("your_language")
|
||||||
|
|
||||||
def openSelectableLanguagesWindow_TargetLanguage(self, _e):
|
def openSelectableLanguagesWindow_TargetLanguage(self, _e):
|
||||||
self.view_variable.VAR_TITLE_LABEL_SELECTABLE_LANGUAGE.set(i18n.t("selectable_language_window.title_target_language"))
|
self.view_variable.VAR_TITLE_LABEL_SELECTABLE_LANGUAGE.set(i18n.t("selectable_language_window.title_target_language"))
|
||||||
vrct_gui.openSelectableLanguagesWindow("target_language")
|
vrct_gui.openSelectableLanguagesWindow("target_language")
|
||||||
|
|||||||
@@ -8,10 +8,10 @@ from utils import callFunctionIfCallable
|
|||||||
def createMinimizeSidebarButton(settings, main_window, view_variable):
|
def createMinimizeSidebarButton(settings, main_window, view_variable):
|
||||||
|
|
||||||
def enableCompactMode(e):
|
def enableCompactMode(e):
|
||||||
callFunctionIfCallable(view_variable.CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE, True)
|
callFunctionIfCallable(view_variable.CALLBACK_ENABLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE)
|
||||||
|
|
||||||
def disableCompactMode(e):
|
def disableCompactMode(e):
|
||||||
callFunctionIfCallable(view_variable.CALLBACK_TOGGLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE, False)
|
callFunctionIfCallable(view_variable.CALLBACK_DISABLE_MAIN_WINDOW_SIDEBAR_COMPACT_MODE)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -147,17 +147,17 @@ class VRCT_GUI(CTk):
|
|||||||
active_text_color=self.settings.main.ctm.SLS__PRESETS_TAB_ACTIVE_TEXT_COLOR
|
active_text_color=self.settings.main.ctm.SLS__PRESETS_TAB_ACTIVE_TEXT_COLOR
|
||||||
)
|
)
|
||||||
|
|
||||||
def recreateMainWindowSidebar(self):
|
def enableMainWindowSidebarCompactMode(self):
|
||||||
if self._view_variable.IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE:
|
self.sidebar_bg_container.grid_remove()
|
||||||
self.sidebar_bg_container.grid_remove()
|
self.sidebar_compact_mode_bg_container.grid()
|
||||||
self.sidebar_compact_mode_bg_container.grid()
|
self.minimize_sidebar_button_container__for_closing.grid_remove()
|
||||||
self.minimize_sidebar_button_container__for_closing.grid_remove()
|
self.minimize_sidebar_button_container__for_opening.grid()
|
||||||
self.minimize_sidebar_button_container__for_opening.grid()
|
|
||||||
else:
|
def disableMainWindowSidebarCompactMode(self):
|
||||||
self.sidebar_compact_mode_bg_container.grid_remove()
|
self.sidebar_compact_mode_bg_container.grid_remove()
|
||||||
self.sidebar_bg_container.grid()
|
self.sidebar_bg_container.grid()
|
||||||
self.minimize_sidebar_button_container__for_opening.grid_remove()
|
self.minimize_sidebar_button_container__for_opening.grid_remove()
|
||||||
self.minimize_sidebar_button_container__for_closing.grid()
|
self.minimize_sidebar_button_container__for_closing.grid()
|
||||||
|
|
||||||
|
|
||||||
vrct_gui = VRCT_GUI()
|
vrct_gui = VRCT_GUI()
|
||||||
Reference in New Issue
Block a user