From 3a419c0959a0e247e98be59c99488c3e602b018d Mon Sep 17 00:00:00 2001 From: bancika Date: Wed, 4 Jan 2017 16:53:38 +0100 Subject: [PATCH] consolidated menus --- .../src/org/diylc/common/IKeyProcessor.java | 2 + .../diylc/presenter/ComponentProcessor.java | 1 - .../src/org/diylc/presenter/Presenter.java | 17 +++++-- diylc/diylc-library/lib/diylc-core.jar | Bin 230801 -> 230770 bytes diylc/diylc-swing/lib/diylc-core.jar | Bin 230801 -> 230770 bytes .../src/org/diylc/images/IconLoader.java | 2 +- .../src/org/diylc/images/magic_wand.png | Bin 0 -> 902 bytes .../src/org/diylc/swing/ActionFactory.java | 20 +++++---- .../swing/plugins/canvas/CanvasPlugin.java | 12 ++++- .../swing/plugins/edit/EditMenuPlugin.java | 42 +++++++++++++++--- diylc/diylc-swing/update.xml | 20 +++++++++ 11 files changed, 93 insertions(+), 23 deletions(-) create mode 100644 diylc/diylc-swing/src/org/diylc/images/magic_wand.png diff --git a/diylc/diylc-core/src/org/diylc/common/IKeyProcessor.java b/diylc/diylc-core/src/org/diylc/common/IKeyProcessor.java index 41a8686d..b9e87798 100644 --- a/diylc/diylc-core/src/org/diylc/common/IKeyProcessor.java +++ b/diylc/diylc-core/src/org/diylc/common/IKeyProcessor.java @@ -6,6 +6,8 @@ public interface IKeyProcessor { public static final int VK_UP = 0x26; public static final int VK_RIGHT = 0x27; public static final int VK_DOWN = 0x28; + public static final int VK_H = 0x48; + public static final int VK_V = 0x56; /** * Notifies the presenter that a key hes been pressed on the canvas. diff --git a/diylc/diylc-core/src/org/diylc/presenter/ComponentProcessor.java b/diylc/diylc-core/src/org/diylc/presenter/ComponentProcessor.java index 4a6671ce..3a27f16e 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/ComponentProcessor.java +++ b/diylc/diylc-core/src/org/diylc/presenter/ComponentProcessor.java @@ -9,7 +9,6 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; diff --git a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java index c52634bf..87293aa8 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java +++ b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java @@ -559,7 +559,7 @@ public class Presenter implements IPlugInPort { || !newSelection.contains(topComponent)) { newSelection.clear(); } - + newSelection.addAll(findAllGroupedComponents(topComponent)); } } @@ -575,7 +575,8 @@ public class Presenter implements IPlugInPort { @Override public boolean keyPressed(int key, boolean ctrlDown, boolean shiftDown, boolean altDown) { - if (key != VK_DOWN && key != VK_LEFT && key != VK_UP && key != VK_RIGHT) { + if (key != VK_DOWN && key != VK_LEFT && key != VK_UP && key != VK_RIGHT && key != IKeyProcessor.VK_H + && key != IKeyProcessor.VK_V) { return false; } LOG.debug(String.format("keyPressed(%s, %s, %s, %s)", key, ctrlDown, shiftDown, altDown)); @@ -609,6 +610,12 @@ public class Presenter implements IPlugInPort { } else if (key == IKeyProcessor.VK_LEFT) { oldProject = currentProject.clone(); rotateComponents(this.selectedComponents, -1, snapToGrid); + } else if (key == IKeyProcessor.VK_H) { + oldProject = currentProject.clone(); + mirrorSelection(ISelectionProcessor.HORIZONTAL); + } else if (key == IKeyProcessor.VK_V) { + oldProject = currentProject.clone(); + mirrorSelection(ISelectionProcessor.VERTICAL); } else return false; messageDispatcher.dispatchMessage(EventType.PROJECT_MODIFIED, oldProject, currentProject.clone(), @@ -1898,12 +1905,14 @@ public class Presenter implements IPlugInPort { ComponentType selectedType = null; Iterator> iterator = this.selectedComponents.iterator(); while (iterator.hasNext()) { - ComponentType type = ComponentProcessor.getInstance().extractComponentTypeFrom((Class>) iterator.next().getClass()); + ComponentType type = + ComponentProcessor.getInstance().extractComponentTypeFrom( + (Class>) iterator.next().getClass()); if (selectedType == null) selectedType = type; else if (selectedType.getInstanceClass() != type.getInstanceClass()) throw new RuntimeException("Template can be applied on multiple components of the same type only"); - } + } return getTemplatesFor(selectedType.getCategory(), selectedType.getName()); } diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index 16a668b30fd79197edb33b28b62de69c24693e17..4fb5ad31ea0096a792eb2586cc4c70782ac4f6a3 100644 GIT binary patch delta 24850 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 p!Y#PuiCf{$6cZ!ta?oQF-&|k^t`##V6PtKXy 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 literal 0 HcmV?d00001 diff --git a/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java b/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java index 29f607eb..c42f316c 100644 --- a/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java +++ b/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java @@ -144,7 +144,7 @@ public class ActionFactory { public RotateSelectionAction createRotateSelectionAction(IPlugInPort plugInPort, int direction) { return new RotateSelectionAction(plugInPort, direction); } - + public MirrorSelectionAction createMirrorSelectionAction(IPlugInPort plugInPort, int direction) { return new MirrorSelectionAction(plugInPort, direction); } @@ -771,7 +771,7 @@ public class ActionFactory { public EditProjectAction(IPlugInPort plugInPort) { super(); this.plugInPort = plugInPort; - putValue(AbstractAction.NAME, "Edit Project"); + putValue(AbstractAction.NAME, "Edit Project Settings"); putValue(AbstractAction.SMALL_ICON, IconLoader.DocumentEdit.getIcon()); } @@ -926,7 +926,7 @@ public class ActionFactory { plugInPort.rotateSelection(direction); } } - + public static class MirrorSelectionAction extends AbstractAction { private static final long serialVersionUID = 1L; @@ -940,10 +940,12 @@ public class ActionFactory { this.direction = direction; if (direction == ISelectionProcessor.HORIZONTAL) { putValue(AbstractAction.NAME, "Mirror Horizontally"); - putValue(AbstractAction.SMALL_ICON, IconLoader.FlipHorizontal.getIcon()); + putValue(AbstractAction.SMALL_ICON, IconLoader.FlipHorizontal.getIcon()); + putValue(AbstractAction.ACCELERATOR_KEY, KeyStroke.getKeyStroke(KeyEvent.VK_H, ActionEvent.ALT_MASK)); } else { putValue(AbstractAction.NAME, "Mirror Vertically"); - putValue(AbstractAction.SMALL_ICON, IconLoader.FlipVertical.getIcon()); + putValue(AbstractAction.SMALL_ICON, IconLoader.FlipVertical.getIcon()); + putValue(AbstractAction.ACCELERATOR_KEY, KeyStroke.getKeyStroke(KeyEvent.VK_V, ActionEvent.ALT_MASK)); } } @@ -1043,7 +1045,7 @@ public class ActionFactory { } } - public static class ComponentBrowserAction extends AbstractAction { + public static class ComponentBrowserAction extends AbstractAction { private static final long serialVersionUID = 1L; @@ -1055,8 +1057,10 @@ public class ActionFactory { putValue(AbstractAction.NAME, browserType); putValue(IView.RADIO_BUTTON_GROUP_KEY, "componentBrowser"); - putValue(AbstractAction.SELECTED_KEY, - browserType.equals(ConfigurationManager.getInstance().readString(ConfigPlugin.COMPONENT_BROWSER, ConfigPlugin.SEARCHABLE_TREE))); + putValue( + AbstractAction.SELECTED_KEY, + browserType.equals(ConfigurationManager.getInstance().readString(ConfigPlugin.COMPONENT_BROWSER, + ConfigPlugin.SEARCHABLE_TREE))); } @Override 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 d34741f3..9c04f87a 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 @@ -138,6 +138,10 @@ public class CanvasPlugin implements IPlugIn, ClipboardOwner { getUngroupAction().setEnabled(enabled); getSendToBackAction().setEnabled(enabled); getBringToFrontAction().setEnabled(enabled); + getRotateClockwiseAction().setEnabled(enabled); + getRotateCounterclockwiseAction().setEnabled(enabled); + getMirrorHorizontallyAction().setEnabled(enabled); + getMirrorVerticallyAction().setEnabled(enabled); getSaveAsTemplateAction().setEnabled(plugInPort.getSelectedComponents().size() == 1); @@ -280,14 +284,18 @@ public class CanvasPlugin implements IPlugIn, ClipboardOwner { public JMenu getTransformMenu() { if (transformMenu == null) { transformMenu = new JMenu("Transform Selection"); + transformMenu.setIcon(IconLoader.MagicWand.getIcon()); transformMenu.add(getRotateClockwiseAction()); transformMenu.add(getRotateCounterclockwiseAction()); + transformMenu.addSeparator(); transformMenu.add(getMirrorHorizontallyAction()); transformMenu.add(getMirrorVerticallyAction()); - transformMenu.add(getGroupAction()); - transformMenu.add(getUngroupAction()); + transformMenu.addSeparator(); transformMenu.add(getSendToBackAction()); transformMenu.add(getBringToFrontAction()); + transformMenu.addSeparator(); + transformMenu.add(getGroupAction()); + transformMenu.add(getUngroupAction()); } return transformMenu; } diff --git a/diylc/diylc-swing/src/org/diylc/swing/plugins/edit/EditMenuPlugin.java b/diylc/diylc-swing/src/org/diylc/swing/plugins/edit/EditMenuPlugin.java index 9a77d202..5a2ca4c8 100644 --- a/diylc/diylc-swing/src/org/diylc/swing/plugins/edit/EditMenuPlugin.java +++ b/diylc/diylc-swing/src/org/diylc/swing/plugins/edit/EditMenuPlugin.java @@ -13,6 +13,7 @@ import org.diylc.appframework.undo.UndoHandler; import org.diylc.common.EventType; import org.diylc.common.IPlugIn; import org.diylc.common.IPlugInPort; +import org.diylc.common.ISelectionProcessor; import org.diylc.core.ExpansionMode; import org.diylc.core.Project; import org.diylc.images.IconLoader; @@ -22,6 +23,7 @@ import org.diylc.swing.ISwingUI; public class EditMenuPlugin implements IPlugIn, ClipboardOwner { private static final String EDIT_TITLE = "Edit"; + private static final String TRANSFORM_TITLE = "Transform Selection"; private static final String RENUMBER_TITLE = "Renumber Selection"; private static final String EXPAND_TITLE = "Expand Selection"; @@ -47,6 +49,8 @@ public class EditMenuPlugin implements IPlugIn, ClipboardOwner { private ActionFactory.SaveAsTemplateAction saveAsTemplateAction; private ActionFactory.RotateSelectionAction rotateClockwiseAction; private ActionFactory.RotateSelectionAction rotateCounterClockwiseAction; + private ActionFactory.MirrorSelectionAction mirrorHorizontallyAction; + private ActionFactory.MirrorSelectionAction mirrorVerticallyAction; private UndoHandler undoHandler; @@ -197,6 +201,22 @@ public class EditMenuPlugin implements IPlugIn, ClipboardOwner { } return rotateCounterClockwiseAction; } + + public ActionFactory.MirrorSelectionAction getMirrorHorizontallyAction() { + if (mirrorHorizontallyAction == null) { + mirrorHorizontallyAction = + ActionFactory.getInstance().createMirrorSelectionAction(plugInPort, ISelectionProcessor.HORIZONTAL); + } + return mirrorHorizontallyAction; + } + + public ActionFactory.MirrorSelectionAction getMirrorVerticallyAction() { + if (mirrorVerticallyAction == null) { + mirrorVerticallyAction = + ActionFactory.getInstance().createMirrorSelectionAction(plugInPort, ISelectionProcessor.VERTICAL); + } + return mirrorVerticallyAction; + } @Override public void connect(IPlugInPort plugInPort) { @@ -214,14 +234,20 @@ public class EditMenuPlugin implements IPlugIn, ClipboardOwner { swingUI.injectMenuAction(actionFactory.createSelectAllAction(plugInPort), EDIT_TITLE); swingUI.injectMenuAction(getEditSelectionAction(), EDIT_TITLE); swingUI.injectMenuAction(getDeleteSelectionAction(), EDIT_TITLE); - swingUI.injectMenuAction(getRotateClockwiseAction(), EDIT_TITLE); - swingUI.injectMenuAction(getRotateCounterclockwiseAction(), EDIT_TITLE); - swingUI.injectMenuAction(getSendToBackAction(), EDIT_TITLE); - swingUI.injectMenuAction(getBringToFrontAction(), EDIT_TITLE); - swingUI.injectMenuAction(getGroupAction(), EDIT_TITLE); - swingUI.injectMenuAction(getUngroupAction(), EDIT_TITLE); + swingUI.injectSubmenu(TRANSFORM_TITLE, IconLoader.MagicWand.getIcon(), EDIT_TITLE); + swingUI.injectMenuAction(getRotateClockwiseAction(), TRANSFORM_TITLE); + swingUI.injectMenuAction(getRotateCounterclockwiseAction(), TRANSFORM_TITLE); + swingUI.injectMenuAction(null, TRANSFORM_TITLE); + swingUI.injectMenuAction(getMirrorHorizontallyAction(), TRANSFORM_TITLE); + swingUI.injectMenuAction(getMirrorVerticallyAction(), TRANSFORM_TITLE); + swingUI.injectMenuAction(null, TRANSFORM_TITLE); + swingUI.injectMenuAction(getSendToBackAction(), TRANSFORM_TITLE); + swingUI.injectMenuAction(getBringToFrontAction(), TRANSFORM_TITLE); + swingUI.injectMenuAction(null, TRANSFORM_TITLE); + swingUI.injectMenuAction(getGroupAction(), TRANSFORM_TITLE); + swingUI.injectMenuAction(getUngroupAction(), TRANSFORM_TITLE); swingUI.injectMenuAction(null, EDIT_TITLE); - swingUI.injectMenuAction(getSaveAsTemplateAction(), EDIT_TITLE); +// swingUI.injectMenuAction(getSaveAsTemplateAction(), EDIT_TITLE); swingUI.injectSubmenu(RENUMBER_TITLE, IconLoader.Sort.getIcon(), EDIT_TITLE); swingUI.injectMenuAction(getRenumberXAxisAction(), RENUMBER_TITLE); swingUI.injectMenuAction(getRenumberYAxisAction(), RENUMBER_TITLE); @@ -277,6 +303,8 @@ public class EditMenuPlugin implements IPlugIn, ClipboardOwner { getBringToFrontAction().setEnabled(enabled); getRotateClockwiseAction().setEnabled(enabled); getRotateCounterclockwiseAction().setEnabled(enabled); + getMirrorHorizontallyAction().setEnabled(enabled); + getMirrorVerticallyAction().setEnabled(enabled); getSaveAsTemplateAction().setEnabled(enabled); } diff --git a/diylc/diylc-swing/update.xml b/diylc/diylc-swing/update.xml index 2b8b3800..98559d67 100644 --- a/diylc/diylc-swing/update.xml +++ b/diylc/diylc-swing/update.xml @@ -1508,6 +1508,26 @@ https://github.com/bancika/diy-layout-creator/releases + + + + 3 + 35 + 0 + + 2016-12-30 20:00:00.000 CET + + + + NEW_FEATURE + Mirror selection horizontally and vertically + + + IMPROVEMENT + Consolidated context menu items + + + https://github.com/bancika/diy-layout-creator/releases \ No newline at end of file