🐛[bugfix] Config : 言語設定のlanguage, countryの表現方法を見直し
見直しに伴い、処理方法を修正
This commit is contained in:
52
config.py
52
config.py
@@ -289,15 +289,17 @@ class Config:
|
||||
|
||||
@SELECTED_TAB_YOUR_LANGUAGES.setter
|
||||
def SELECTED_TAB_YOUR_LANGUAGES(self, value):
|
||||
if isinstance(value, dict):
|
||||
value_old = self.SELECTED_TAB_YOUR_LANGUAGES
|
||||
for k, v in value.items():
|
||||
lang, country = v.split("\n")
|
||||
country = country[1:-1]
|
||||
if lang not in list(transcription_lang.keys()) or country not in list(transcription_lang[lang].keys()):
|
||||
value[k] = value_old[k]
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
try:
|
||||
if isinstance(value, dict):
|
||||
value_old = self.SELECTED_TAB_YOUR_LANGUAGES
|
||||
for k, v in value.items():
|
||||
lang, country = list(v.items())[0]
|
||||
if lang not in list(transcription_lang.keys()) or country not in list(transcription_lang[lang].keys()):
|
||||
value[k] = value_old[k]
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = value
|
||||
except Exception:
|
||||
pass
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('SELECTED_TAB_TARGET_LANGUAGES')
|
||||
@@ -306,15 +308,17 @@ class Config:
|
||||
|
||||
@SELECTED_TAB_TARGET_LANGUAGES.setter
|
||||
def SELECTED_TAB_TARGET_LANGUAGES(self, value):
|
||||
if isinstance(value, dict):
|
||||
value_old = self.SELECTED_TAB_TARGET_LANGUAGES
|
||||
for k, v in value.items():
|
||||
lang, country = v.split("\n")
|
||||
country = country[1:-1]
|
||||
if lang not in list(transcription_lang.keys()) or country not in list(transcription_lang[lang].keys()):
|
||||
value[k] = value_old[k]
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
try:
|
||||
if isinstance(value, dict):
|
||||
value_old = self.SELECTED_TAB_TARGET_LANGUAGES
|
||||
for k, v in value.items():
|
||||
lang, country = list(v.items())[0]
|
||||
if lang not in list(transcription_lang.keys()) or country not in list(transcription_lang[lang].keys()):
|
||||
value[k] = value_old[k]
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
||||
except Exception:
|
||||
pass
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('SELECTED_TRANSCRIPTION_ENGINE')
|
||||
@@ -898,14 +902,14 @@ class Config:
|
||||
"3":"CTranslate2",
|
||||
}
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = {
|
||||
"1":"Japanese\n(Japan)",
|
||||
"2":"Japanese\n(Japan)",
|
||||
"3":"Japanese\n(Japan)",
|
||||
"1":{"Japanese":"Japan"},
|
||||
"2":{"Japanese":"Japan"},
|
||||
"3":{"Japanese":"Japan"},
|
||||
}
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = {
|
||||
"1":"English\n(United States)",
|
||||
"2":"English\n(United States)",
|
||||
"3":"English\n(United States)",
|
||||
"1":{"English":"United States"},
|
||||
"2":{"English":"United States"},
|
||||
"3":{"English":"United States"},
|
||||
}
|
||||
self._SELECTED_TRANSCRIPTION_ENGINE = "Google"
|
||||
self._IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = False
|
||||
|
||||
@@ -292,11 +292,11 @@ def initSetTranslateEngine():
|
||||
|
||||
def initSetLanguageAndCountry():
|
||||
select = config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
language, country = list(select.items())[0]
|
||||
config.SOURCE_LANGUAGE = language
|
||||
config.SOURCE_COUNTRY = country
|
||||
select = config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
language, country = list(select.items())[0]
|
||||
config.TARGET_LANGUAGE = language
|
||||
config.TARGET_COUNTRY = country
|
||||
|
||||
@@ -316,7 +316,7 @@ def setYourLanguageAndCountry(select):
|
||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||
languages[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_YOUR_LANGUAGES = languages
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
language, country = list(select.items())[0]
|
||||
config.SOURCE_LANGUAGE = language
|
||||
config.SOURCE_COUNTRY = country
|
||||
updateTranslationEngineAndEngineList()
|
||||
@@ -326,7 +326,7 @@ def setTargetLanguageAndCountry(select):
|
||||
languages = config.SELECTED_TAB_TARGET_LANGUAGES
|
||||
languages[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_TARGET_LANGUAGES = languages
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
language, country = list(select.items())[0]
|
||||
config.TARGET_LANGUAGE = language
|
||||
config.TARGET_COUNTRY = country
|
||||
updateTranslationEngineAndEngineList()
|
||||
@@ -355,13 +355,13 @@ def callbackSelectedLanguagePresetTab(selected_tab_no):
|
||||
|
||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||
select = languages[config.SELECTED_TAB_NO]
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
language, country = list(select.items())[0]
|
||||
config.SOURCE_LANGUAGE = language
|
||||
config.SOURCE_COUNTRY = country
|
||||
|
||||
languages = config.SELECTED_TAB_TARGET_LANGUAGES
|
||||
select = languages[config.SELECTED_TAB_NO]
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
language, country = list(select.items())[0]
|
||||
config.TARGET_LANGUAGE = language
|
||||
config.TARGET_COUNTRY = country
|
||||
view.printToTextbox_changedLanguagePresetTab(config.SELECTED_TAB_NO)
|
||||
|
||||
7
model.py
7
model.py
@@ -120,13 +120,6 @@ class Model:
|
||||
langs.append(f"{lang}\n({country})")
|
||||
return sorted(langs)
|
||||
|
||||
@staticmethod
|
||||
def getLanguageAndCountry(select):
|
||||
parts = select.split("\n")
|
||||
language = parts[0]
|
||||
country = parts[1][1:-1]
|
||||
return language, country
|
||||
|
||||
def findTranslationEngines(self, source_lang, target_lang):
|
||||
compatible_engines = []
|
||||
for engine in list(translation_lang.keys()):
|
||||
|
||||
10
view.py
10
view.py
@@ -1508,8 +1508,10 @@ class View():
|
||||
|
||||
# Update GuiVariable (view_variable)
|
||||
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])
|
||||
your_language, your_country = list(config.SELECTED_TAB_YOUR_LANGUAGES[tab_no].items())[0]
|
||||
self.view_variable.VAR_YOUR_LANGUAGE.set(f"{your_language}\n({your_country})")
|
||||
target_language, target_country = list(config.SELECTED_TAB_TARGET_LANGUAGES[tab_no].items())[0]
|
||||
self.view_variable.VAR_TARGET_LANGUAGE.set(f"{target_language}\n({target_country})")
|
||||
|
||||
|
||||
def updateList_selectableLanguages(self, new_selectable_language_list:list):
|
||||
@@ -1651,11 +1653,11 @@ class View():
|
||||
|
||||
|
||||
def printToTextbox_selectedYourLanguages(self, selected_your_language):
|
||||
your_language = selected_your_language.replace("\n", " ")
|
||||
your_language = ' '.join(f'{k} {v}' for k, v in selected_your_language.items())
|
||||
self._printToTextbox_Info(i18n.t("main_window.textbox_system_message.selected_your_language", your_language=your_language))
|
||||
|
||||
def printToTextbox_selectedTargetLanguages(self, selected_target_language):
|
||||
target_language = selected_target_language.replace("\n", " ")
|
||||
target_language = ' '.join(f'{k} {v}' for k, v in selected_target_language.items())
|
||||
self._printToTextbox_Info(i18n.t("main_window.textbox_system_message.selected_target_language", target_language=target_language))
|
||||
|
||||
def printToTextbox_changedLanguagePresetTab(self, tab_no:str):
|
||||
|
||||
@@ -49,6 +49,9 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
|
||||
|
||||
|
||||
def callbackSelectableLanguages(self, value, _e):
|
||||
language, country = value.split("\n")
|
||||
country = country[1:-1]
|
||||
callback_value = {language: country}
|
||||
if self.selectable_language_window_type == "your_language":
|
||||
callback = self._view_variable.CALLBACK_SELECTED_YOUR_LANGUAGE
|
||||
target_variable = self._view_variable.VAR_YOUR_LANGUAGE
|
||||
@@ -57,7 +60,7 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
|
||||
target_variable = self._view_variable.VAR_TARGET_LANGUAGE
|
||||
|
||||
target_variable.set(value)
|
||||
callFunctionIfCallable(callback, value)
|
||||
callFunctionIfCallable(callback, callback_value)
|
||||
self.vrct_gui._closeSelectableLanguagesWindow()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user