def dragdone_a(self, a, evt, shift=None): shift = evt.guiEvent.ShiftDown() redraw = super(FigAnnotate, self).dragdone_a(a, evt, shift=shift) dx = evt.x - self._st_p[0] dy = evt.y - self._st_p[1] xy = self.getp("xy") xytext = self.getp("xytext") xycoords = self.getp("xycoords") textcoords = self.getp("textcoords") hist = self.get_root_parent().app.history hist.start_record() if self._drag_mode & 2 != 0: t1 = self.coordsname2transform(self._parent._artists[0], xycoords) xyd = self.convert_transform_point(t1, None, xy) xyd = (xyd[0] + dx, xyd[1] + dy) xy = self.convert_transform_point(None, t1, xyd) action1 = UndoRedoFigobjProperty(self._artists[0], 'xy', xy) hist.add_history(action1) if self._drag_mode & 1 != 0: t2 = self.coordsname2transform(self._parent._artists[0], textcoords) xytextd = self.convert_transform_point(t2, None, xytext) xytextd = (xytextd[0] + dx, xytextd[1] + dy) xytext = self.convert_transform_point(None, t2, xytextd) action2 = UndoRedoFigobjProperty(self._artists[0], 'xytext', xytext) hist.add_history(action2) hist.stop_record()
def SetCanvasValue2(self, artist=None): a = self.h_slider.GetValue() b = self.v_slider.GetValue() c = self.use_def.IsChecked() se = self.GetParent().GetParent().GetParent() pe = se.GetParent() canvas = pe.get_canvas() f_page = (canvas.get_figure()).figobj if se.area_hit in se.area: idx = se.area.index(se.area_hit) else: se.area_hit = se.area[0] idx = 0 f_axes = f_page.get_child(idx) if f_axes is None: return ac = [ UndoRedoFigobjProperty(f_axes._artists[0], 'use_def_margin', c), ] window = self.GetTopLevelParent() GlobalHistory().get_history(window).make_entry( ac, menu_name='use default margin') wx.CallAfter(self.GetParent().GetParent().GetParent().SetEditorValue) return f_axes.setp("use_def_margin", c) f_page.realize() canvas.draw() self.GetParent().GetParent().GetParent().SetEditorValue()
def onClipTextByAxes(evt, figobj=self): action1 = UndoRedoFigobjProperty(figobj._artists[0], 'clip', not self.getp('clip')) window = evt.GetEventObject().GetTopLevelParent() hist = GlobalHistory().get_history(window) hist.make_entry([action1], menu_name = 'clipping')
def onEL_Changed(self, evt): ifig_canvas = self.parent.get_canvas() fig = ifig_canvas.get_figure() menu_name = 'page property' if evt.elp == self.elp: value = self.elp.GetValue() v = value[evt.widget_idx] if evt.widget_idx == 1: action = UndoRedoArtistProperty(fig, "facecolor", v) menu_name = 'background color' elif evt.widget_idx == 0: action = UndoRedoFigobjMethod(fig, "suptitle_labelinfo", v) menu_name = 'suptitle' # fig.figobj.set_suptitle(str(v)) elif evt.widget_idx == 1: action = UndoRedoFigobjMethod(fig, "suptitle_size", float(v)) menu_name = 'suptitle size' # fig.figobj.set_suptitle_size(float(v)) elif evt.widget_idx == 3: action = UndoRedoFigobjProperty(fig, "title_size", float(v), nodelete=True) menu_name = 'title size' elif evt.widget_idx == 4: action = UndoRedoFigobjProperty(fig, "ticklabel_size", float(v), nodelete=True) menu_name = 'tick label size' elif evt.widget_idx == 5: action = UndoRedoFigobjProperty(fig, "axeslabel_size", float(v), nodelete=True) menu_name = 'axes label size' elif evt.widget_idx == 6: action = UndoRedoFigobjProperty(fig, "axesbox_width", float(v), nodelete=True) menu_name = 'axes box width' elif evt.widget_idx == 7: action = UndoRedoFigobjProperty(fig, "axestick_width", float(v), nodelete=True) menu_name = 'axes tick width' # fig.figobj.setp("axestick_width", float(v)) elif evt.elp == self.elp2: value = self.elp2.GetValue() v = value[evt.widget_idx] if evt.widget_idx == 1: action = UndoRedoFigobjProperty(fig, "tick_font", str(v), nodelete=True) menu_name = 'tick font' elif evt.widget_idx == 2: action = UndoRedoFigobjProperty(fig, "tick_weight", str(v), nodelete=True) menu_name = 'tick weight' elif evt.widget_idx == 3: action = UndoRedoFigobjProperty(fig, "tick_style", str(v), nodelete=True) menu_name = 'tick style' elif evt.widget_idx == 5: action = UndoRedoFigobjProperty(fig, "title_font", str(v), nodelete=True) menu_name = 'title font' elif evt.widget_idx == 6: action = UndoRedoFigobjProperty(fig, "title_weight", str(v), nodelete=True) menu_name = 'title weight' elif evt.widget_idx == 7: action = UndoRedoFigobjProperty(fig, "title_style", str(v), nodelete=True) menu_name = 'title style' window = ifig_canvas.GetTopLevelParent() hist = GlobalHistory().get_history(window) hist.make_entry([action], menu_name=menu_name, draw_request='draw_all')