📄 configreader.py
字号:
gui_ratesettingsdefault_data=wxChoice(panel, -1, choices = self.gui_ratesettingslist ) gui_ratesettingsdefault_data.SetFont(self.default_font) gui_ratesettingsdefault_data.SetStringSelection(self.configfileargs['gui_ratesettingsdefault']) gui_ratesettingsmode_data=wxRadioBox(panel, -1, 'Rate Settings Mode', choices = [ 'none', 'basic', 'full' ] ) gui_ratesettingsmode_data.SetFont(self.default_font) gui_ratesettingsmode_data.SetStringSelection(self.configfileargs['gui_ratesettingsmode']) if (sys.platform == 'win32'): win32_taskbar_icon_checkbox = wxCheckBox(panel, -1, "Minimize to system tray") win32_taskbar_icon_checkbox.SetFont(self.default_font) win32_taskbar_icon_checkbox.SetValue(self.configfileargs['win32_taskbar_icon']) gui_default_savedir_ctrl = wxTextCtrl(parent = panel, id = -1, value = self.configfileargs['gui_default_savedir'], size = (26*self.FONT, -1), style = wxTE_PROCESS_TAB) gui_default_savedir_ctrl.SetFont(self.default_font) self.checkingcolor_icon = wxEmptyBitmap(16,16) self.checkingcolor_iconptr = wxStaticBitmap(panel, -1, self.checkingcolor_icon) self.setColorIcon(self.checkingcolor_icon, self.checkingcolor_iconptr, self.checkingcolormenu) self.downloadcolor_icon = wxEmptyBitmap(16,16) self.downloadcolor_iconptr = wxStaticBitmap(panel, -1, self.downloadcolor_icon) self.setColorIcon(self.downloadcolor_icon, self.downloadcolor_iconptr, self.downloadcolormenu) self.seedingcolor_icon = wxEmptyBitmap(16,16) self.seedingcolor_iconptr = wxStaticBitmap(panel, -1, self.seedingcolor_icon) self.setColorIcon(self.seedingcolor_icon, self.downloadcolor_iconptr, self.seedingcolormenu) rowsizer = wxFlexGridSizer(cols = 2, hgap = 20) block12sizer = wxFlexGridSizer(cols = 1, vgap = 7) block1sizer = wxFlexGridSizer(cols = 1, vgap = 2) if (sys.platform == 'win32'): block1sizer.Add(win32_taskbar_icon_checkbox) block1sizer.Add(gui_stretchwindow_checkbox) block1sizer.Add(gui_displaystats_checkbox) block1sizer.Add(gui_displaymiscstats_checkbox) block1sizer.Add(security_checkbox) block1sizer.Add(gui_forcegreenonfirewall_checkbox) block12sizer.Add(block1sizer) colorsizer = wxStaticBoxSizer(wxStaticBox(panel, -1, "Gauge Colors:"), wxVERTICAL) colorsizer1 = wxFlexGridSizer(cols = 7) colorsizer1.Add(StaticText(' Checking: '), 1, wxALIGN_BOTTOM) colorsizer1.Add(self.checkingcolor_iconptr, 1, wxALIGN_BOTTOM) colorsizer1.Add(StaticText(' Downloading: '), 1, wxALIGN_BOTTOM) colorsizer1.Add(self.downloadcolor_iconptr, 1, wxALIGN_BOTTOM) colorsizer1.Add(StaticText(' Seeding: '), 1, wxALIGN_BOTTOM) colorsizer1.Add(self.seedingcolor_iconptr, 1, wxALIGN_BOTTOM) colorsizer1.Add(StaticText(' ')) minsize = self.checkingcolor_iconptr.GetBestSize() minsize.SetHeight(minsize.GetHeight()+5) colorsizer1.SetMinSize(minsize) colorsizer.Add(colorsizer1) block12sizer.Add(colorsizer, 1, wxALIGN_LEFT) rowsizer.Add(block12sizer) block3sizer = wxFlexGridSizer(cols = 1) portsettingsSizer = wxStaticBoxSizer(wxStaticBox(panel, -1, "Port Range:*"), wxVERTICAL) portsettingsSizer1 = wxGridSizer(cols = 2, vgap = 1) portsettingsSizer1.Add(StaticText('From: '), 1, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT) portsettingsSizer1.Add(minport_data, 1, wxALIGN_BOTTOM) portsettingsSizer1.Add(StaticText('To: '), 1, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT) portsettingsSizer1.Add(maxport_data, 1, wxALIGN_BOTTOM) portsettingsSizer.Add(portsettingsSizer1) block3sizer.Add(portsettingsSizer, 1, wxALIGN_CENTER) block3sizer.Add(StaticText(' ')) block3sizer.Add(gui_ratesettingsmode_data, 1, wxALIGN_CENTER) rowsizer.Add(block3sizer) colsizer.Add(rowsizer) block4sizer = wxFlexGridSizer(cols = 3, hgap = 15) savepathsizer = wxFlexGridSizer(cols = 2, vgap = 1) savepathsizer.Add(StaticText('Default Save Path: *')) savepathsizer.Add(StaticText(' ')) savepathsizer.Add(gui_default_savedir_ctrl, 1, wxEXPAND) savepathButton = wxButton(panel, -1, '...', size = (18,18))# savepathButton.SetFont(self.default_font) savepathsizer.Add(savepathButton, 0, wxALIGN_CENTER) block4sizer.Add(savepathsizer, -1, wxALIGN_BOTTOM) fontsizer = wxFlexGridSizer(cols = 1, vgap = 2) fontsizer.Add(StaticText('Font: *'), 1, wxALIGN_CENTER) fontsizer.Add(gui_font_data, 1, wxALIGN_CENTER) block4sizer.Add(fontsizer, 1, wxALIGN_BOTTOM) ratesettingsSizer = wxGridSizer(cols = 1, vgap = 0) ratesettingsSizer.Add(StaticText('Default Rate Setting: *'), 1, wxALIGN_CENTER) ratesettingsSizer.Add(gui_ratesettingsdefault_data, 1, wxALIGN_CENTER) block4sizer.Add(ratesettingsSizer, 1, wxALIGN_BOTTOM) colsizer.Add(block4sizer, 0, wxALIGN_CENTER) colsizer.Add(StaticText(' ')) savesizer = wxGridSizer(cols = 4, hgap = 10) saveButton = wxButton(panel, -1, 'Save')# saveButton.SetFont(self.default_font) savesizer.Add(saveButton, 0, wxALIGN_CENTER) cancelButton = wxButton(panel, -1, 'Cancel')# cancelButton.SetFont(self.default_font) savesizer.Add(cancelButton, 0, wxALIGN_CENTER) defaultsButton = wxButton(panel, -1, 'Revert to Defaults')# defaultsButton.SetFont(self.default_font) savesizer.Add(defaultsButton, 0, wxALIGN_CENTER) advancedButton = wxButton(panel, -1, 'Advanced...')# advancedButton.SetFont(self.default_font) savesizer.Add(advancedButton, 0, wxALIGN_CENTER) colsizer.Add(savesizer, 1, wxALIGN_CENTER) resizewarningtext=StaticText('* These settings will not take effect until the next time you start BitTorrent', self.FONT-2) colsizer.Add(resizewarningtext, 1, wxALIGN_CENTER) border = wxBoxSizer(wxHORIZONTAL) border.Add(colsizer, 1, wxEXPAND | wxALL, 4) panel.SetSizer(border) panel.SetAutoLayout(true) self.advancedConfig = {} def setDefaults(self, ref = self): try: minport_data.SetValue(ref.defaults.get('minport')) maxport_data.SetValue(ref.defaults.get('maxport')) gui_stretchwindow_checkbox.SetValue(ref.configFileDefaults['gui_stretchwindow']) gui_displaystats_checkbox.SetValue(ref.configFileDefaults['gui_displaystats']) gui_displaymiscstats_checkbox.SetValue(ref.configFileDefaults['gui_displaymiscstats'])
security_checkbox.SetValue(ref.configfileargs['security']) gui_forcegreenonfirewall_checkbox.SetValue(ref.configFileDefaults['gui_forcegreenonfirewall']) gui_font_data.SetValue(ref.configFileDefaults['gui_font']) gui_ratesettingsdefault_data.SetStringSelection(ref.configFileDefaults['gui_ratesettingsdefault']) gui_ratesettingsmode_data.SetStringSelection(ref.configFileDefaults['gui_ratesettingsmode']) gui_default_savedir_ctrl.SetValue(ref.configFileDefaults['gui_default_savedir']) ref.checkingcolormenu = ref.HexToColor(ref.configFileDefaults['gui_checkingcolor']) ref.setColorIcon(ref.checkingcolor_icon, ref.checkingcolor_iconptr, ref.checkingcolormenu) ref.downloadcolormenu = ref.HexToColor(ref.configFileDefaults['gui_downloadcolor']) ref.setColorIcon(ref.downloadcolor_icon, ref.downloadcolor_iconptr, ref.downloadcolormenu) ref.seedingcolormenu = ref.HexToColor(ref.configFileDefaults['gui_seedingcolor']) ref.setColorIcon(ref.seedingcolor_icon, ref.seedingcolor_iconptr, ref.seedingcolormenu) if (sys.platform == 'win32'): win32_taskbar_icon_checkbox.SetValue(ref.configFileDefaults['win32_taskbar_icon']) # reset advanced too for key in ['ip', 'bind', 'min_peers', 'max_initiate', 'display_interval', 'alloc_type', 'alloc_rate', 'max_files_open', 'max_connections', 'super_seeder']: ref.configfileargs[key] = ref.defaults.get(key) ref.advancedConfig = {} ref.CloseAdvanced() except: ref.parent.exception() def saveConfigs(self, ref = self): try: ref.configfileargs['gui_stretchwindow']=int(gui_stretchwindow_checkbox.GetValue()) ref.configfileargs['gui_displaystats']=int(gui_displaystats_checkbox.GetValue()) ref.configfileargs['gui_displaymiscstats']=int(gui_displaymiscstats_checkbox.GetValue())
ref.configfileargs['security']=int(security_checkbox.GetValue()) ref.configfileargs['gui_forcegreenonfirewall']=int(gui_forcegreenonfirewall_checkbox.GetValue()) ref.configfileargs['minport']=minport_data.GetValue() ref.configfileargs['maxport']=maxport_data.GetValue() ref.configfileargs['gui_font']=gui_font_data.GetValue() ref.configfileargs['gui_ratesettingsdefault']=gui_ratesettingsdefault_data.GetStringSelection() ref.configfileargs['gui_ratesettingsmode']=gui_ratesettingsmode_data.GetStringSelection() ref.configfileargs['gui_default_savedir']=gui_default_savedir_ctrl.GetValue() ref.checkingcolor = ref.checkingcolormenu ref.configfileargs['gui_checkingcolor']=ref.ColorToHex(ref.checkingcolor) ref.downloadcolor = ref.downloadcolormenu ref.configfileargs['gui_downloadcolor']=ref.ColorToHex(ref.downloadcolor) ref.seedingcolor = ref.seedingcolormenu ref.configfileargs['gui_seedingcolor']=ref.ColorToHex(ref.seedingcolor) if (sys.platform == 'win32'): ref.configfileargs['win32_taskbar_icon']=int(win32_taskbar_icon_checkbox.GetValue()) if ref.advancedConfig: for key,val in ref.advancedConfig.items(): ref.configfileargs[key] = val ref.writeConfigFile() ref.configReset = true ref.Close() except: ref.parent.exception() def cancelConfigs(self, ref = self): ref.Close() def savepath_set(self, ref = self): try: d = gui_default_savedir_ctrl.GetValue() if d == '': d = ref.configfileargs['last_saved'] dl = wxDirDialog(ref.panel, 'Choose a default directory to save to', d, style = wxDD_DEFAULT_STYLE | wxDD_NEW_DIR_BUTTON) if dl.ShowModal() == wxID_OK: gui_default_savedir_ctrl.SetValue(dl.GetPath()) except: ref.parent.exception() def checkingcoloricon_set(self, ref = self): try: newcolor = ref.getColorFromUser(ref.panel,ref.checkingcolormenu) ref.setColorIcon(ref.checkingcolor_icon, ref.checkingcolor_iconptr, newcolor) ref.checkingcolormenu = newcolor except: ref.parent.exception() def downloadcoloricon_set(self, ref = self): try: newcolor = ref.getColorFromUser(ref.panel,ref.downloadcolormenu) ref.setColorIcon(ref.downloadcolor_icon, ref.downloadcolor_iconptr, newcolor) ref.downloadcolormenu = newcolor except: ref.parent.exception() def seedingcoloricon_set(self, ref = self): try: newcolor = ref.getColorFromUser(ref.panel,ref.seedingcolormenu) ref.setColorIcon(ref.seedingcolor_icon, ref.seedingcolor_iconptr, newcolor) ref.seedingcolormenu = newcolor except: ref.parent.exception() EVT_BUTTON(self.configMenuBox, saveButton.GetId(), saveConfigs) EVT_BUTTON(self.configMenuBox, cancelButton.GetId(), cancelConfigs) EVT_BUTTON(self.configMenuBox, defaultsButton.GetId(), setDefaults) EVT_BUTTON(self.configMenuBox, advancedButton.GetId(), self.advancedMenu) EVT_BUTTON(self.configMenuBox, savepathButton.GetId(), savepath_set) EVT_LEFT_DOWN(self.checkingcolor_iconptr, checkingcoloricon_set) EVT_LEFT_DOWN(self.downloadcolor_iconptr, downloadcoloricon_set) EVT_LEFT_DOWN(self.seedingcolor_iconptr, seedingcoloricon_set) self.configMenuBox.Show () border.Fit(panel) self.configMenuBox.Fit() except: self.parent.exception() def advancedMenu(self, event = None): try: if len(self.advancedConfig) == 0: for key in ['ip', 'bind', 'min_peers', 'max_initiate', 'display_interval', 'alloc_type', 'alloc_rate', 'max_files_open', 'max_connections', 'super_seeder']: self.advancedConfig[key] = self.configfileargs[key] if (self.advancedMenuBox is not None): try: self.advancedMenuBox.Close () except wxPyDeadObjectError, e: self.advancedMenuBox = None self.advancedMenuBox = wxFrame(None, -1, 'BitTorrent Advanced Preferences', size = (1,1)) if (sys.platform == 'win32'): self.advancedMenuBox.SetIcon(self.icon) panel = wxPanel(self.advancedMenuBox, -1)# self.panel = panel def StaticText(text, font = self.FONT, underline = false, color = None, panel = panel): x = wxStaticText(panel, -1, text, style = wxALIGN_LEFT) x.SetFont(wxFont(font, wxDEFAULT, wxNORMAL, wxNORMAL, underline)) if color is not None: x.SetForegroundColour(color) return x
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -