Skip to content

Commit 4996d17

Browse files
committed
Add TestBuilder Layer List Zoom buitton
1 parent c37b857 commit 4996d17

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

modules/app/src/main/java/org/locationtech/jtstest/testbuilder/LayerListPanel.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ public class LayerListPanel extends JPanel {
6464
private JButton btnDown;
6565
private JButton btnDelete;
6666
private JButton btnPaste;
67+
private JButton btnZoom;
6768

6869
private Layer focusLayer;
6970

@@ -106,6 +107,15 @@ public void actionPerformed(ActionEvent e) {
106107
});
107108
buttonPanel.add(btnCopy);
108109

110+
btnZoom = SwingUtil.createButton(AppIcons.ZOOM,
111+
"Zoom to layer",
112+
new ActionListener() {
113+
public void actionPerformed(ActionEvent e) {
114+
layerZoom();
115+
}
116+
});
117+
buttonPanel.add(btnZoom);
118+
109119
btnInspect = SwingUtil.createButton(AppIcons.GEOM_INSPECT,
110120
"Inspect layer geometry",
111121
new ActionListener() {
@@ -227,6 +237,7 @@ private void updateButtons(Layer lyr) {
227237
// every layer is copyable
228238
btnCopy.setEnabled(true);
229239
btnPaste.setEnabled(isModifiable && ! lyr.hasGeometry());
240+
btnZoom.setEnabled(lyr.hasGeometry());
230241
btnUp.setEnabled(isModifiable);
231242
btnDown.setEnabled(isModifiable);
232243
btnDelete.setEnabled(isModifiable);
@@ -243,6 +254,10 @@ private void layerInspect() {
243254
JTSTestBuilder.controller().inspectGeometry(focusLayer.getName(), focusLayer.getGeometry());
244255
}
245256

257+
private void layerZoom() {
258+
JTSTestBuilder.controller().zoomToGeometry(focusLayer.getGeometry());
259+
}
260+
246261
private void layerDelete(Layer lyr) {
247262
// don't remove if non-empty
248263
if (lyr.hasGeometry()) return;

modules/app/src/main/java/org/locationtech/jtstest/testbuilder/controller/JTSTestBuilderController.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,10 @@ public void zoomToInputB() {
352352
editPanel().zoomToGeometry(1);
353353
}
354354

355+
public void zoomToGeometry(Geometry geom) {
356+
editPanel().zoom(geom);
357+
}
358+
355359
public void caseMoveTo(int dir, boolean isZoom) {
356360
if (dir < 1) {
357361
model().cases().prevCase();

0 commit comments

Comments
 (0)