From 2ee81093a0c5af3acbf3cdd8b22846c96166c595 Mon Sep 17 00:00:00 2001 From: Branislav Stojkovic Date: Sat, 15 Dec 2018 18:23:56 +0100 Subject: [PATCH] shift for horizontal scroll fixed issue with size calculation when zoomed --- .../org/diylc/common/ISelectionProcessor.java | 4 +- .../src/org/diylc/presenter/Presenter.java | 6 +- diylc/diylc-library/lib/diylc-core.jar | Bin 241756 -> 241753 bytes .../components/connectivity/CutLine.java | 1 - diylc/diylc-swing/lib/diylc-core.jar | Bin 241756 -> 241753 bytes .../src/org/diylc/DIYLCStarter.java | 440 +++++++++--------- .../swing/plugins/canvas/CanvasPlugin.java | 29 +- diylc/diylc-swing/update.xml | 12 +- 8 files changed, 260 insertions(+), 232 deletions(-) diff --git a/diylc/diylc-core/src/org/diylc/common/ISelectionProcessor.java b/diylc/diylc-core/src/org/diylc/common/ISelectionProcessor.java index d6caf877..56075d10 100644 --- a/diylc/diylc-core/src/org/diylc/common/ISelectionProcessor.java +++ b/diylc/diylc-core/src/org/diylc/common/ISelectionProcessor.java @@ -99,10 +99,12 @@ public interface ISelectionProcessor { /** * Returns the minimum rectangle containing all selected components, or null if none exists. * Rectangle is scaled by the current zoom level. + * + * @param applyZoom * * @return */ - Rectangle2D getSelectionBounds(); + Rectangle2D getSelectionBounds(boolean applyZoom); /** * Moves selection for the specified offset. diff --git a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java index c5c7697d..ad3370f7 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java +++ b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java @@ -859,7 +859,7 @@ public class Presenter implements IPlugInPort { } @Override - public Rectangle2D getSelectionBounds() { + public Rectangle2D getSelectionBounds(boolean applyZoom) { if (selectedComponents == null || selectedComponents.isEmpty()) return null; @@ -871,7 +871,7 @@ public class Presenter implements IPlugInPort { else LOG.info("Area is null"); } - if (drawingManager.getZoomLevel() != 1) { + if (drawingManager.getZoomLevel() != 1 && applyZoom) { totalArea .transform(AffineTransform.getScaleInstance(drawingManager.getZoomLevel(), drawingManager.getZoomLevel())); } @@ -1881,7 +1881,7 @@ public class Presenter implements IPlugInPort { if (selectedComponents.isEmpty()) { return null; } - Rectangle2D rect = getSelectionBounds(); + Rectangle2D rect = getSelectionBounds(false); double width = rect.getWidth(); double height = rect.getHeight(); diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index cc3fc649f76834d76446e8668ed809991f13a313..efad334d42d38fe9f5203fdf95c58b427e7c8884 100644 GIT binary patch delta 27934 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 delta 27795 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 delta 27795 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 ZAwE+BdN>$#v45xGF`%K@cnW$!^FQ%. + */ +package org.diylc; - DIY Layout Creator (DIYLC). - Copyright (c) 2009-2018 held jointly by the individual authors. +import java.awt.AlphaComposite; +import java.awt.Graphics2D; +import java.awt.Point; +import java.awt.SplashScreen; +import java.io.File; +import java.io.FileInputStream; +import java.net.URL; +import java.util.Properties; - This file is part of DIYLC. +import javax.swing.ImageIcon; +import javax.swing.JOptionPane; +import javax.swing.SwingUtilities; +import javax.swing.UIManager; - DIYLC is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. +import org.apache.log4j.Logger; +import org.apache.log4j.PropertyConfigurator; +import org.diylc.appframework.miscutils.ConfigurationManager; +import org.diylc.appframework.miscutils.PropertyInjector; +import org.diylc.images.IconLoader; +import org.diylc.presenter.Presenter; +import org.diylc.swing.gui.MainFrame; +import org.diylc.swing.gui.TemplateDialog; +import org.diylc.swingframework.FontChooserComboBox; - DIYLC is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. +/** + * Main class that runs DIYLC. + * + * @author Branislav Stojkovic + * + * @see Presenter + * @see MainFrame + */ +public class DIYLCStarter { - You should have received a copy of the GNU General Public License - along with DIYLC. If not, see . + private static final Logger LOG = Logger.getLogger(DIYLCStarter.class); -*/ -package org.diylc; - -import java.awt.AlphaComposite; -import java.awt.Graphics2D; -import java.awt.Point; -import java.awt.SplashScreen; -import java.io.File; -import java.io.FileInputStream; -import java.net.URL; -import java.util.Properties; - -import javax.swing.ImageIcon; -import javax.swing.JOptionPane; -import javax.swing.SwingUtilities; -import javax.swing.UIManager; - -import org.apache.log4j.Logger; -import org.apache.log4j.PropertyConfigurator; -import org.diylc.appframework.miscutils.ConfigurationManager; -import org.diylc.appframework.miscutils.PropertyInjector; -import org.diylc.images.IconLoader; -import org.diylc.presenter.Presenter; -import org.diylc.swing.gui.MainFrame; -import org.diylc.swing.gui.TemplateDialog; - -/** - * Main class that runs DIYLC. - * - * @author Branislav Stojkovic - * - * @see Presenter - * @see MainFrame - */ -public class DIYLCStarter { - - private static final Logger LOG = Logger.getLogger(DIYLCStarter.class); - - private static final String SCRIPT_RUN = "org.diylc.scriptRun"; - - /** - * @param args - */ - public static void main(String[] args) { - // Initialize splash screen - final SplashScreen splash = SplashScreen.getSplashScreen(); - if (splash != null) { - final Graphics2D g = splash.createGraphics(); - if (g != null) { - Thread t = new Thread(new Runnable() { - - @Override - public void run() { - for (int i = 90; i >= 0; i--) { - if (!splash.isVisible()) - return; - final int frame = i; - SwingUtilities.invokeLater(new Runnable() { - - @Override - public void run() { - renderSplashFrame(splash, g, frame); - splash.update(); - } - }); - try { - Thread.sleep(10); - } catch (InterruptedException e) { - } - } - } - }); - t.start(); - } - } - - URL url = DIYLCStarter.class.getResource("log4j.properties"); - Properties properties = new Properties(); - try { - properties.load(url.openStream()); - PropertyConfigurator.configure(properties); - } catch (Exception e) { - LOG.error("Could not initialize log4j configuration", e); - } - - ConfigurationManager.initialize("diylc"); - - LOG.debug("Java version: " + System.getProperty("java.runtime.version") + " by " - + System.getProperty("java.vm.vendor")); - LOG.debug("OS: " + System.getProperty("os.name") + " " + System.getProperty("os.version")); - - LOG.info("Starting DIYLC with working directory " + System.getProperty("user.dir")); - - try { - UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); - } catch (Exception e) { - LOG.error("Could not set Look&Feel", e); - } - - String val = System.getProperty(SCRIPT_RUN); - if (!"true".equals(val)) { - int response = - JOptionPane.showConfirmDialog(null, "It is not recommended to run DIYLC by clicking on the diylc.jar file.\n" - + "Please use diylc.exe on Windows or run.sh on OSX/Linux to ensure the best\n" - + "performance and reliability. Do you want to continue?", "DIYLC", JOptionPane.YES_NO_OPTION, - JOptionPane.WARNING_MESSAGE); - if (response != JOptionPane.YES_OPTION) { - System.exit(0); - } - } - - MainFrame mainFrame = new MainFrame(); - mainFrame.setLocationRelativeTo(null); - mainFrame.setVisible(true); - if (args.length > 0) { - mainFrame.getPresenter().loadProjectFromFile(args[0]); - } else { - boolean showTemplates = ConfigurationManager.getInstance().readBoolean(TemplateDialog.SHOW_TEMPLATES_KEY, false); - if (showTemplates) { - TemplateDialog templateDialog = new TemplateDialog(mainFrame, mainFrame.getPresenter()); - if (!templateDialog.getFiles().isEmpty()) { - templateDialog.setVisible(true); - } - } - } - - properties = new Properties(); - try { - LOG.info("Injecting default properties."); - File f = new File("config.properties"); - if (f.exists()) { - properties.load(new FileInputStream(f)); - PropertyInjector.injectProperties(properties); - } - } catch (Exception e) { - LOG.error("Could not read config.properties file", e); - } - } - - // Splash screen stuff below - - private static ImageIcon resistor = null; - - public static ImageIcon getResistor() { - if (resistor == null) { - resistor = (ImageIcon)IconLoader.SplashResistor.getIcon(); - } - return resistor; - } - - private static ImageIcon film = null; - - public static ImageIcon getFilm() { - if (film == null) { - film = (ImageIcon)IconLoader.SplashFilm.getIcon(); - } - return film; - } - - private static ImageIcon ceramic = null; - - public static ImageIcon getCeramic() { - if (ceramic == null) { - ceramic = (ImageIcon)IconLoader.SplashCeramic.getIcon(); - } - return ceramic; - } - - private static ImageIcon electrolytic = null; - - public static ImageIcon getElectrolytic() { - if (electrolytic == null) { - electrolytic = (ImageIcon)IconLoader.SplashElectrolytic.getIcon(); - } - return electrolytic; - } - - private static ImageIcon splash = null; - - public static ImageIcon getSplash() { - if (splash == null) { - splash = (ImageIcon)IconLoader.Splash.getIcon(); - } - return splash; - } - - private static Point resistorTarget = new Point(112, 114); - private static Point filmTarget = new Point(233, 113); - private static Point electrolyticTarget = new Point(261, 23); - private static Point ceramicTarget = new Point(352, 22); - - private static int pxPerFrame = 3; - - static void renderSplashFrame(SplashScreen splash, Graphics2D g, int frame) { - g.setComposite(AlphaComposite.Clear); - getSplash().paintIcon(null, g, 0, 0); - g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.7f - frame * 0.007f)); - getResistor().paintIcon(null, g, resistorTarget.x - pxPerFrame * frame, resistorTarget.y); - getFilm().paintIcon(null, g, filmTarget.x, filmTarget.y + pxPerFrame * frame); - getElectrolytic().paintIcon(null, g, electrolyticTarget.x, electrolyticTarget.y - pxPerFrame * frame); - getCeramic().paintIcon(null, g, ceramicTarget.x + pxPerFrame * frame, ceramicTarget.y); - } -} + private static final String SCRIPT_RUN = "org.diylc.scriptRun"; + + /** + * @param args + */ + public static void main(String[] args) { + // Initialize splash screen + final SplashScreen splash = SplashScreen.getSplashScreen(); + if (splash != null) { + final Graphics2D g = splash.createGraphics(); + if (g != null) { + Thread t = new Thread(new Runnable() { + + @Override + public void run() { + for (int i = 90; i >= 0; i--) { + if (!splash.isVisible()) + return; + final int frame = i; + SwingUtilities.invokeLater(new Runnable() { + + @Override + public void run() { + renderSplashFrame(splash, g, frame); + splash.update(); + } + }); + try { + Thread.sleep(10); + } catch (InterruptedException e) { + } + } + } + }); + t.start(); + } + } + + URL url = DIYLCStarter.class.getResource("log4j.properties"); + Properties properties = new Properties(); + try { + properties.load(url.openStream()); + PropertyConfigurator.configure(properties); + } catch (Exception e) { + LOG.error("Could not initialize log4j configuration", e); + } + + ConfigurationManager.initialize("diylc"); + + LOG.debug("Java version: " + System.getProperty("java.runtime.version") + " by " + + System.getProperty("java.vm.vendor")); + LOG.debug("OS: " + System.getProperty("os.name") + " " + System.getProperty("os.version")); + + LOG.info("Starting DIYLC with working directory " + System.getProperty("user.dir")); + + try { + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); + } catch (Exception e) { + LOG.error("Could not set Look&Feel", e); + } + +// Thread fontThread = new Thread(new Runnable() { +// +// @Override +// public void run() { +// LOG.debug("Starting font pre-loading"); +// FontChooserComboBox box = new FontChooserComboBox(); +// LOG.debug("Finished font pre-loading"); +// } +// }); +// fontThread.start(); + + String val = System.getProperty(SCRIPT_RUN); + if (!"true".equals(val)) { + int response = + JOptionPane.showConfirmDialog(null, "It is not recommended to run DIYLC by clicking on the diylc.jar file.\n" + + "Please use diylc.exe on Windows or run.sh on OSX/Linux to ensure the best\n" + + "performance and reliability. Do you want to continue?", "DIYLC", JOptionPane.YES_NO_OPTION, + JOptionPane.WARNING_MESSAGE); + if (response != JOptionPane.YES_OPTION) { + System.exit(0); + } + } + + MainFrame mainFrame = new MainFrame(); + mainFrame.setLocationRelativeTo(null); + mainFrame.setVisible(true); + if (args.length > 0) { + mainFrame.getPresenter().loadProjectFromFile(args[0]); + } else { + boolean showTemplates = ConfigurationManager.getInstance().readBoolean(TemplateDialog.SHOW_TEMPLATES_KEY, false); + if (showTemplates) { + TemplateDialog templateDialog = new TemplateDialog(mainFrame, mainFrame.getPresenter()); + if (!templateDialog.getFiles().isEmpty()) { + templateDialog.setVisible(true); + } + } + } + + properties = new Properties(); + try { + LOG.info("Injecting default properties."); + File f = new File("config.properties"); + if (f.exists()) { + properties.load(new FileInputStream(f)); + PropertyInjector.injectProperties(properties); + } + } catch (Exception e) { + LOG.error("Could not read config.properties file", e); + } + } + + // Splash screen stuff below + + private static ImageIcon resistor = null; + + public static ImageIcon getResistor() { + if (resistor == null) { + resistor = (ImageIcon) IconLoader.SplashResistor.getIcon(); + } + return resistor; + } + + private static ImageIcon film = null; + + public static ImageIcon getFilm() { + if (film == null) { + film = (ImageIcon) IconLoader.SplashFilm.getIcon(); + } + return film; + } + + private static ImageIcon ceramic = null; + + public static ImageIcon getCeramic() { + if (ceramic == null) { + ceramic = (ImageIcon) IconLoader.SplashCeramic.getIcon(); + } + return ceramic; + } + + private static ImageIcon electrolytic = null; + + public static ImageIcon getElectrolytic() { + if (electrolytic == null) { + electrolytic = (ImageIcon) IconLoader.SplashElectrolytic.getIcon(); + } + return electrolytic; + } + + private static ImageIcon splash = null; + + public static ImageIcon getSplash() { + if (splash == null) { + splash = (ImageIcon) IconLoader.Splash.getIcon(); + } + return splash; + } + + private static Point resistorTarget = new Point(112, 114); + private static Point filmTarget = new Point(233, 113); + private static Point electrolyticTarget = new Point(261, 23); + private static Point ceramicTarget = new Point(352, 22); + + private static int pxPerFrame = 3; + + static void renderSplashFrame(SplashScreen splash, Graphics2D g, int frame) { + g.setComposite(AlphaComposite.Clear); + getSplash().paintIcon(null, g, 0, 0); + g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.7f - frame * 0.007f)); + getResistor().paintIcon(null, g, resistorTarget.x - pxPerFrame * frame, resistorTarget.y); + getFilm().paintIcon(null, g, filmTarget.x, filmTarget.y + pxPerFrame * frame); + getElectrolytic().paintIcon(null, g, electrolyticTarget.x, electrolyticTarget.y - pxPerFrame * frame); + getCeramic().paintIcon(null, g, ceramicTarget.x + pxPerFrame * frame, ceramicTarget.y); + } +} 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 6dd5f126..7f6a25b8 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 @@ -239,17 +239,21 @@ public class CanvasPlugin implements IPlugIn, ClipboardOwner { public void unitsChanged(boolean isMetric) { plugInPort.setMetric(isMetric); } - }); + }); + + // disable scrolling + scrollPane.setWheelScrollingEnabled(false); + scrollPane.addMouseWheelListener(new MouseWheelListener() { @Override - public void mouseWheelMoved(MouseWheelEvent e) { + public void mouseWheelMoved(MouseWheelEvent e) { + final JScrollBar horizontalScrollBar = scrollPane.getHorizontalScrollBar(); + final JScrollBar verticalScrollBar = scrollPane.getVerticalScrollBar(); + boolean wheelZoom = ConfigurationManager.getInstance().readBoolean(IPlugInPort.WHEEL_ZOOM_KEY, false); if (wheelZoom || (Utils.isMac() ? e.isMetaDown() : e.isControlDown())) { - // disable scrolling - scrollPane.setWheelScrollingEnabled(false); - Point mousePos = getCanvasPanel().getMousePosition(true); @@ -280,9 +284,16 @@ public class CanvasPlugin implements IPlugIn, ClipboardOwner { horizontal.setValue(horizontal.getValue() + dx); JScrollBar vertical = scrollPane.getVerticalScrollBar(); vertical.setValue(vertical.getValue() + dy); - } else { - // enable scrolling - scrollPane.setWheelScrollingEnabled(true); + } if (e.isShiftDown()) { + int iScrollAmount = e.getScrollAmount(); + int iNewValue = horizontalScrollBar.getValue() + horizontalScrollBar.getBlockIncrement() * iScrollAmount * e.getWheelRotation(); + if (iNewValue <= horizontalScrollBar.getMaximum()) + horizontalScrollBar.setValue(iNewValue); + } else { + int iScrollAmount = e.getScrollAmount(); + int iNewValue = verticalScrollBar.getValue() + verticalScrollBar.getBlockIncrement() * iScrollAmount * e.getWheelRotation(); + if (iNewValue <= verticalScrollBar.getMaximum()) + verticalScrollBar.setValue(iNewValue); } } }); @@ -602,7 +613,7 @@ public class CanvasPlugin implements IPlugIn, ClipboardOwner { @Override public void run() { if (ConfigurationManager.getInstance().readBoolean(IPlugInPort.SHOW_RULERS_KEY, true)) - scrollPane.setSelectionRectangle(plugInPort.getSelectionBounds()); + scrollPane.setSelectionRectangle(plugInPort.getSelectionBounds(true)); } }); break; diff --git a/diylc/diylc-swing/update.xml b/diylc/diylc-swing/update.xml index 898f3bbc..bc41eab9 100644 --- a/diylc/diylc-swing/update.xml +++ b/diylc/diylc-swing/update.xml @@ -1868,16 +1868,24 @@ 3 - 41 - 2 + 42 + 0 2018-12-11 00:00:00.000 CET + + NEW_FEATURE + Holding "shift" key switches mouse wheel scrolling from vertical to horizontal + BUG_FIX "Cut Line" component sometimes disappears + + BUG_FIX + Measurement tool shows incorrect readings when zoomed in or out + https://github.com/bancika/diy-layout-creator/releases