@@ -21,15 +21,25 @@ class SettingWidget(QWidget, ToolWidgetInterface):
2121 zh_cn = "语言" ,
2222 zh_hk = "語言" ,
2323 )
24+ _tr_general_debug = TR_gui_setting .tr ("general_debug" ,
25+ en = "Generate Debug Outputs" ,
26+ zh_cn = "生成调试输出" ,
27+ zh_hk = "生成調試輸出" ,
28+ )
29+ _tr_general_debug_desc = TR_gui_setting .tr ("general_debug_desc" ,
30+ en = "Enable debug mode to dump internal information (IRs, etc) to files. This makes execution slower." ,
31+ zh_cn = "启用调试模式以将内部信息(IR等)保存到文件中。执行过程会变慢。" ,
32+ zh_hk = "啟用調試模式以將內部信息(IR等)保存到文件中。執行過程會變慢。" ,
33+ )
2434 _langs_dict = {
2535 "en" : "English" ,
2636 "zh_cn" : "中文(简体)" ,
2737 "zh_hk" : "中文(繁體)" ,
2838 }
2939 _tr_desc = TR_gui_setting .tr ("desc" ,
30- en = "Edit settings here. Currently only language is supported." ,
31- zh_cn = "在这里编辑设置。目前仅支持语言设置 。" ,
32- zh_hk = "在這裡編輯設置。目前僅支持語言設置 。" ,
40+ en = "Edit settings here. Currently only language and debug settings are supported." ,
41+ zh_cn = "在这里编辑设置。目前仅支持语言与调试设置 。" ,
42+ zh_hk = "在這裡編輯設置。目前僅支持語言與調試設置 。" ,
3343 )
3444
3545 def __init__ (self , parent : QWidget ):
@@ -38,16 +48,24 @@ def __init__(self, parent : QWidget):
3848 self .ui .setupUi (self )
3949 self .bind_text (lambda s : self .ui .tabWidget .setTabText (0 , s ), self ._tr_tab_general )
4050 self .bind_text (self .ui .languageLabel .setText , self ._tr_general_language )
51+ self .bind_text (self .ui .mainPipelineGroupBox .setTitle , MainWindowInterface .tr_toolname_maininput )
52+ self .bind_text (self .ui .debugModeCheckBox .setText , self ._tr_general_debug )
53+ self .bind_text (self .ui .debugModeCheckBox .setToolTip , self ._tr_general_debug_desc )
4154 self .ui .languageComboBox .clear ()
4255 for lang_code , lang_name in SettingsDict ._langs_dict .items ():
4356 self .ui .languageComboBox .addItem (lang_name , lang_code )
4457 self .ui .languageComboBox .setCurrentIndex (self .ui .languageComboBox .findData (SettingsDict .get_current_language ()))
4558 self .ui .languageComboBox .currentIndexChanged .connect (self .on_languageComboBox_currentIndexChanged )
59+ self .ui .debugModeCheckBox .setChecked (True if SettingsDict .instance ().get ("mainpipeline/debug" , False ) else False )
60+ self .ui .debugModeCheckBox .toggled .connect (self .on_debugModeCheckBox_toggled )
4661
4762 def on_languageComboBox_currentIndexChanged (self , index ):
4863 lang_code = self .ui .languageComboBox .currentData ()
4964 self .language_updated (lang_code )
5065
66+ def on_debugModeCheckBox_toggled (self , checked ):
67+ SettingsDict .instance ()["mainpipeline/debug" ] = True if checked else False
68+
5169 @classmethod
5270 def getToolInfo (cls , ** kwargs ) -> ToolWidgetInfo :
5371 return ToolWidgetInfo (
@@ -62,13 +80,6 @@ def initialize():
6280 if lang := SettingsDict .instance ().get ("language" ):
6381 SettingWidget .setLanguage (lang )
6482
65- def get_initial_value (self , key : str ):
66- match key :
67- case "language" :
68- return SettingsDict .get_current_language ()
69- case _:
70- raise RuntimeError ("Unexpected key" )
71-
7283 def language_updated (self , lang ):
7384 if lang == SettingsDict .get_current_language ():
7485 return
0 commit comments