mirror of
https://github.com/fatiando/moulder.git
synced 2025-12-21 18:41:07 +08:00
add_vertex_action is now Checkable
This commit is contained in:
@@ -56,6 +56,7 @@ class MoulderApp(QMainWindow):
|
|||||||
self.quit_action.triggered.connect(self._quit_callback)
|
self.quit_action.triggered.connect(self._quit_callback)
|
||||||
self.moulder.polygon_selected.connect(self._change_density_callback)
|
self.moulder.polygon_selected.connect(self._change_density_callback)
|
||||||
self.moulder.drawing_mode.connect(self._drawing_mode_callback)
|
self.moulder.drawing_mode.connect(self._drawing_mode_callback)
|
||||||
|
self.moulder.add_vertex_mode.connect(self._add_vertex_mode_callback)
|
||||||
self.new_polygon_action.triggered.connect(self.moulder.new_polygon)
|
self.new_polygon_action.triggered.connect(self.moulder.new_polygon)
|
||||||
self.add_vertex_action.triggered.connect(self.moulder.add_vertex)
|
self.add_vertex_action.triggered.connect(self.moulder.add_vertex)
|
||||||
self.delete_polygon_action.triggered.connect(
|
self.delete_polygon_action.triggered.connect(
|
||||||
@@ -69,6 +70,12 @@ class MoulderApp(QMainWindow):
|
|||||||
self.error_spinbox.valueChanged.connect(
|
self.error_spinbox.valueChanged.connect(
|
||||||
self._spin_slider_changed_callback)
|
self._spin_slider_changed_callback)
|
||||||
|
|
||||||
|
def _add_vertex_mode_callback(self, add_vertex):
|
||||||
|
if add_vertex and self.add_vertex_action.isChecked() is False:
|
||||||
|
self.add_vertex_action.setChecked(True)
|
||||||
|
elif not add_vertex and self.add_vertex_action.isChecked() is True:
|
||||||
|
self.add_vertex_action.setChecked(False)
|
||||||
|
|
||||||
def _drawing_mode_callback(self, drawing):
|
def _drawing_mode_callback(self, drawing):
|
||||||
if drawing and self.new_polygon_action.isChecked() is False:
|
if drawing and self.new_polygon_action.isChecked() is False:
|
||||||
self.new_polygon_action.setChecked(True)
|
self.new_polygon_action.setChecked(True)
|
||||||
@@ -94,10 +101,11 @@ class MoulderApp(QMainWindow):
|
|||||||
self.new_polygon_action = QAction(QIcon.fromTheme("list-add"),
|
self.new_polygon_action = QAction(QIcon.fromTheme("list-add"),
|
||||||
"&New Polygon", self)
|
"&New Polygon", self)
|
||||||
self.new_polygon_action.setCheckable(True)
|
self.new_polygon_action.setCheckable(True)
|
||||||
self.delete_polygon_action = QAction(QIcon.fromTheme("list-remove"),
|
|
||||||
"&Delete Polygon", self)
|
|
||||||
self.add_vertex_action = QAction(QIcon.fromTheme("document-new"),
|
self.add_vertex_action = QAction(QIcon.fromTheme("document-new"),
|
||||||
"&Add Vertex", self)
|
"&Add Vertex", self)
|
||||||
|
self.add_vertex_action.setCheckable(True)
|
||||||
|
self.delete_polygon_action = QAction(QIcon.fromTheme("list-remove"),
|
||||||
|
"&Delete Polygon", self)
|
||||||
|
|
||||||
def _configure_menubar(self):
|
def _configure_menubar(self):
|
||||||
self.menubar = self.menuBar()
|
self.menubar = self.menuBar()
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class Moulder(FigureCanvasQTAgg):
|
|||||||
# Signal when selected polygon changes
|
# Signal when selected polygon changes
|
||||||
polygon_selected = pyqtSignal(float)
|
polygon_selected = pyqtSignal(float)
|
||||||
drawing_mode = pyqtSignal(bool)
|
drawing_mode = pyqtSignal(bool)
|
||||||
add_vertex_signal = pyqtSignal()
|
add_vertex_mode = pyqtSignal(bool)
|
||||||
|
|
||||||
def __init__(self, parent, x, z, min_depth, max_depth,
|
def __init__(self, parent, x, z, min_depth, max_depth,
|
||||||
density_range=[-2000, 2000], width=5, height=4, dpi=100):
|
density_range=[-2000, 2000], width=5, height=4, dpi=100):
|
||||||
@@ -134,6 +134,7 @@ class Moulder(FigureCanvasQTAgg):
|
|||||||
|
|
||||||
def add_vertex(self):
|
def add_vertex(self):
|
||||||
self._add_vertex = not self._add_vertex
|
self._add_vertex = not self._add_vertex
|
||||||
|
# self.add_vertex_mode.emit(True)
|
||||||
|
|
||||||
def new_polygon(self):
|
def new_polygon(self):
|
||||||
self._ivert = None
|
self._ivert = None
|
||||||
@@ -190,10 +191,12 @@ class Moulder(FigureCanvasQTAgg):
|
|||||||
self.canvas.draw()
|
self.canvas.draw()
|
||||||
# self._update_data()
|
# self._update_data()
|
||||||
self._update_data_plot()
|
self._update_data_plot()
|
||||||
|
self.add_vertex_mode.emit(False)
|
||||||
|
|
||||||
def cancel_drawing(self):
|
def cancel_drawing(self):
|
||||||
if self._add_vertex:
|
if self._add_vertex:
|
||||||
self._add_vertex = False
|
self._add_vertex = False
|
||||||
|
self.add_vertex_mode.emit(False)
|
||||||
else:
|
else:
|
||||||
self.dataax.set_title(self.instructions)
|
self.dataax.set_title(self.instructions)
|
||||||
self._drawing = False
|
self._drawing = False
|
||||||
@@ -459,6 +462,7 @@ class Moulder(FigureCanvasQTAgg):
|
|||||||
return
|
return
|
||||||
if self._add_vertex:
|
if self._add_vertex:
|
||||||
self._add_vertex = False
|
self._add_vertex = False
|
||||||
|
self.add_vertex_mode.emit(False)
|
||||||
if self._ivert is None and self._ipoly is None:
|
if self._ivert is None and self._ipoly is None:
|
||||||
return
|
return
|
||||||
self.background = None
|
self.background = None
|
||||||
|
|||||||
Reference in New Issue
Block a user