[Refactor] View: 言語リストは view以下で表示用は表示用として処理するように。

※controller.pyからview.pyへ言語リストを渡す時、その場で表示用の文字列を作っていたのをview.py内で処理。
This commit is contained in:
Sakamoto Shiina
2024-03-09 17:15:06 +09:00
parent cb78942b8d
commit 4a85823439
3 changed files with 8 additions and 9 deletions

View File

@@ -993,7 +993,7 @@ def createMainWindow(splash):
"callback_your_language": setYourLanguageAndCountry,
"callback_target_language": setTargetLanguageAndCountry,
"values": [f"{v['language']} ({v['country']})" for v in model.getListLanguageAndCountry()],
"values": model.getListLanguageAndCountry(),
"callback_swap_languages": swapYourLanguageAndTargetLanguage,
"callback_selected_language_preset_tab": callbackSelectedLanguagePresetTab,

View File

@@ -1659,13 +1659,13 @@ class View():
def printToTextbox_selectedYourLanguages(self, selected_your_language):
language = selected_your_language["language"]
country = selected_your_language["country"]
your_language = f"{language} {country}"
your_language = f"{language} ({country})"
self._printToTextbox_Info(i18n.t("main_window.textbox_system_message.selected_your_language", your_language=your_language))
def printToTextbox_selectedTargetLanguages(self, selected_target_language):
language = selected_target_language["language"]
country = selected_target_language["country"]
target_language = f"{language} {country}"
target_language = f"{language} ({country})"
self._printToTextbox_Info(i18n.t("main_window.textbox_system_message.selected_target_language", target_language=target_language))
def printToTextbox_changedLanguagePresetTab(self, tab_no:str):

View File

@@ -49,8 +49,8 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
def callbackSelectableLanguages(self, value, _e):
language, country = value.split(" (")
country = country[:-1]
language = value["language"]
country = value["country"]
callback_value = {
"language" : language,
"country" : country,
@@ -143,7 +143,7 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
max_row+=1
row=0
column=0
for selectable_language_name in self._view_variable.LIST_SELECTABLE_LANGUAGES:
for selectable_language_dict in self._view_variable.LIST_SELECTABLE_LANGUAGES:
self.wrapper = CTkFrame(self.container, corner_radius=0, fg_color=self.settings.ctm.LANGUAGE_BUTTON_BG_COLOR, width=0, height=0, cursor="hand2")
self.wrapper.grid(row=row, column=column, sticky="nsew")
@@ -152,10 +152,9 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
self.wrapper.grid_rowconfigure((0,2), weight=1)
selectable_language_name_for_text = selectable_language_name.replace("\n", " ")
label_widget = CTkLabel(
self.wrapper,
text=selectable_language_name_for_text,
text=f"{selectable_language_dict['language']} ({selectable_language_dict['country']})",
height=0,
corner_radius=0,
font=CTkFont(family=self.settings.FONT_FAMILY, size=self.settings.uism.VALUES_TEXT_FONT_SIZE, weight="normal"),
@@ -172,7 +171,7 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
callback = partial(self.callbackSelectableLanguages, selectable_language_name)
callback = partial(self.callbackSelectableLanguages, selectable_language_dict)
bindButtonReleaseFunction([self.wrapper, label_widget], callback)
if row == max_row: