Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit bbf5ef5

Browse files
author
Steven M. Gava
committed
more on config saving
1 parent c112cd8 commit bbf5ef5

1 file changed

Lines changed: 30 additions & 16 deletions

File tree

Lib/idlelib/configDialog.py

Lines changed: 30 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -367,9 +367,11 @@ def CreatePageGeneral(self):
367367
self.listExt.bind('<ButtonRelease-1>',self.ExtensionSelected)
368368
labelExtSetTitle=Label(frameExtSet,text='Settings')
369369
self.radioEnableExt=Radiobutton(frameExtSet,variable=self.extEnabled,
370-
value=1,text="enabled",state=DISABLED)
370+
value=1,text="enabled",state=DISABLED,
371+
command=self.ExtensionStateToggled)
371372
self.radioDisableExt=Radiobutton(frameExtSet,variable=self.extEnabled,
372-
value=0,text="disabled",state=DISABLED)
373+
value=0,text="disabled",state=DISABLED,
374+
command=self.ExtensionStateToggled)
373375
self.buttonExtConfig=Button(frameExtSet,text='Configure',state=DISABLED)
374376
#widget packing
375377
#body
@@ -412,60 +414,68 @@ def AttachVarCallbacks(self):
412414
self.winWidth.trace_variable('w',self.VarChanged_winWidth)
413415
self.winHeight.trace_variable('w',self.VarChanged_winHeight)
414416
self.startupEdit.trace_variable('w',self.VarChanged_startupEdit)
415-
self.extEnabled.trace_variable('w',self.VarChanged_extEnabled)
416417

417418
def VarChanged_fontSize(self,*params):
418419
value=self.fontSize.get()
419420
self.AddChangedItem('main','EditorWindow','font-size',value)
420-
print 'fontSize:',value
421421

422422
def VarChanged_fontName(self,*params):
423423
value=self.fontName.get()
424424
self.AddChangedItem('main','EditorWindow','font',value)
425-
print 'fontName:',value
426425

427426
def VarChanged_fontBold(self,*params):
428427
value=self.fontBold.get()
429428
self.AddChangedItem('main','EditorWindow','font-bold',value)
430-
print 'fontBold:',value
431429

432430
def VarChanged_indentBySpaces(self,*params):
433431
value=self.indentBySpaces.get()
434432
self.AddChangedItem('main','Indent','use-spaces',value)
435-
print 'indentBySpaces:',value
436433

437434
def VarChanged_spaceNum(self,*params):
438435
value=self.spaceNum.get()
439436
self.AddChangedItem('main','Indent','num-spaces',value)
440-
print 'spaceNum:',value
441437

442438
def VarChanged_tabCols(self,*params):
443439
value=self.tabCols.get()
444440
self.AddChangedItem('main','Indent','tab-cols',value)
445-
print 'tabCols:',value
446441

447442
def VarChanged_colour(self,*params):
443+
value=self.colour.get()
444+
theme=self.customTheme.get()
445+
element=self.themeElements[self.highlightTarget.get()][0]
446+
self.AddChangedItem('highlight',theme,element,value)
448447
print params
449-
448+
450449
def VarChanged_keyBinding(self,*params):
450+
value=self.keyBinding.get()
451+
keySet=self.customKeys.get()
452+
event=self.listBindings.get(ANCHOR).split()[0]
453+
self.AddChangedItem('keys',keySet,event,value)
451454
print params
452455

453456
def VarChanged_winWidth(self,*params):
454-
print params
457+
value=self.winWidth.get()
458+
self.AddChangedItem('main','EditorWindow','width',value)
455459

456460
def VarChanged_winHeight(self,*params):
457-
print params
461+
value=self.winHeight.get()
462+
self.AddChangedItem('main','EditorWindow','height',value)
458463

459464
def VarChanged_startupEdit(self,*params):
460-
print params
465+
value=self.startupEdit.get()
466+
self.AddChangedItem('main','General','editor-on-startup',value)
461467

462-
def VarChanged_extEnabled(self,*params):
463-
print params
468+
def ExtensionStateToggled(self):
469+
#callback for the extension enable/disable radio buttons
470+
value=self.extEnabled.get()
471+
extension=self.listExt.get(ANCHOR)
472+
self.AddChangedItem('extensions',extension,'enabled',value)
464473

465474
def AddChangedItem(self,type,section,item,value):
466475
if not self.changedItems[type].has_key(section):
467476
self.changedItems[type][section]={}
468477
self.changedItems[type][section][item]=value
478+
print type,section,item,value
469479

470480
def GetDefaultItems(self):
471481
dItems={'main':{},'highlight':{},'keys':{},'extensions':{}}
@@ -675,8 +685,12 @@ def GetNewKeys(self):
675685
if newKeys.result: #new keys were specified
676686
self.listBindings.delete(listIndex)
677687
self.listBindings.insert(listIndex,bindName+' - '+newKeys.result)
688+
self.listBindings.select_set(listIndex)
689+
self.listBindings.select_anchor(listIndex)
678690
self.keyBinding.set(newKeys.result)
679-
self.listBindings.select_set(listIndex)
691+
else:
692+
self.listBindings.select_set(listIndex)
693+
self.listBindings.select_anchor(listIndex)
680694

681695
def KeyBindingSelected(self,event):
682696
self.buttonNewKeys.config(state=NORMAL)

0 commit comments

Comments
 (0)