From b85bd097783650a71ece61ddf26a62829d58b841 Mon Sep 17 00:00:00 2001 From: bancika Date: Wed, 11 Jan 2017 12:31:18 +0100 Subject: [PATCH] show/hide rulers and grid --- .../src/org/diylc/common/IPlugInPort.java | 4 +++- diylc/diylc-library/lib/diylc-core.jar | Bin 232719 -> 232763 bytes diylc/diylc-swing/lib/diylc-core.jar | Bin 232719 -> 232763 bytes diylc/diylc-swing/lib/swing-framework.jar | Bin 138717 -> 139965 bytes .../src/org/diylc/swing/ActionFactory.java | 1 - .../swing/plugins/canvas/CanvasPanel.java | 6 ++++-- .../swing/plugins/canvas/CanvasPlugin.java | 10 ++++++++++ .../swing/plugins/config/ConfigPlugin.java | 6 ++++++ diylc/diylc-swing/update.xml | 10 +++++++++- 9 files changed, 32 insertions(+), 5 deletions(-) diff --git a/diylc/diylc-core/src/org/diylc/common/IPlugInPort.java b/diylc/diylc-core/src/org/diylc/common/IPlugInPort.java index d09c9243..3e9e7594 100644 --- a/diylc/diylc-core/src/org/diylc/common/IPlugInPort.java +++ b/diylc/diylc-core/src/org/diylc/common/IPlugInPort.java @@ -44,6 +44,8 @@ public interface IPlugInPort extends ISelectionProcessor, IMouseProcessor, IKeyP public static final String OUTLINE_KEY = "outline"; public static final String THEME_KEY = "theme"; public static final String RECENT_COMPONENTS_KEY = "recentComponents"; + public static final String SHOW_RULERS_KEY = "showRulers"; + public static final String SHOW_GRID_KEY = "showGrid"; public static final int DND_TOGGLE_STICKY = 0x1; public static final int DND_TOGGLE_SNAP = 0x40000000; @@ -54,7 +56,7 @@ public interface IPlugInPort extends ISelectionProcessor, IMouseProcessor, IKeyP public static final int NOBUTTON = 0; public static final int BUTTON1 = 1; public static final int BUTTON2 = 2; - public static final int BUTTON3 = 3; + public static final int BUTTON3 = 3; /** * Returns size of the canvas that takes project dimensions into account as well as zoom level. diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index b2fec6c66bb386a11537c989697aedfad3834957..d60073aa77fb9d7a38784dd8bf3f51dcd2841d9d 100644 GIT binary patch delta 9584 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 TI}RxK7T;ZkY-B^oAtLxcYZXN;%5BkJ zH^pu5lycMfzs`AouD-Bz~=WCq(K5vee$rP8#Ncngmu>k@>e}Nz?v_#5? z%?vHE?S|h%Q%0A~3KjY=Lx`|Ln!l* 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 JU~=vW{vSD=IW+(P diff --git a/diylc/diylc-swing/lib/diylc-core.jar b/diylc/diylc-swing/lib/diylc-core.jar index b2fec6c66bb386a11537c989697aedfad3834957..d60073aa77fb9d7a38784dd8bf3f51dcd2841d9d 100644 GIT binary patch delta 9584 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 TI}RxK7T;ZkY-B^oAtLxcYZXN;%5BkJ zH^pu5lycMfzs`AouD-Bz~=WCq(K5vee$rP8#Ncngmu>k@>e}Nz?v_#5? z%?vHE?S|h%Q%0A~3KjY=Lx`|Ln!l* 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 JU~=vW{vSD=IW+(P diff --git a/diylc/diylc-swing/lib/swing-framework.jar b/diylc/diylc-swing/lib/swing-framework.jar index 51160e311a0fe60f1a75b82148d3ef7beec06403..12160eb70fec036fcd8aaca785ad85d802ff3b88 100644 GIT binary patch delta 12286 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%0A_Q980Z9Mumjoq41Prqearo!;02N5g{yV>MvO`=3 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 z
#y)1CC*f1jyx&$$aPr%?UursUkG;ZI3XQc?=C?nj>z&jX}EY!(~4}yt<`1?TE z*ZuHwlN5nMvvdgH0`X7a+FT$9K%2q^ib9K-@THhvJK^suE`K*tgF=kF2xR#NzLz6g z3eRGeYp?rk!s@{6;y(b1Pho%sH@;qe-Fbk$B5cooPyY~dtN_UWSrUI9R1?bTJ^Moz z$%9V;=D6=B9D#;^Y=u<)f%k{;e;fcN@_@{s%ga9i#;*XH-*NeU4D)w;@vr?QME8&L z`RLQB({ScW;nhg^$fwqV$sGRG?G`VHf4eB=g%jfm`SF5+Q0Xw7nW=67iCuWO3Z>_R zBR$ahOO^(*;lp>pP=BMgaM)HSybls~!2O?o;hCTsK73iTG663!uT}Q23?Uvl{0q drawOptions = - EnumSet.of(DrawOption.GRID, DrawOption.SELECTION, DrawOption.ZOOM, DrawOption.CONTROL_POINTS); + Set drawOptions = EnumSet.of(DrawOption.SELECTION, DrawOption.ZOOM, DrawOption.CONTROL_POINTS); if (ConfigurationManager.getInstance().readBoolean(IPlugInPort.ANTI_ALIASING_KEY, true)) { drawOptions.add(DrawOption.ANTIALIASING); } if (ConfigurationManager.getInstance().readBoolean(IPlugInPort.OUTLINE_KEY, false)) { drawOptions.add(DrawOption.OUTLINE_MODE); } + if (ConfigurationManager.getInstance().readBoolean(IPlugInPort.SHOW_GRID_KEY, false)) { + drawOptions.add(DrawOption.GRID); + } plugInPort.draw(g2d, drawOptions, null); if (USE_HARDWARE_ACCELLERATION) { VolatileImage volatileImage = (VolatileImage) bufferImage; diff --git a/diylc/diylc-swing/src/org/diylc/swing/plugins/canvas/CanvasPlugin.java b/diylc/diylc-swing/src/org/diylc/swing/plugins/canvas/CanvasPlugin.java index dab425d4..669d94f1 100644 --- a/diylc/diylc-swing/src/org/diylc/swing/plugins/canvas/CanvasPlugin.java +++ b/diylc/diylc-swing/src/org/diylc/swing/plugins/canvas/CanvasPlugin.java @@ -97,6 +97,16 @@ public class CanvasPlugin implements IPlugIn, ClipboardOwner { } catch (BadPositionException e) { LOG.error("Could not install canvas plugin", e); } + + getScrollPane().setRulerVisible(ConfigurationManager.getInstance().readBoolean(IPlugInPort.SHOW_RULERS_KEY, true)); + ConfigurationManager.getInstance().addConfigListener(IPlugInPort.SHOW_RULERS_KEY, new IConfigListener() { + + @Override + public void valueChanged(String key, Object value) { + if (IPlugInPort.SHOW_RULERS_KEY.equals(key)) + getScrollPane().setRulerVisible((Boolean) value); + } + }); } public CanvasPanel getCanvasPanel() { diff --git a/diylc/diylc-swing/src/org/diylc/swing/plugins/config/ConfigPlugin.java b/diylc/diylc-swing/src/org/diylc/swing/plugins/config/ConfigPlugin.java index e169d434..89ee4dda 100644 --- a/diylc/diylc-swing/src/org/diylc/swing/plugins/config/ConfigPlugin.java +++ b/diylc/diylc-swing/src/org/diylc/swing/plugins/config/ConfigPlugin.java @@ -55,6 +55,12 @@ public class ConfigPlugin implements IPlugIn { swingUI.injectMenuAction( ActionFactory.getInstance().createConfigAction(plugInPort, "Continuous Creation", IPlugInPort.CONTINUOUS_CREATION_KEY, false), CONFIG_MENU); + swingUI.injectMenuAction( + ActionFactory.getInstance().createConfigAction(plugInPort, "Show Rulers", IPlugInPort.SHOW_RULERS_KEY, true), + CONFIG_MENU); + swingUI.injectMenuAction( + ActionFactory.getInstance().createConfigAction(plugInPort, "Show Grid", IPlugInPort.SHOW_GRID_KEY, true), + CONFIG_MENU); swingUI.injectMenuAction( ActionFactory.getInstance().createConfigAction(plugInPort, "Export Grid", IPlugInPort.EXPORT_GRID_KEY, false), CONFIG_MENU); diff --git a/diylc/diylc-swing/update.xml b/diylc/diylc-swing/update.xml index 12ec0fea..78789dd4 100644 --- a/diylc/diylc-swing/update.xml +++ b/diylc/diylc-swing/update.xml @@ -1553,7 +1553,15 @@ 2017-01-05 20:00:00.000 CET - + + + NEW_FEATURE + Show/hide rulers + + + NEW_FEATURE + Show/hide the grid + IMPROVEMENT Applying a template shouldn't affect component placement