1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | ## ## ## ################################################ ## ###### Please Don't Remove Author Name ######### ## ############# Thanks ########################### ## ################################################ ## ## __author__='''
###################################################### By ######################################################
Suraj Singh surajsinghbisht054@gmail.com http://www.bitforestinfo.com/
###################################################### ''' from Graphics import Tkinter, tkFileDialog
class FileHandler: def __init__(self, text): self.text = text self.text.storeobj['OpenFile']=None self.functions_key_bindings() self.binding_key_configuration()
def binding_key_configuration(self): for key in ['<Control-N>',"<Control-n>"]: self.text.bind(key, self.new_file) for key in ['<Control-S>',"<Control-s>"]: self.text.bind(key, self.save_file) for key in ['<Control-Shift-S>',"<Control-Shift-s>"]: self.text.bind(key, self.save_as) for key in ['<Control-O>',"<Control-o>"]: self.text.bind(key, self.open_file) for key in ['<Control-q>',"<Control-Q>"]: self.text.bind(key, self.quit) return
def functions_key_bindings(self): self.text.storeobj['Open']=self.open_file self.text.storeobj['Save']=self.save_file self.text.storeobj['SaveAs']=self.save_as self.text.storeobj['OpenNew']=self.new_file return
def open_file(self, event=None): path = tkFileDialog.askopenfilename() if path: data=open(path,"rb").read() self.text.delete('1.0','end') self.text.insert("1.0", data) self.text.storeobj['OpenFile']=path return
def save_file(self, event=None): if not self.text.storeobj['OpenFile']: path = tkFileDialog.asksaveasfilename() else: path = self.text.storeobj['OpenFile'] if path: data = self.text.get("1.0",'end') f_=open(path,"wb") f_.write(data) f_.close() self.text.storeobj['OpenFile']=path return
def save_as(self, event=None): path = tkFileDialog.asksaveasfilename() if path: data = self.text.get("1.0",'end') f_=open(path,"wb") f_.write(data) f_.close() return
def new_file(self, event=None): print "New" return
def quit(self, event=None): import sys sys.exit(0) return
if __name__ == '__main__': root = Tkinter.Tk() pad = Tkinter.Text(root) pad.pack() pad.storeobj={} FileHandler(pad) root.mainloop()
|