Ctrl+0 to reset to 100%

This commit is contained in:
bancika
2020-09-16 09:30:49 +02:00
parent b1b3d2ef9c
commit 57a0425723
2 changed files with 16 additions and 1 deletions
@@ -3168,7 +3168,7 @@
<changes> <changes>
<org.diylc.appframework.update.Change> <org.diylc.appframework.update.Change>
<changeType>NEW_FEATURE</changeType> <changeType>NEW_FEATURE</changeType>
<description>Added keyboard shortcuts for zoom in and out using standard Ctrl and +/- key combination</description> <description>Added keyboard shortcuts for zoom in and out using standard Ctrl and +/- key combination and Ctrl+0 to reset to 100%</description>
</org.diylc.appframework.update.Change> </org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change> <org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType> <changeType>IMPROVEMENT</changeType>
@@ -141,6 +141,10 @@ public class CanvasPanel extends JComponent implements Autoscroll {
.put(KeyStroke.getKeyStroke(KeyEvent.VK_ADD, KeyEvent.CTRL_DOWN_MASK), "zoomIn"); .put(KeyStroke.getKeyStroke(KeyEvent.VK_ADD, KeyEvent.CTRL_DOWN_MASK), "zoomIn");
getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW) getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW)
.put(KeyStroke.getKeyStroke(KeyEvent.VK_SUBTRACT, KeyEvent.CTRL_DOWN_MASK), "zoomOut"); .put(KeyStroke.getKeyStroke(KeyEvent.VK_SUBTRACT, KeyEvent.CTRL_DOWN_MASK), "zoomOut");
getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW)
.put(KeyStroke.getKeyStroke(KeyEvent.VK_0, KeyEvent.CTRL_DOWN_MASK), "resetZoom");
getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW)
.put(KeyStroke.getKeyStroke(KeyEvent.VK_NUMPAD0, KeyEvent.CTRL_DOWN_MASK), "resetZoom");
for (int i = 1; i <= 12; i++) { for (int i = 1; i <= 12; i++) {
final int x = i; final int x = i;
@@ -186,6 +190,17 @@ public class CanvasPanel extends JComponent implements Autoscroll {
CanvasPanel.this.plugInPort.setZoomLevel(availableZoomLevels[index - 1]); CanvasPanel.this.plugInPort.setZoomLevel(availableZoomLevels[index - 1]);
} }
}); });
getActionMap().put("resetZoom", new AbstractAction() {
private static final long serialVersionUID = 1L;
@Override
public void actionPerformed(ActionEvent e) {
LOG.debug("Keyboard reset zoom triggered");
CanvasPanel.this.plugInPort.setZoomLevel(1d);
}
});
getActionMap().put("clearSlot", new AbstractAction() { getActionMap().put("clearSlot", new AbstractAction() {