diff --git a/SpanshRouter/AutoCompleter.py b/SpanshRouter/AutoCompleter.py index 59e4535..ac7f614 100755 --- a/SpanshRouter/AutoCompleter.py +++ b/SpanshRouter/AutoCompleter.py @@ -25,10 +25,16 @@ class AutoCompleter(Entry, PlaceHolder): PlaceHolder.__init__(self, placeholder) + # Create right click menu + self.menu = Menu(self.parent, tearoff=0) + self.menu.add_command(label="Cut") + self.menu.add_command(label="Copy") + self.menu.add_command(label="Paste") + self.bind("", self.keypressed) self.lb.bind("", self.keypressed) self.bind('', self.select_all) - self.bind('', self.paste) + self.bind('', self.show_menu) self.lb.bind("", self.selection) self.bind("", self.ac_foc_out) self.lb.bind("", self.ac_foc_out) @@ -41,10 +47,17 @@ class AutoCompleter(Entry, PlaceHolder): if widget_under_cursor != self.lb and widget_under_cursor != self: self.foc_out() self.hide_list() - - def paste(self, event): + + def show_menu(self, e): self.foc_in() - self.insert(0, self.clipboard_get()) + w = e.widget + self.menu.entryconfigure("Cut", + command=lambda: w.event_generate("<>")) + self.menu.entryconfigure("Copy", + command=lambda: w.event_generate("<>")) + self.menu.entryconfigure("Paste", + command=lambda: w.event_generate("<>")) + self.menu.tk.call("tk_popup", self.menu, e.x_root, e.y_root) def keypressed(self, event): key=event.keysym