/** * Debug.java * Copyright (C) 2010 New Zealand Digital Library, http://expeditee.org * * This program 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. * * This program 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. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ package org.expeditee.actions; import java.awt.Graphics; import java.awt.Robot; import java.util.List; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import javax.swing.JFrame; import javax.swing.JPanel; import org.expeditee.core.Colour; import org.expeditee.gio.swing.SwingGraphicsManager; import org.expeditee.gio.swing.SwingInputManager; import org.expeditee.gui.DisplayController; import org.expeditee.gui.FrameCreator; import org.expeditee.gui.FrameIO; import org.expeditee.gui.MessageBay; import org.expeditee.items.Constraint; import org.expeditee.items.Item; import com.sun.glass.events.KeyEvent; /** * This class is used for temporary debugging actions that will get removed from * the final product. * * @author jdm18 * */ public class Debug { /** * Outputs the list of constraints all Items in the current Frame have. */ public static void ShowConstraints() { List items = DisplayController.getCurrentFrame().getItems(); for (Item i : items) if (i.isLineEnd()) { System.out.println(i.getID()); for (Constraint c : i.getConstraints()) if (c.getOppositeEnd(i) != null) System.out.println("\t" + c.getOppositeEnd(i).getID()); else System.out.println("\tNULL"); System.out.println("------------"); } System.out.println("=================="); } public static void PrintLine() { System.out.println("Action"); } @SuppressWarnings("serial") public static void GraphicsTranslateTest() { final JFrame f = new JFrame(); f.setContentPane(new JPanel() { public void paintComponent(Graphics g) { final int pos = 10; final int size = 100; int translate = 10; for(int i = 0; i < 5; i++) { g.translate(translate, translate); g.drawRect(pos, pos, size, size); g.translate(-translate, -translate); } } }); f.setSize(400, 400); f.setVisible(true); } public static void RobotTest() { try { final Robot screenWin = new Robot();//SwingInputManager.getInstance()._robot; while(true) { System.err.println("Sleeping 2 secs"); TimeUnit.SECONDS.sleep(2); System.err.println("Robot move to (100,300)"); screenWin.mouseMove(100, 300); } } catch (Exception e) { e.printStackTrace(); } } public static void TestFastInput() { SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_A, 'A')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_B, 'B')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_C, 'C')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_D, 'D')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_E, 'E')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_F, 'F')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_G, 'G')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_H, 'H')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_I, 'I')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_J, 'J')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_K, 'K')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_L, 'L')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_M, 'M')); SwingInputManager.getInstance().keyTyped(new java.awt.event.KeyEvent(SwingGraphicsManager.getInstance().getJFrame(), KeyEvent.PRESS, System.currentTimeMillis(), 0, KeyEvent.VK_N, 'N')); } public static void HowManyMinWidths() { MessageBay.displayMessage(DisplayController.getCurrentFrame().getItems().stream().filter(t -> t.getMinWidth() != null).collect(Collectors.toList()).size() + ""); } public static void FrameCreatorTest() { FrameCreator creator = new FrameCreator("testFrameset", FrameIO.FRAME_PATH, "TestFrameset", FrameCreator.ExistingFramesetOptions.AppendSegregatedFrames, false, null); creator.addText("Test1", Colour.CYAN, null, null, true); creator = new FrameCreator("testFrameset", FrameIO.FRAME_PATH, "TestFrameset", FrameCreator.ExistingFramesetOptions.AppendSegregatedFrames, false, null); creator.addText("Test2", Colour.CYAN, null, null, true); creator = new FrameCreator("testFrameset", FrameIO.FRAME_PATH, "TestFrameset", FrameCreator.ExistingFramesetOptions.OverrideExistingFrames, false, null); creator.addText("Test3", Colour.CYAN, null, null, true); } }