summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/idlelib/configDialog.py228
-rw-r--r--Lib/idlelib/textView.py120
2 files changed, 174 insertions, 174 deletions
diff --git a/Lib/idlelib/configDialog.py b/Lib/idlelib/configDialog.py
index f46f95f..e290aa5 100644
--- a/Lib/idlelib/configDialog.py
+++ b/Lib/idlelib/configDialog.py
@@ -11,128 +11,128 @@ from Tkinter import *
import tkMessageBox
class ConfigDialog(Toplevel):
- """
- configuration dialog for idle
- """
- def __init__(self,parent,title,configDict):
"""
- configDict - dictionary of configuration items
- """
- Toplevel.__init__(self, parent)
- self.configure(borderwidth=5)
- self.geometry("+%d+%d" % (parent.winfo_rootx()+20,
- parent.winfo_rooty()+30))
- self.config=configDict
- #elguavas - config placeholders til config stuff completed
- self.bg=self.cget('bg')
- self.fg=None
- #no ugly bold default text font on *nix
- self.textFont=tuple(Label().cget('font').split())[0:2]+('normal',)
+ configuration dialog for idle
+ """
+ def __init__(self,parent,title,configDict):
+ """
+ configDict - dictionary of configuration items
+ """
+ Toplevel.__init__(self, parent)
+ self.configure(borderwidth=5)
+ self.geometry("+%d+%d" % (parent.winfo_rootx()+20,
+ parent.winfo_rooty()+30))
+ self.config=configDict
+ #elguavas - config placeholders til config stuff completed
+ self.bg=self.cget('bg')
+ self.fg=None
+ #no ugly bold default text font on *nix
+ self.textFont=tuple(Label().cget('font').split())[0:2]+('normal',)
- self.CreateWidgets()
- self.resizable(height=FALSE,width=FALSE)
- self.ChangePage()
- self.transient(parent)
- self.grab_set()
- self.protocol("WM_DELETE_WINDOW", self.Cancel)
- self.parent = parent
- self.framePages.focus_set()
- #key bindings for this dialog
+ self.CreateWidgets()
+ self.resizable(height=FALSE,width=FALSE)
+ self.ChangePage()
+ self.transient(parent)
+ self.grab_set()
+ self.protocol("WM_DELETE_WINDOW", self.Cancel)
+ self.parent = parent
+ self.framePages.focus_set()
+ #key bindings for this dialog
# self.bind('<Return>',self.Ok) #dismiss dialog
- self.bind('<Escape>',self.CancelBinding) #dismiss dialog, no save
- self.bind('<Alt-s>',self.SaveBinding) #dismiss dialog, save
- self.bind('<Alt-r>',self.RevertBinding) #revert to defaults
- self.bind('<Alt-f>',self.ChangePageBinding)
- self.bind('<Alt-c>',self.ChangePageBinding)
- self.bind('<Alt-k>',self.ChangePageBinding)
- self.bind('<Alt-g>',self.ChangePageBinding)
- self.wait_window()
-
- def Cancel(self):
- self.destroy()
+ self.bind('<Escape>',self.CancelBinding) #dismiss dialog, no save
+ self.bind('<Alt-s>',self.SaveBinding) #dismiss dialog, save
+ self.bind('<Alt-r>',self.RevertBinding) #revert to defaults
+ self.bind('<Alt-f>',self.ChangePageBinding)
+ self.bind('<Alt-c>',self.ChangePageBinding)
+ self.bind('<Alt-k>',self.ChangePageBinding)
+ self.bind('<Alt-g>',self.ChangePageBinding)
+ self.wait_window()
+
+ def Cancel(self):
+ self.destroy()
- def Save(self):
- pass
+ def Save(self):
+ pass
- def Revert(self):
- pass
+ def Revert(self):
+ pass
- def ChangePage(self):
- self.pages[self.pageNum.get()].lift()
- self.title('Settings - '+self.pageButtons[self.pageNum.get()].cget('text'))
+ def ChangePage(self):
+ self.pages[self.pageNum.get()].lift()
+ self.title('Settings - '+self.pageButtons[self.pageNum.get()].cget('text'))
- def CancelBinding(self,event):
- self.Cancel()
-
- def SaveBinding(self,event):
- self.Save()
-
- def RevertBinding(self,event):
- self.Revert()
-
- def ChangePageBinding(self,event):
- pageKeys=('f','c','k','g')
- pos=0
- for key in pageKeys:
- if event.char == key:
- self.pageNum.set(pos)
- self.ChangePage()
- return
- pos=pos+1
-
- def CreateWidgets(self):
- self.framePages = Frame(self,borderwidth=2,relief=SUNKEN)
- frameActionButtons = Frame(self)
- framePageButtons = Frame(self.framePages,borderwidth=1,relief=SUNKEN)
- #action buttons
- self.buttonRevert = Button(frameActionButtons,text='Revert',
- command=self.Revert,underline=0,takefocus=FALSE)
- self.buttonSave = Button(frameActionButtons,text='Save',
- command=self.Save,underline=0,takefocus=FALSE)
- self.buttonCancel = Button(frameActionButtons,text='Cancel',
- command=self.Cancel,takefocus=FALSE)
- #page buttons
- self.pageNum=IntVar()
- self.pageNum.set(0)
- buttonPageFonts = Radiobutton(framePageButtons,value=0,text='Fonts')
- buttonPageColours = Radiobutton(framePageButtons,value=1,text='Colours')
- buttonPageKeys = Radiobutton(framePageButtons,value=2,text='Keys')
- buttonPageGeneral = Radiobutton(framePageButtons,value=3,text='General')
- self.pageButtons=(buttonPageFonts,buttonPageColours,
- buttonPageKeys,buttonPageGeneral)
- for button in self.pageButtons:
- button.config(command=self.ChangePage,underline=0,takefocus=FALSE,
- indicatoron=FALSE,highlightthickness=0,variable=self.pageNum,
- selectcolor=self.bg,borderwidth=1)
- button.pack(side=LEFT)
- #pages
- framePageFonts=Frame(self.framePages)
- framePageColours=Frame(self.framePages)
- framePageKeys=Frame(self.framePages)
- framePageGeneral=Frame(self.framePages)
- self.pages=(framePageFonts,framePageColours,framePageKeys,framePageGeneral)
- #pageFonts
- Button(framePageFonts,text='fonts page test').pack(padx=30,pady=30)
- #pageColours
- Button(framePageColours,text='colours page test').pack(padx=60,pady=60)
- #pageKeys
- Button(framePageKeys,text='keys page test').pack(padx=90,pady=90)
- #pageGeneral
- Button(framePageGeneral,text='general page test').pack(padx=110,pady=110)
+ def CancelBinding(self,event):
+ self.Cancel()
+
+ def SaveBinding(self,event):
+ self.Save()
- #grid in framePages so we can overlap pages
- framePageButtons.grid(row=0,column=0,sticky=W)
- for page in self.pages: page.grid(row=1,column=0,sticky=(N,S,E,W))
+ def RevertBinding(self,event):
+ self.Revert()
- self.buttonRevert.pack(side=LEFT,padx=5,pady=5)
- self.buttonSave.pack(side=LEFT,padx=5,pady=5)
- self.buttonCancel.pack(side=LEFT,padx=5,pady=5)
- frameActionButtons.pack(side=BOTTOM)
- self.framePages.pack(side=TOP,expand=TRUE,fill=BOTH)
+ def ChangePageBinding(self,event):
+ pageKeys=('f','c','k','g')
+ pos=0
+ for key in pageKeys:
+ if event.char == key:
+ self.pageNum.set(pos)
+ self.ChangePage()
+ return
+ pos=pos+1
+ def CreateWidgets(self):
+ self.framePages = Frame(self,borderwidth=2,relief=SUNKEN)
+ frameActionButtons = Frame(self)
+ framePageButtons = Frame(self.framePages,borderwidth=1,relief=SUNKEN)
+ #action buttons
+ self.buttonRevert = Button(frameActionButtons,text='Revert',
+ command=self.Revert,underline=0,takefocus=FALSE)
+ self.buttonSave = Button(frameActionButtons,text='Save',
+ command=self.Save,underline=0,takefocus=FALSE)
+ self.buttonCancel = Button(frameActionButtons,text='Cancel',
+ command=self.Cancel,takefocus=FALSE)
+ #page buttons
+ self.pageNum=IntVar()
+ self.pageNum.set(0)
+ buttonPageFonts = Radiobutton(framePageButtons,value=0,text='Fonts')
+ buttonPageColours = Radiobutton(framePageButtons,value=1,text='Colours')
+ buttonPageKeys = Radiobutton(framePageButtons,value=2,text='Keys')
+ buttonPageGeneral = Radiobutton(framePageButtons,value=3,text='General')
+ self.pageButtons=(buttonPageFonts,buttonPageColours,
+ buttonPageKeys,buttonPageGeneral)
+ for button in self.pageButtons:
+ button.config(command=self.ChangePage,underline=0,takefocus=FALSE,
+ indicatoron=FALSE,highlightthickness=0,variable=self.pageNum,
+ selectcolor=self.bg,borderwidth=1)
+ button.pack(side=LEFT)
+ #pages
+ framePageFonts=Frame(self.framePages)
+ framePageColours=Frame(self.framePages)
+ framePageKeys=Frame(self.framePages)
+ framePageGeneral=Frame(self.framePages)
+ self.pages=(framePageFonts,framePageColours,framePageKeys,framePageGeneral)
+ #pageFonts
+ Button(framePageFonts,text='fonts page test').pack(padx=30,pady=30)
+ #pageColours
+ Button(framePageColours,text='colours page test').pack(padx=60,pady=60)
+ #pageKeys
+ Button(framePageKeys,text='keys page test').pack(padx=90,pady=90)
+ #pageGeneral
+ Button(framePageGeneral,text='general page test').pack(padx=110,pady=110)
+
+ #grid in framePages so we can overlap pages
+ framePageButtons.grid(row=0,column=0,sticky=W)
+ for page in self.pages: page.grid(row=1,column=0,sticky=(N,S,E,W))
+
+ self.buttonRevert.pack(side=LEFT,padx=5,pady=5)
+ self.buttonSave.pack(side=LEFT,padx=5,pady=5)
+ self.buttonCancel.pack(side=LEFT,padx=5,pady=5)
+ frameActionButtons.pack(side=BOTTOM)
+ self.framePages.pack(side=TOP,expand=TRUE,fill=BOTH)
+
if __name__ == '__main__':
- #test the dialog
- root=Tk()
- Button(root,text='Dialog',
- command=lambda:ConfigDialog(root,'Settings',None)).pack()
- root.mainloop()
+ #test the dialog
+ root=Tk()
+ Button(root,text='Dialog',
+ command=lambda:ConfigDialog(root,'Settings',None)).pack()
+ root.mainloop()
diff --git a/Lib/idlelib/textView.py b/Lib/idlelib/textView.py
index 72d8b34..9b3fb97 100644
--- a/Lib/idlelib/textView.py
+++ b/Lib/idlelib/textView.py
@@ -11,67 +11,67 @@ from Tkinter import *
import tkMessageBox
class TextViewer(Toplevel):
- """
- simple text viewer dialog for idle
- """
- def __init__(self,parent,title,fileName):
"""
- fileName - string,should be an absoulute filename
- """
- Toplevel.__init__(self, parent)
- self.configure(borderwidth=5)
- self.geometry("+%d+%d" % (parent.winfo_rootx()+10,
- parent.winfo_rooty()+10))
- #elguavas - config placeholders til config stuff completed
- self.bg=None
- self.fg=None
+ simple text viewer dialog for idle
+ """
+ def __init__(self,parent,title,fileName):
+ """
+ fileName - string,should be an absoulute filename
+ """
+ Toplevel.__init__(self, parent)
+ self.configure(borderwidth=5)
+ self.geometry("+%d+%d" % (parent.winfo_rootx()+10,
+ parent.winfo_rooty()+10))
+ #elguavas - config placeholders til config stuff completed
+ self.bg=None
+ self.fg=None
- self.CreateWidgets()
- self.title(title)
- self.transient(parent)
- self.grab_set()
- self.protocol("WM_DELETE_WINDOW", self.Ok)
- self.parent = parent
- self.textView.focus_set()
- #key bindings for this dialog
- self.bind('<Return>',self.Ok) #dismiss dialog
- self.bind('<Escape>',self.Ok) #dismiss dialog
- self.LoadTextFile(fileName)
- self.textView.config(state=DISABLED)
- self.wait_window()
-
- def LoadTextFile(self, fileName):
- textFile = None
- try:
- textFile = open(fileName, 'r')
- except IOError:
- tkMessageBox.showerror(title='File Load Error',
- message='Unable to load file '+`fileName`+' .')
- else:
- self.textView.insert(0.0,textFile.read())
-
- def CreateWidgets(self):
- frameText = Frame(self)
- frameButtons = Frame(self)
- self.buttonOk = Button(frameButtons,text='Ok',
- command=self.Ok,takefocus=FALSE,default=ACTIVE)
- self.scrollbarView = Scrollbar(frameText,orient=VERTICAL,
- takefocus=FALSE,highlightthickness=0)
- self.textView = Text(frameText,wrap=WORD,highlightthickness=0)
- self.scrollbarView.config(command=self.textView.yview)
- self.textView.config(yscrollcommand=self.scrollbarView.set)
- self.buttonOk.pack(padx=5,pady=5)
- self.scrollbarView.pack(side=RIGHT,fill=Y)
- self.textView.pack(side=LEFT,expand=TRUE,fill=BOTH)
- frameButtons.pack(side=BOTTOM,fill=X)
- frameText.pack(side=TOP,expand=TRUE,fill=BOTH)
-
- def Ok(self, event=None):
- self.destroy()
+ self.CreateWidgets()
+ self.title(title)
+ self.transient(parent)
+ self.grab_set()
+ self.protocol("WM_DELETE_WINDOW", self.Ok)
+ self.parent = parent
+ self.textView.focus_set()
+ #key bindings for this dialog
+ self.bind('<Return>',self.Ok) #dismiss dialog
+ self.bind('<Escape>',self.Ok) #dismiss dialog
+ self.LoadTextFile(fileName)
+ self.textView.config(state=DISABLED)
+ self.wait_window()
+
+ def LoadTextFile(self, fileName):
+ textFile = None
+ try:
+ textFile = open(fileName, 'r')
+ except IOError:
+ tkMessageBox.showerror(title='File Load Error',
+ message='Unable to load file '+`fileName`+' .')
+ else:
+ self.textView.insert(0.0,textFile.read())
+
+ def CreateWidgets(self):
+ frameText = Frame(self)
+ frameButtons = Frame(self)
+ self.buttonOk = Button(frameButtons,text='Ok',
+ command=self.Ok,takefocus=FALSE,default=ACTIVE)
+ self.scrollbarView = Scrollbar(frameText,orient=VERTICAL,
+ takefocus=FALSE,highlightthickness=0)
+ self.textView = Text(frameText,wrap=WORD,highlightthickness=0)
+ self.scrollbarView.config(command=self.textView.yview)
+ self.textView.config(yscrollcommand=self.scrollbarView.set)
+ self.buttonOk.pack(padx=5,pady=5)
+ self.scrollbarView.pack(side=RIGHT,fill=Y)
+ self.textView.pack(side=LEFT,expand=TRUE,fill=BOTH)
+ frameButtons.pack(side=BOTTOM,fill=X)
+ frameText.pack(side=TOP,expand=TRUE,fill=BOTH)
+
+ def Ok(self, event=None):
+ self.destroy()
if __name__ == '__main__':
- #test the dialog
- root=Tk()
- Button(root,text='View',
- command=lambda:TextViewer(root,'Text','./textView.py')).pack()
- root.mainloop()
+ #test the dialog
+ root=Tk()
+ Button(root,text='View',
+ command=lambda:TextViewer(root,'Text','./textView.py')).pack()
+ root.mainloop()