def handle(self, event): self.window().make_current() if event == Fltk.FL_PUSH: if self._draw_overlay: self._oldx = Fltk.Fl.event_x() self._oldy = Fltk.Fl.event_y() if Fltk.Fl.event_clicks() and self.button_double_press_event: self.double_press_event( fltk_event2mpl_event('button_double_press_event', self._source, True, True, True)) return 1 elif self.button_press_event: self.button_press_event( fltk_event2mpl_event('button_press_event', self._source, True, True, True)) return 1 elif event == Fltk.FL_ENTER: return 1 elif event == Fltk.FL_LEAVE: return 1 elif event == Fltk.FL_MOVE: if self.motion_notify_event: self.motion_notify_event( fltk_event2mpl_event('motion_notify_event', self._source, True, False, True)) return 1 elif event == Fltk.FL_DRAG: if self._draw_overlay: self._dx = Fltk.Fl.event_x() - self._oldx self._dy = Fltk.Fl.event_y() - self._oldy Fltk.fl_overlay_rect(self._oldx, self._oldy, self._dx, self._dy) if self.motion_notify_event: self.motion_notify_event( fltk_event2mpl_event('motion_notify_event', self._source, True, True, True)) return 1 elif event == Fltk.FL_RELEASE: if self._draw_overlay: Fltk.fl_overlay_clear() if self.button_release_event: self.button_release_event( fltk_event2mpl_event('button_release_event', self._source, True, True, True)) return 1 else: return 0
def handle(self, event): self.window().make_current() if event == Fltk.FL_PUSH: if self._draw_overlay: self._oldx=Fltk.Fl.event_x() self._oldy=Fltk.Fl.event_y() if Fltk.Fl.event_clicks() and self.button_double_press_event: self.double_press_event(fltk_event2mpl_event('button_double_press_event',self._source,True,True,True)) return 1 elif self.button_press_event: self.button_press_event(fltk_event2mpl_event('button_press_event',self._source,True,True,True)) return 1 elif event == Fltk.FL_ENTER: return 1 elif event == Fltk.FL_LEAVE: return 1 elif event == Fltk.FL_MOVE: if self.motion_notify_event: self.motion_notify_event(fltk_event2mpl_event('motion_notify_event',self._source,True,False,True)) return 1 elif event == Fltk.FL_DRAG: if self._draw_overlay: self._dx=Fltk.Fl.event_x()-self._oldx self._dy=Fltk.Fl.event_y()-self._oldy Fltk.fl_overlay_rect(self._oldx,self._oldy,self._dx,self._dy) if self.motion_notify_event: self.motion_notify_event(fltk_event2mpl_event('motion_notify_event',self._source,True,True,True)) return 1 elif event == Fltk.FL_RELEASE: if self._draw_overlay: Fltk.fl_overlay_clear() if self.button_release_event: self.button_release_event(fltk_event2mpl_event('button_release_event',self._source,True,True,True)) return 1 else: return 0
def handle(self, event): self.window().make_current() x = Fltk.Fl.event_x() y = Fltk.Fl.event_y() yf = self._source.figure.bbox.height() - y if event == Fltk.FL_FOCUS or event == Fltk.FL_UNFOCUS: return 1 elif event == Fltk.FL_KEYDOWN: ikey = Fltk.Fl.event_key() if ikey <= 255: self._key = chr(ikey) else: try: self._key = special_key[ikey] except: self._key = None FigureCanvasBase.key_press_event(self._source, self._key) return 1 elif event == Fltk.FL_KEYUP: FigureCanvasBase.key_release_event(self._source, self._key) self._key = None elif event == Fltk.FL_PUSH: if Fltk.Fl.event_button1(): self._button = 1 elif Fltk.Fl.event_button2(): self._button = 2 elif Fltk.Fl.event_button3(): self._button = 3 else: self._button = None if self._draw_overlay: self._oldx = x self._oldy = y if Fltk.Fl.event_clicks(): FigureCanvasBase.button_press_event(self._source, x, yf, self._button) return 1 else: FigureCanvasBase.button_press_event(self._source, x, yf, self._button) return 1 elif event == Fltk.FL_ENTER: self.take_focus() return 1 elif event == Fltk.FL_LEAVE: return 1 elif event == Fltk.FL_MOVE: FigureCanvasBase.motion_notify_event(self._source, x, yf) return 1 elif event == Fltk.FL_DRAG: if self._draw_overlay: self._dx = Fltk.Fl.event_x() - self._oldx self._dy = Fltk.Fl.event_y() - self._oldy Fltk.fl_overlay_rect(self._oldx, self._oldy, self._dx, self._dy) FigureCanvasBase.motion_notify_event(self._source, x, yf) return 1 elif event == Fltk.FL_RELEASE: if self._draw_overlay: Fltk.fl_overlay_clear() FigureCanvasBase.button_release_event(self._source, x, yf, self._button) self._button = None return 1 else: return 0
def handle(self, event): x = Fltk.Fl.event_x() y = Fltk.Fl.event_y() yf = self._source.figure.bbox.height - y if event == Fltk.FL_FOCUS or event == Fltk.FL_UNFOCUS: return 1 elif event == Fltk.FL_KEYDOWN: ikey = Fltk.Fl.event_key() if (ikey <= 255): self._key = chr(ikey) else: try: self._key = special_key[ikey] except: self._key = None FigureCanvasBase.key_press_event(self._source, self._key) return 1 elif event == Fltk.FL_KEYUP: FigureCanvasBase.key_release_event(self._source, self._key) self._key = None elif event == Fltk.FL_PUSH: self.window().make_current() if Fltk.Fl.event_button1(): self._button = 1 elif Fltk.Fl.event_button2(): self._button = 2 elif Fltk.Fl.event_button3(): self._button = 3 else: self._button = None if self._draw_overlay: self._oldx = x self._oldy = y if Fltk.Fl.event_clicks(): FigureCanvasBase.button_press_event(self._source, x, yf, self._button) return 1 else: FigureCanvasBase.button_press_event(self._source, x, yf, self._button) return 1 elif event == Fltk.FL_ENTER: self.take_focus() return 1 elif event == Fltk.FL_LEAVE: return 1 elif event == Fltk.FL_MOVE: FigureCanvasBase.motion_notify_event(self._source, x, yf) return 1 elif event == Fltk.FL_DRAG: self.window().make_current() if self._draw_overlay: self._dx = Fltk.Fl.event_x() - self._oldx self._dy = Fltk.Fl.event_y() - self._oldy Fltk.fl_overlay_rect(self._oldx, self._oldy, self._dx, self._dy) FigureCanvasBase.motion_notify_event(self._source, x, yf) return 1 elif event == Fltk.FL_RELEASE: self.window().make_current() if self._draw_overlay: Fltk.fl_overlay_clear() FigureCanvasBase.button_release_event(self._source, x, yf, self._button) self._button = None return 1 return 0
def handle(self, event): x=Fltk.Fl.event_x() y=Fltk.Fl.event_y() yf=self._source.figure.bbox.height - y if event == Fltk.FL_FOCUS or event == Fltk.FL_UNFOCUS: return 1 elif event == Fltk.FL_KEYDOWN: ikey= Fltk.Fl.event_key() if(ikey<=255): self._key=chr(ikey) else: try: self._key=special_key[ikey] except: self._key=None # TODO: Handle ctrl, alt, super modifiers. FigureCanvasBase.key_press_event(self._source, self._key) return 1 elif event == Fltk.FL_KEYUP: FigureCanvasBase.key_release_event(self._source, self._key) self._key=None elif event == Fltk.FL_PUSH: self.window().make_current() if Fltk.Fl.event_button1(): self._button = 1 elif Fltk.Fl.event_button2(): self._button = 2 elif Fltk.Fl.event_button3(): self._button = 3 else: self._button = None if self._draw_overlay: self._oldx=x self._oldy=y if Fltk.Fl.event_clicks(): # according to docs, event_clicks() returns nonzero if this is a double click. FigureCanvasBase.button_press_event(self._source, x, yf, self._button, dblclick=True) return 1 else: FigureCanvasBase.button_press_event(self._source, x, yf, self._button) return 1 elif event == Fltk.FL_ENTER: self.take_focus() return 1 elif event == Fltk.FL_LEAVE: return 1 elif event == Fltk.FL_MOVE: FigureCanvasBase.motion_notify_event(self._source, x, yf) return 1 elif event == Fltk.FL_DRAG: self.window().make_current() if self._draw_overlay: self._dx=Fltk.Fl.event_x()-self._oldx self._dy=Fltk.Fl.event_y()-self._oldy Fltk.fl_overlay_rect(self._oldx,self._oldy,self._dx,self._dy) FigureCanvasBase.motion_notify_event(self._source, x, yf) return 1 elif event == Fltk.FL_RELEASE: self.window().make_current() if self._draw_overlay: Fltk.fl_overlay_clear() FigureCanvasBase.button_release_event(self._source, x, yf, self._button) self._button = None return 1 return 0