👍[Update] Model/Veiw/Config : SELECTED_TAB_YOUR_LANGUAGES/SELECTED_TAB_TARGET_LANGUAGESの表現の変更に伴い処理を変更
This commit is contained in:
42
config.py
42
config.py
@@ -293,8 +293,10 @@ class Config:
|
||||
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()):
|
||||
data = list(v.items())[0]
|
||||
language = data["language"]
|
||||
country = data["country"]
|
||||
if language not in list(transcription_lang.keys()) or country not in list(transcription_lang[language].keys()):
|
||||
value[k] = value_old[k]
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = value
|
||||
except Exception:
|
||||
@@ -312,8 +314,10 @@ class Config:
|
||||
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()):
|
||||
data = list(v.items())[0]
|
||||
language = data["language"]
|
||||
country = data["country"]
|
||||
if language not in list(transcription_lang.keys()) or country not in list(transcription_lang[language].keys()):
|
||||
value[k] = value_old[k]
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
||||
except Exception:
|
||||
@@ -902,14 +906,32 @@ class Config:
|
||||
"3":"CTranslate2",
|
||||
}
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = {
|
||||
"1":{"Japanese":"Japan"},
|
||||
"2":{"Japanese":"Japan"},
|
||||
"3":{"Japanese":"Japan"},
|
||||
"1":{
|
||||
"language":"Japanese",
|
||||
"country":"Japan"
|
||||
},
|
||||
"2":{
|
||||
"language":"Japanese",
|
||||
"country":"Japan"
|
||||
},
|
||||
"3":{
|
||||
"language":"Japanese",
|
||||
"country":"Japan"
|
||||
},
|
||||
}
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = {
|
||||
"1":{"English":"United States"},
|
||||
"2":{"English":"United States"},
|
||||
"3":{"English":"United States"},
|
||||
"1":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
"2":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
"3":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
}
|
||||
self._SELECTED_TRANSCRIPTION_ENGINE = "Google"
|
||||
self._IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = False
|
||||
|
||||
@@ -292,13 +292,11 @@ def initSetTranslateEngine():
|
||||
|
||||
def initSetLanguageAndCountry():
|
||||
select = config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
language, country = list(select.items())[0]
|
||||
config.SOURCE_LANGUAGE = language
|
||||
config.SOURCE_COUNTRY = country
|
||||
config.SOURCE_LANGUAGE = select["language"]
|
||||
config.SOURCE_COUNTRY = select["country"]
|
||||
select = config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
language, country = list(select.items())[0]
|
||||
config.TARGET_LANGUAGE = language
|
||||
config.TARGET_COUNTRY = country
|
||||
config.TARGET_LANGUAGE = select["language"]
|
||||
config.TARGET_COUNTRY = select["country"]
|
||||
|
||||
def setYourTranslateEngine(select):
|
||||
engines = config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES
|
||||
@@ -316,9 +314,8 @@ def setYourLanguageAndCountry(select):
|
||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||
languages[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_YOUR_LANGUAGES = languages
|
||||
language, country = list(select.items())[0]
|
||||
config.SOURCE_LANGUAGE = language
|
||||
config.SOURCE_COUNTRY = country
|
||||
config.SOURCE_LANGUAGE = select["language"]
|
||||
config.SOURCE_COUNTRY = select["country"]
|
||||
updateTranslationEngineAndEngineList()
|
||||
view.printToTextbox_selectedYourLanguages(select)
|
||||
|
||||
@@ -326,9 +323,8 @@ def setTargetLanguageAndCountry(select):
|
||||
languages = config.SELECTED_TAB_TARGET_LANGUAGES
|
||||
languages[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_TARGET_LANGUAGES = languages
|
||||
language, country = list(select.items())[0]
|
||||
config.TARGET_LANGUAGE = language
|
||||
config.TARGET_COUNTRY = country
|
||||
config.TARGET_LANGUAGE = select["language"]
|
||||
config.TARGET_COUNTRY = select["country"]
|
||||
updateTranslationEngineAndEngineList()
|
||||
view.printToTextbox_selectedTargetLanguages(select)
|
||||
|
||||
@@ -355,15 +351,13 @@ def callbackSelectedLanguagePresetTab(selected_tab_no):
|
||||
|
||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||
select = languages[config.SELECTED_TAB_NO]
|
||||
language, country = list(select.items())[0]
|
||||
config.SOURCE_LANGUAGE = language
|
||||
config.SOURCE_COUNTRY = country
|
||||
config.SOURCE_LANGUAGE = select["language"]
|
||||
config.SOURCE_COUNTRY = select["country"]
|
||||
|
||||
languages = config.SELECTED_TAB_TARGET_LANGUAGES
|
||||
select = languages[config.SELECTED_TAB_NO]
|
||||
language, country = list(select.items())[0]
|
||||
config.TARGET_LANGUAGE = language
|
||||
config.TARGET_COUNTRY = country
|
||||
config.TARGET_LANGUAGE = select["language"]
|
||||
config.TARGET_COUNTRY = select["country"]
|
||||
view.printToTextbox_changedLanguagePresetTab(config.SELECTED_TAB_NO)
|
||||
updateTranslationEngineAndEngineList()
|
||||
|
||||
@@ -999,7 +993,7 @@ def createMainWindow(splash):
|
||||
|
||||
"callback_your_language": setYourLanguageAndCountry,
|
||||
"callback_target_language": setTargetLanguageAndCountry,
|
||||
"values": model.getListLanguageAndCountry(),
|
||||
"values": [f"{v['language']} ({v['country']})" for v in model.getListLanguageAndCountry()],
|
||||
"callback_swap_languages": swapYourLanguageAndTargetLanguage,
|
||||
|
||||
"callback_selected_language_preset_tab": callbackSelectedLanguagePresetTab,
|
||||
|
||||
19
model.py
19
model.py
@@ -106,19 +106,24 @@ class Model:
|
||||
|
||||
def getListLanguageAndCountry(self):
|
||||
transcription_langs = list(transcription_lang.keys())
|
||||
tl_keys = translation_lang.keys()
|
||||
translation_langs = []
|
||||
for tl_key in tl_keys:
|
||||
for tl_key in translation_lang.keys():
|
||||
for lang in translation_lang[tl_key]["source"]:
|
||||
translation_langs.append(lang)
|
||||
translation_langs = list(set(translation_langs))
|
||||
supported_langs = list(filter(lambda x: x in transcription_langs, translation_langs))
|
||||
|
||||
langs = []
|
||||
for lang in supported_langs:
|
||||
for country in transcription_lang[lang]:
|
||||
langs.append(f"{lang}\n({country})")
|
||||
return sorted(langs)
|
||||
languages = []
|
||||
for language in supported_langs:
|
||||
for country in transcription_lang[language]:
|
||||
languages.append(
|
||||
{
|
||||
"language" : language,
|
||||
"country" : country,
|
||||
}
|
||||
)
|
||||
languages = sorted(languages, key=lambda x: x['language'])
|
||||
return languages
|
||||
|
||||
def findTranslationEngines(self, source_lang, target_lang):
|
||||
compatible_engines = []
|
||||
|
||||
16
view.py
16
view.py
@@ -1508,9 +1508,13 @@ class View():
|
||||
|
||||
# Update GuiVariable (view_variable)
|
||||
def updateGuiVariableByPresetTabNo(self, tab_no:str):
|
||||
your_language, your_country = list(config.SELECTED_TAB_YOUR_LANGUAGES[tab_no].items())[0]
|
||||
select = config.SELECTED_TAB_YOUR_LANGUAGES[tab_no]
|
||||
your_language = select["language"]
|
||||
your_country = select["country"]
|
||||
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]
|
||||
select = config.SELECTED_TAB_TARGET_LANGUAGES[tab_no]
|
||||
target_language = select["language"]
|
||||
target_country = select["country"]
|
||||
self.view_variable.VAR_TARGET_LANGUAGE.set(f"{target_language}\n({target_country})")
|
||||
|
||||
|
||||
@@ -1653,11 +1657,15 @@ class View():
|
||||
|
||||
|
||||
def printToTextbox_selectedYourLanguages(self, selected_your_language):
|
||||
your_language = ' '.join(f'{k} {v}' for k, v in selected_your_language.items())
|
||||
language = selected_your_language["language"]
|
||||
country = selected_your_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):
|
||||
target_language = ' '.join(f'{k} {v}' for k, v in selected_target_language.items())
|
||||
language = selected_target_language["language"]
|
||||
country = selected_target_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):
|
||||
|
||||
@@ -49,9 +49,14 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
|
||||
|
||||
|
||||
def callbackSelectableLanguages(self, value, _e):
|
||||
language, country = value.split("\n")
|
||||
country = country[1:-1]
|
||||
callback_value = {language: country}
|
||||
language, country = value.split(" (")
|
||||
country = country[:-1]
|
||||
callback_value = {
|
||||
"language" : language,
|
||||
"country" : country,
|
||||
}
|
||||
set_value = f"{language}\n({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
|
||||
@@ -59,7 +64,7 @@ class _CreateSelectableLanguagesWindow(CTkToplevel):
|
||||
callback = self._view_variable.CALLBACK_SELECTED_TARGET_LANGUAGE
|
||||
target_variable = self._view_variable.VAR_TARGET_LANGUAGE
|
||||
|
||||
target_variable.set(value)
|
||||
target_variable.set(set_value)
|
||||
callFunctionIfCallable(callback, callback_value)
|
||||
self.vrct_gui._closeSelectableLanguagesWindow()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user