Merge branch 'config' into UI_2.0
This commit is contained in:
305
config.py
305
config.py
@@ -11,6 +11,13 @@ from models.translation.translation_languages import translatorEngine, translati
|
||||
from models.transcription.transcription_languages import transcription_lang
|
||||
from models.transcription.transcription_utils import getInputDevices, getOutputDevices, getDefaultInputDevice, getDefaultOutputDevice
|
||||
|
||||
json_serializable_vars = {}
|
||||
def json_serializable(var_name):
|
||||
def decorator(func):
|
||||
json_serializable_vars[var_name] = func
|
||||
return func
|
||||
return decorator
|
||||
|
||||
def saveJson(path, key, value):
|
||||
with open(path, "r", encoding="utf-8") as fp:
|
||||
json_data = load(fp)
|
||||
@@ -28,6 +35,7 @@ class Config:
|
||||
cls._instance.load_config()
|
||||
return cls._instance
|
||||
|
||||
# Read Only
|
||||
@property
|
||||
def VERSION(self):
|
||||
return self._VERSION
|
||||
@@ -36,6 +44,27 @@ class Config:
|
||||
def PATH_CONFIG(self):
|
||||
return self._PATH_CONFIG
|
||||
|
||||
@property
|
||||
def GITHUB_URL(self):
|
||||
return self._GITHUB_URL
|
||||
|
||||
@property
|
||||
def BOOTH_URL(self):
|
||||
return self._BOOTH_URL
|
||||
|
||||
@property
|
||||
def DOCUMENTS_URL(self):
|
||||
return self._DOCUMENTS_URL
|
||||
|
||||
@property
|
||||
def MAX_MIC_ENERGY_THRESHOLD(self):
|
||||
return self._MAX_MIC_ENERGY_THRESHOLD
|
||||
|
||||
@property
|
||||
def MAX_SPEAKER_ENERGY_THRESHOLD(self):
|
||||
return self._MAX_SPEAKER_ENERGY_THRESHOLD
|
||||
|
||||
# Read Write
|
||||
@property
|
||||
def ENABLE_TRANSLATION(self):
|
||||
return self._ENABLE_TRANSLATION
|
||||
@@ -73,6 +102,88 @@ class Config:
|
||||
self._ENABLE_FOREGROUND = value
|
||||
|
||||
@property
|
||||
def SOURCE_COUNTRY(self):
|
||||
return self._SOURCE_COUNTRY
|
||||
|
||||
@SOURCE_COUNTRY.setter
|
||||
def SOURCE_COUNTRY(self, value):
|
||||
if type(value) is str:
|
||||
self._SOURCE_COUNTRY = value
|
||||
|
||||
@property
|
||||
def SOURCE_LANGUAGE(self):
|
||||
return self._SOURCE_LANGUAGE
|
||||
|
||||
@SOURCE_LANGUAGE.setter
|
||||
def SOURCE_LANGUAGE(self, value):
|
||||
if type(value) is str:
|
||||
self._SOURCE_LANGUAGE = value
|
||||
|
||||
@property
|
||||
def TARGET_COUNTRY(self):
|
||||
return self._TARGET_COUNTRY
|
||||
|
||||
@TARGET_COUNTRY.setter
|
||||
def TARGET_COUNTRY(self, value):
|
||||
if type(value) is str:
|
||||
self._TARGET_COUNTRY = value
|
||||
|
||||
@property
|
||||
def TARGET_LANGUAGE(self):
|
||||
return self._TARGET_LANGUAGE
|
||||
|
||||
@TARGET_LANGUAGE.setter
|
||||
def TARGET_LANGUAGE(self, value):
|
||||
if type(value) is str:
|
||||
self._TARGET_LANGUAGE = value
|
||||
|
||||
@property
|
||||
def CHOICE_TRANSLATOR(self):
|
||||
return self._CHOICE_TRANSLATOR
|
||||
|
||||
@CHOICE_TRANSLATOR.setter
|
||||
def CHOICE_TRANSLATOR(self, value):
|
||||
if value in translatorEngine:
|
||||
self._CHOICE_TRANSLATOR = value
|
||||
|
||||
# Save Json Data
|
||||
## Main Window
|
||||
@property
|
||||
@json_serializable('SELECTED_TAB_NO')
|
||||
def SELECTED_TAB_NO(self):
|
||||
return self._SELECTED_TAB_NO
|
||||
|
||||
@SELECTED_TAB_NO.setter
|
||||
def SELECTED_TAB_NO(self, value):
|
||||
if type(value) is str:
|
||||
self._SELECTED_TAB_NO = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('SELECTED_TAB_YOUR_LANGUAGES')
|
||||
def SELECTED_TAB_YOUR_LANGUAGES(self):
|
||||
return self._SELECTED_TAB_YOUR_LANGUAGES
|
||||
|
||||
@SELECTED_TAB_YOUR_LANGUAGES.setter
|
||||
def SELECTED_TAB_YOUR_LANGUAGES(self, value):
|
||||
if type(value) is dict:
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('SELECTED_TAB_TARGET_LANGUAGES')
|
||||
def SELECTED_TAB_TARGET_LANGUAGES(self):
|
||||
return self._SELECTED_TAB_TARGET_LANGUAGES
|
||||
|
||||
@SELECTED_TAB_TARGET_LANGUAGES.setter
|
||||
def SELECTED_TAB_TARGET_LANGUAGES(self, value):
|
||||
if type(value) is dict:
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
## Config Window
|
||||
@property
|
||||
@json_serializable('TRANSPARENCY')
|
||||
def TRANSPARENCY(self):
|
||||
return self._TRANSPARENCY
|
||||
|
||||
@@ -83,6 +194,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('APPEARANCE_THEME')
|
||||
def APPEARANCE_THEME(self):
|
||||
return self._APPEARANCE_THEME
|
||||
|
||||
@@ -93,6 +205,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('UI_SCALING')
|
||||
def UI_SCALING(self):
|
||||
return self._UI_SCALING
|
||||
|
||||
@@ -103,6 +216,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('FONT_FAMILY')
|
||||
def FONT_FAMILY(self):
|
||||
return self._FONT_FAMILY
|
||||
|
||||
@@ -116,6 +230,7 @@ class Config:
|
||||
root.destroy()
|
||||
|
||||
@property
|
||||
@json_serializable('UI_LANGUAGE')
|
||||
def UI_LANGUAGE(self):
|
||||
return self._UI_LANGUAGE
|
||||
|
||||
@@ -126,56 +241,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def CHOICE_TRANSLATOR(self):
|
||||
return self._CHOICE_TRANSLATOR
|
||||
|
||||
@CHOICE_TRANSLATOR.setter
|
||||
def CHOICE_TRANSLATOR(self, value):
|
||||
if value in translatorEngine:
|
||||
self._CHOICE_TRANSLATOR = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def SOURCE_LANGUAGE(self):
|
||||
return self._SOURCE_LANGUAGE
|
||||
|
||||
@SOURCE_LANGUAGE.setter
|
||||
def SOURCE_LANGUAGE(self, value):
|
||||
if type(value) is str:
|
||||
self._SOURCE_LANGUAGE = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def SOURCE_COUNTRY(self):
|
||||
return self._SOURCE_COUNTRY
|
||||
|
||||
@SOURCE_COUNTRY.setter
|
||||
def SOURCE_COUNTRY(self, value):
|
||||
if type(value) is str:
|
||||
self._SOURCE_COUNTRY = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def TARGET_LANGUAGE(self):
|
||||
return self._TARGET_LANGUAGE
|
||||
|
||||
@TARGET_LANGUAGE.setter
|
||||
def TARGET_LANGUAGE(self, value):
|
||||
if type(value) is str:
|
||||
self._TARGET_LANGUAGE = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def TARGET_COUNTRY(self):
|
||||
return self._TARGET_COUNTRY
|
||||
|
||||
@TARGET_COUNTRY.setter
|
||||
def TARGET_COUNTRY(self, value):
|
||||
if type(value) is str:
|
||||
self._TARGET_COUNTRY = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('CHOICE_MIC_HOST')
|
||||
def CHOICE_MIC_HOST(self):
|
||||
return self._CHOICE_MIC_HOST
|
||||
|
||||
@@ -186,6 +252,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('CHOICE_MIC_DEVICE')
|
||||
def CHOICE_MIC_DEVICE(self):
|
||||
return self._CHOICE_MIC_DEVICE
|
||||
|
||||
@@ -196,6 +263,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_MIC_ENERGY_THRESHOLD')
|
||||
def INPUT_MIC_ENERGY_THRESHOLD(self):
|
||||
return self._INPUT_MIC_ENERGY_THRESHOLD
|
||||
|
||||
@@ -206,6 +274,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD')
|
||||
def INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD(self):
|
||||
return self._INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD
|
||||
|
||||
@@ -216,6 +285,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_MIC_RECORD_TIMEOUT')
|
||||
def INPUT_MIC_RECORD_TIMEOUT(self):
|
||||
return self._INPUT_MIC_RECORD_TIMEOUT
|
||||
|
||||
@@ -226,6 +296,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_MIC_PHRASE_TIMEOUT')
|
||||
def INPUT_MIC_PHRASE_TIMEOUT(self):
|
||||
return self._INPUT_MIC_PHRASE_TIMEOUT
|
||||
|
||||
@@ -236,6 +307,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_MIC_MAX_PHRASES')
|
||||
def INPUT_MIC_MAX_PHRASES(self):
|
||||
return self._INPUT_MIC_MAX_PHRASES
|
||||
|
||||
@@ -246,6 +318,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_MIC_WORD_FILTER')
|
||||
def INPUT_MIC_WORD_FILTER(self):
|
||||
return self._INPUT_MIC_WORD_FILTER
|
||||
|
||||
@@ -256,6 +329,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('CHOICE_SPEAKER_DEVICE')
|
||||
def CHOICE_SPEAKER_DEVICE(self):
|
||||
return self._CHOICE_SPEAKER_DEVICE
|
||||
|
||||
@@ -268,6 +342,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_SPEAKER_ENERGY_THRESHOLD')
|
||||
def INPUT_SPEAKER_ENERGY_THRESHOLD(self):
|
||||
return self._INPUT_SPEAKER_ENERGY_THRESHOLD
|
||||
|
||||
@@ -278,6 +353,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD')
|
||||
def INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD(self):
|
||||
return self._INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD
|
||||
|
||||
@@ -288,6 +364,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_SPEAKER_RECORD_TIMEOUT')
|
||||
def INPUT_SPEAKER_RECORD_TIMEOUT(self):
|
||||
return self._INPUT_SPEAKER_RECORD_TIMEOUT
|
||||
|
||||
@@ -298,6 +375,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_SPEAKER_PHRASE_TIMEOUT')
|
||||
def INPUT_SPEAKER_PHRASE_TIMEOUT(self):
|
||||
return self._INPUT_SPEAKER_PHRASE_TIMEOUT
|
||||
|
||||
@@ -308,6 +386,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('INPUT_SPEAKER_MAX_PHRASES')
|
||||
def INPUT_SPEAKER_MAX_PHRASES(self):
|
||||
return self._INPUT_SPEAKER_MAX_PHRASES
|
||||
|
||||
@@ -318,6 +397,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('OSC_IP_ADDRESS')
|
||||
def OSC_IP_ADDRESS(self):
|
||||
return self._OSC_IP_ADDRESS
|
||||
|
||||
@@ -328,6 +408,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('OSC_PORT')
|
||||
def OSC_PORT(self):
|
||||
return self._OSC_PORT
|
||||
|
||||
@@ -338,6 +419,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('AUTH_KEYS')
|
||||
def AUTH_KEYS(self):
|
||||
return self._AUTH_KEYS
|
||||
|
||||
@@ -350,6 +432,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, self.AUTH_KEYS)
|
||||
|
||||
@property
|
||||
@json_serializable('MESSAGE_FORMAT')
|
||||
def MESSAGE_FORMAT(self):
|
||||
return self._MESSAGE_FORMAT
|
||||
|
||||
@@ -360,6 +443,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('ENABLE_AUTO_CLEAR_MESSAGE_BOX')
|
||||
def ENABLE_AUTO_CLEAR_MESSAGE_BOX(self):
|
||||
return self._ENABLE_AUTO_CLEAR_MESSAGE_BOX
|
||||
|
||||
@@ -370,6 +454,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('ENABLE_NOTICE_XSOVERLAY')
|
||||
def ENABLE_NOTICE_XSOVERLAY(self):
|
||||
return self._ENABLE_NOTICE_XSOVERLAY
|
||||
|
||||
@@ -380,6 +465,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('ENABLE_SEND_MESSAGE_TO_VRC')
|
||||
def ENABLE_SEND_MESSAGE_TO_VRC(self):
|
||||
return self._ENABLE_SEND_MESSAGE_TO_VRC
|
||||
|
||||
@@ -390,6 +476,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('STARTUP_OSC_ENABLED_CHECK')
|
||||
def STARTUP_OSC_ENABLED_CHECK(self):
|
||||
return self._STARTUP_OSC_ENABLED_CHECK
|
||||
|
||||
@@ -400,52 +487,7 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def GITHUB_URL(self):
|
||||
return self._GITHUB_URL
|
||||
|
||||
# @property
|
||||
# def BREAK_KEYSYM_LIST(self):
|
||||
# return self._BREAK_KEYSYM_LIST
|
||||
|
||||
@property
|
||||
def MAX_MIC_ENERGY_THRESHOLD(self):
|
||||
return self._MAX_MIC_ENERGY_THRESHOLD
|
||||
|
||||
@property
|
||||
def MAX_SPEAKER_ENERGY_THRESHOLD(self):
|
||||
return self._MAX_SPEAKER_ENERGY_THRESHOLD
|
||||
|
||||
@property
|
||||
def SELECTED_TAB_NO(self):
|
||||
return self._SELECTED_TAB_NO
|
||||
|
||||
@SELECTED_TAB_NO.setter
|
||||
def SELECTED_TAB_NO(self, value):
|
||||
if type(value) is str:
|
||||
self._SELECTED_TAB_NO = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def SELECTED_TAB_YOUR_LANGUAGES(self):
|
||||
return self._SELECTED_TAB_YOUR_LANGUAGES
|
||||
|
||||
@SELECTED_TAB_YOUR_LANGUAGES.setter
|
||||
def SELECTED_TAB_YOUR_LANGUAGES(self, value):
|
||||
if type(value) is dict:
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
def SELECTED_TAB_TARGET_LANGUAGES(self):
|
||||
return self._SELECTED_TAB_TARGET_LANGUAGES
|
||||
|
||||
@SELECTED_TAB_TARGET_LANGUAGES.setter
|
||||
def SELECTED_TAB_TARGET_LANGUAGES(self, value):
|
||||
if type(value) is dict:
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('ENABLE_LOGGER')
|
||||
def ENABLE_LOGGER(self):
|
||||
return self._ENABLE_LOGGER
|
||||
|
||||
@@ -455,8 +497,8 @@ class Config:
|
||||
self._ENABLE_LOGGER = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
# Config Window
|
||||
@property
|
||||
@json_serializable('IS_CONFIG_WINDOW_COMPACT_MODE')
|
||||
def IS_CONFIG_WINDOW_COMPACT_MODE(self):
|
||||
return self._IS_CONFIG_WINDOW_COMPACT_MODE
|
||||
|
||||
@@ -467,33 +509,58 @@ class Config:
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
def init_config(self):
|
||||
self._VERSION = "1.3.2"
|
||||
# Read Only
|
||||
self._VERSION = "2.0.0"
|
||||
self._PATH_CONFIG = os_path.join(os_path.dirname(sys.argv[0]), "config.json")
|
||||
self._GITHUB_URL = "https://api.github.com/repos/misyaguziya/VRCT/releases/latest"
|
||||
self._BOOTH_URL = "https://misyaguziya.booth.pm/"
|
||||
self._DOCUMENTS_URL = "https://mzsoftware.notion.site/VRCT-Documents-be79b7a165f64442ad8f326d86c22246"
|
||||
self._MAX_MIC_ENERGY_THRESHOLD = 2000
|
||||
self._MAX_SPEAKER_ENERGY_THRESHOLD = 4000
|
||||
|
||||
# Read Write
|
||||
self._ENABLE_TRANSLATION = False
|
||||
self._ENABLE_TRANSCRIPTION_SEND = False
|
||||
self._ENABLE_TRANSCRIPTION_RECEIVE = False
|
||||
self._ENABLE_FOREGROUND = False
|
||||
self._TRANSPARENCY = 100
|
||||
self._APPEARANCE_THEME = "System"
|
||||
self._UI_SCALING = "100%"
|
||||
self._FONT_FAMILY = "Yu Gothic UI"
|
||||
self._UI_LANGUAGE = "en"
|
||||
|
||||
# Save Json Data
|
||||
self._CHOICE_TRANSLATOR = translatorEngine[0]
|
||||
self._SOURCE_LANGUAGE = "Japanese"
|
||||
self._SOURCE_COUNTRY = "Japan"
|
||||
self._TARGET_LANGUAGE = "English"
|
||||
self._TARGET_COUNTRY = "United States"
|
||||
|
||||
## Main Window
|
||||
self._SELECTED_TAB_NO = "1"
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = {
|
||||
"1":"Japanese\n(Japan)",
|
||||
"2":"Japanese\n(Japan)",
|
||||
"3":"Japanese\n(Japan)",
|
||||
}
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = {
|
||||
"1":"English\n(United States)",
|
||||
"2":"English\n(United States)",
|
||||
"3":"English\n(United States)",
|
||||
}
|
||||
|
||||
## Config Window
|
||||
self._TRANSPARENCY = 100
|
||||
self._APPEARANCE_THEME = "System"
|
||||
self._UI_SCALING = "100%"
|
||||
self._FONT_FAMILY = "Yu Gothic UI"
|
||||
self._UI_LANGUAGE = "en"
|
||||
self._CHOICE_MIC_HOST = getDefaultInputDevice()["host"]["name"]
|
||||
self._CHOICE_MIC_DEVICE = getDefaultInputDevice()["device"]["name"]
|
||||
self._INPUT_MIC_ENERGY_THRESHOLD = 300
|
||||
self._INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD = True
|
||||
self._INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD = False
|
||||
self._INPUT_MIC_RECORD_TIMEOUT = 3
|
||||
self._INPUT_MIC_PHRASE_TIMEOUT = 3
|
||||
self._INPUT_MIC_MAX_PHRASES = 10
|
||||
self._INPUT_MIC_WORD_FILTER = []
|
||||
self._CHOICE_SPEAKER_DEVICE = getDefaultOutputDevice()["name"]
|
||||
self._INPUT_SPEAKER_ENERGY_THRESHOLD = 300
|
||||
self._INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD = True
|
||||
self._INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD = False
|
||||
self._INPUT_SPEAKER_RECORD_TIMEOUT = 3
|
||||
self._INPUT_SPEAKER_PHRASE_TIMEOUT = 3
|
||||
self._INPUT_SPEAKER_MAX_PHRASES = 10
|
||||
@@ -510,27 +577,7 @@ class Config:
|
||||
self._ENABLE_NOTICE_XSOVERLAY = False
|
||||
self._ENABLE_SEND_MESSAGE_TO_VRC = True
|
||||
self._STARTUP_OSC_ENABLED_CHECK = True
|
||||
self._GITHUB_URL = "https://api.github.com/repos/misyaguziya/VRCT/releases/latest"
|
||||
# self._BREAK_KEYSYM_LIST = [
|
||||
# "Delete", "Select", "Up", "Down", "Next", "End", "Print",
|
||||
# "Prior","Insert","Home", "Left", "Clear", "Right", "Linefeed"
|
||||
# ]
|
||||
self._MAX_MIC_ENERGY_THRESHOLD = 2000
|
||||
self._MAX_SPEAKER_ENERGY_THRESHOLD = 4000
|
||||
self._SELECTED_TAB_NO = "1"
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = {
|
||||
"1":"Japanese\n(Japan)",
|
||||
"2":"Japanese\n(Japan)",
|
||||
"3":"Japanese\n(Japan)",
|
||||
}
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = {
|
||||
"1":"English\n(United States)",
|
||||
"2":"English\n(United States)",
|
||||
"3":"English\n(United States)",
|
||||
}
|
||||
self._ENABLE_LOGGER = False
|
||||
|
||||
# Config Window
|
||||
self._IS_CONFIG_WINDOW_COMPACT_MODE = False
|
||||
|
||||
def load_config(self):
|
||||
@@ -542,13 +589,9 @@ class Config:
|
||||
setattr(self, key, config[key])
|
||||
|
||||
with open(self.PATH_CONFIG, 'w', encoding="utf-8") as fp:
|
||||
setter_methods = [
|
||||
name for name, obj in vars(type(self)).items()
|
||||
if isinstance(obj, property) and obj.fset is not None
|
||||
]
|
||||
config = {}
|
||||
for method in setter_methods:
|
||||
config[method] = getattr(self, method)
|
||||
for var_name, var_func in json_serializable_vars.items():
|
||||
config[var_name] = var_func(self)
|
||||
json_dump(config, fp, indent=4, ensure_ascii=False)
|
||||
|
||||
config = Config()
|
||||
16
main.py
16
main.py
@@ -181,6 +181,20 @@ def messageBoxPressKeyAny(e):
|
||||
model.oscStartSendTyping()
|
||||
|
||||
# func select languages
|
||||
def initSetLanguageAndCountry():
|
||||
select = config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
config.SOURCE_LANGUAGE = language
|
||||
config.SOURCE_COUNTRY = country
|
||||
|
||||
select = config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
language, country = model.getLanguageAndCountry(select)
|
||||
config.TARGET_LANGUAGE = language
|
||||
config.TARGET_COUNTRY = country
|
||||
|
||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||
model.authenticationTranslator(callbackSetAuthKeys)
|
||||
|
||||
def setYourLanguageAndCountry(select):
|
||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||
languages[config.SELECTED_TAB_NO] = select
|
||||
@@ -566,6 +580,8 @@ def callbackSetOscPort(value):
|
||||
view.createGUI()
|
||||
|
||||
# init config
|
||||
initSetLanguageAndCountry()
|
||||
|
||||
if model.authenticationTranslator(callbackSetAuthKeys) is False:
|
||||
# error update Auth key
|
||||
view.printToTextbox_AuthenticationError()
|
||||
|
||||
Reference in New Issue
Block a user