MCPcopy Index your code
hub / github.com/python/cpython / IOBinding

Class IOBinding

Lib/idlelib/iomenu.py:20–395  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

18
19
20class IOBinding:
21# One instance per editor Window so methods know which to save, close.
22# Open returns focus to self.editwin if aborted.
23# EditorWindow.open_module, others, belong here.
24
25 def __init__(self, editwin):
26 self.editwin = editwin
27 self.text = editwin.text
28 self.__id_open = self.text.bind("<<open-window-from-file>>", self.open)
29 self.__id_save = self.text.bind("<<save-window>>", self.save)
30 self.__id_saveas = self.text.bind("<<save-window-as-file>>",
31 self.save_as)
32 self.__id_savecopy = self.text.bind("<<save-copy-of-window-as-file>>",
33 self.save_a_copy)
34 self.fileencoding = 'utf-8'
35 self.__id_print = self.text.bind("<<print-window>>", self.print_window)
36
37 def close(self):
38 # Undo command bindings
39 self.text.unbind("<<open-window-from-file>>", self.__id_open)
40 self.text.unbind("<<save-window>>", self.__id_save)
41 self.text.unbind("<<save-window-as-file>>",self.__id_saveas)
42 self.text.unbind("<<save-copy-of-window-as-file>>", self.__id_savecopy)
43 self.text.unbind("<<print-window>>", self.__id_print)
44 # Break cycles
45 self.editwin = None
46 self.text = None
47 self.filename_change_hook = None
48
49 def get_saved(self):
50 return self.editwin.get_saved()
51
52 def set_saved(self, flag):
53 self.editwin.set_saved(flag)
54
55 def reset_undo(self):
56 self.editwin.reset_undo()
57
58 filename_change_hook = None
59
60 def set_filename_change_hook(self, hook):
61 self.filename_change_hook = hook
62
63 filename = None
64 dirname = None
65
66 def set_filename(self, filename):
67 if filename and os.path.isdir(filename):
68 self.filename = None
69 self.dirname = filename
70 else:
71 self.filename = filename
72 self.dirname = None
73 self.set_saved(1)
74 if self.filename_change_hook:
75 self.filename_change_hook()
76
77 def open(self, event=None, editFile=None):

Callers 1

_io_bindingFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…