Search in sources :

Example 1 with Controller

use of com.willwinder.ugs.nbp.designer.logic.Controller in project Universal-G-Code-Sender by winder.

the class SettingsTopComponent method componentOpened.

@Override
protected void componentOpened() {
    super.componentOpened();
    removeAll();
    Controller controller = CentralLookup.getDefault().lookup(Controller.class);
    add(new SelectionSettingsPanel(controller));
}
Also used : Controller(com.willwinder.ugs.nbp.designer.logic.Controller) SelectionSettingsPanel(com.willwinder.ugs.nbp.designer.gui.SelectionSettingsPanel)

Example 2 with Controller

use of com.willwinder.ugs.nbp.designer.logic.Controller in project Universal-G-Code-Sender by winder.

the class EntitiesTreeTopComponent method componentOpened.

@Override
protected void componentOpened() {
    super.componentOpened();
    removeAll();
    Controller controller = CentralLookup.getDefault().lookup(Controller.class);
    add(new JScrollPane(new EntitiesTree(controller)));
}
Also used : EntitiesTree(com.willwinder.ugs.nbp.designer.gui.tree.EntitiesTree) Controller(com.willwinder.ugs.nbp.designer.logic.Controller)

Example 3 with Controller

use of com.willwinder.ugs.nbp.designer.logic.Controller in project Universal-G-Code-Sender by winder.

the class UgsSaveCookie method save.

@Override
public void save() {
    Controller controller = CentralLookup.getDefault().lookup(Controller.class);
    if (controller == null) {
        throw new IllegalStateException("Couldn't find an instance of the drawing controller");
    }
    try {
        boolean valid = dataObject.getPrimaryFile().getFileSystem().isValid();
    } catch (FileStateInvalidException e) {
        e.printStackTrace();
    }
    UgsDesignWriter writer = new UgsDesignWriter();
    writer.write(new File(dataObject.getPrimaryFile().getPath()), controller);
    dataObject.setModified(false);
}
Also used : UgsDesignWriter(com.willwinder.ugs.nbp.designer.io.ugsd.UgsDesignWriter) FileStateInvalidException(org.openide.filesystems.FileStateInvalidException) Controller(com.willwinder.ugs.nbp.designer.logic.Controller) File(java.io.File)

Example 4 with Controller

use of com.willwinder.ugs.nbp.designer.logic.Controller in project Universal-G-Code-Sender by winder.

the class MoveControlTest method moveShouldMoveWhenDraggedAndReleasedTarget.

@Test
public void moveShouldMoveWhenDraggedAndReleasedTarget() {
    Rectangle rectangle = new Rectangle();
    rectangle.setWidth(10);
    rectangle.setHeight(10);
    rectangle.move(new Point2D.Double(10, 10));
    SelectionManager selectionManager = new SelectionManager();
    selectionManager.addSelection(rectangle);
    Controller controller = new Controller(selectionManager, new SimpleUndoManager());
    MoveControl target = new MoveControl(controller);
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_PRESSED, new Point2D.Double(10, 10), new Point2D.Double(10, 10)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_DRAGGED, new Point2D.Double(10, 10), new Point2D.Double(11, 11)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_DRAGGED, new Point2D.Double(10, 10), new Point2D.Double(12, 12)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_DRAGGED, new Point2D.Double(10, 10), new Point2D.Double(11, 11)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_RELEASED, new Point2D.Double(10, 10), new Point2D.Double(11, 11)));
    Assert.assertEquals(11, rectangle.getPosition().getX(), 0.1);
    Assert.assertEquals(11, rectangle.getPosition().getY(), 0.1);
}
Also used : SelectionManager(com.willwinder.ugs.nbp.designer.entities.selection.SelectionManager) MouseEntityEvent(com.willwinder.ugs.nbp.designer.gui.MouseEntityEvent) SimpleUndoManager(com.willwinder.ugs.nbp.designer.actions.SimpleUndoManager) Point2D(java.awt.geom.Point2D) Rectangle(com.willwinder.ugs.nbp.designer.entities.cuttable.Rectangle) Controller(com.willwinder.ugs.nbp.designer.logic.Controller) MoveControl(com.willwinder.ugs.nbp.designer.entities.controls.MoveControl) Test(org.junit.Test)

Example 5 with Controller

use of com.willwinder.ugs.nbp.designer.logic.Controller in project Universal-G-Code-Sender by winder.

the class MoveControlTest method moveShouldMoveEntitiesWhenParentIsScaled.

@Test
public void moveShouldMoveEntitiesWhenParentIsScaled() {
    EntityGroup entityGroup = new EntityGroup();
    entityGroup.applyTransform(AffineTransform.getScaleInstance(0.1, 0.1));
    Rectangle rectangle = new Rectangle();
    rectangle.setWidth(10);
    rectangle.setHeight(10);
    entityGroup.addChild(rectangle);
    SelectionManager selectionManager = new SelectionManager();
    selectionManager.addSelection(rectangle);
    Assert.assertEquals(0, selectionManager.getPosition().getX(), 0.1);
    Assert.assertEquals(0, selectionManager.getPosition().getY(), 0.1);
    Controller controller = new Controller(selectionManager, new SimpleUndoManager());
    MoveControl target = new MoveControl(controller);
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_PRESSED, new Point2D.Double(10, 10), new Point2D.Double(10, 10)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_DRAGGED, new Point2D.Double(10, 10), new Point2D.Double(11, 11)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_DRAGGED, new Point2D.Double(10, 10), new Point2D.Double(12, 12)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_DRAGGED, new Point2D.Double(10, 10), new Point2D.Double(20, 20)));
    target.onEvent(new MouseEntityEvent(target, EventType.MOUSE_RELEASED, new Point2D.Double(10, 10), new Point2D.Double(20, 20)));
    Assert.assertEquals(10, rectangle.getPosition().getX(), 0.1);
    Assert.assertEquals(10, rectangle.getPosition().getY(), 0.1);
}
Also used : SelectionManager(com.willwinder.ugs.nbp.designer.entities.selection.SelectionManager) MouseEntityEvent(com.willwinder.ugs.nbp.designer.gui.MouseEntityEvent) SimpleUndoManager(com.willwinder.ugs.nbp.designer.actions.SimpleUndoManager) Rectangle(com.willwinder.ugs.nbp.designer.entities.cuttable.Rectangle) Controller(com.willwinder.ugs.nbp.designer.logic.Controller) MoveControl(com.willwinder.ugs.nbp.designer.entities.controls.MoveControl) Test(org.junit.Test)

Aggregations

Controller (com.willwinder.ugs.nbp.designer.logic.Controller)14 MoveControl (com.willwinder.ugs.nbp.designer.entities.controls.MoveControl)8 SelectionManager (com.willwinder.ugs.nbp.designer.entities.selection.SelectionManager)8 Test (org.junit.Test)8 SimpleUndoManager (com.willwinder.ugs.nbp.designer.actions.SimpleUndoManager)6 Rectangle (com.willwinder.ugs.nbp.designer.entities.cuttable.Rectangle)6 MouseEntityEvent (com.willwinder.ugs.nbp.designer.gui.MouseEntityEvent)6 Point2D (java.awt.geom.Point2D)4 File (java.io.File)3 SelectionSettingsPanel (com.willwinder.ugs.nbp.designer.gui.SelectionSettingsPanel)1 EntitiesTree (com.willwinder.ugs.nbp.designer.gui.tree.EntitiesTree)1 DesignReader (com.willwinder.ugs.nbp.designer.io.DesignReader)1 DesignWriter (com.willwinder.ugs.nbp.designer.io.DesignWriter)1 C2dReader (com.willwinder.ugs.nbp.designer.io.c2d.C2dReader)1 GcodeDesignWriter (com.willwinder.ugs.nbp.designer.io.gcode.GcodeDesignWriter)1 SvgReader (com.willwinder.ugs.nbp.designer.io.svg.SvgReader)1 UgsDesignReader (com.willwinder.ugs.nbp.designer.io.ugsd.UgsDesignReader)1 UgsDesignWriter (com.willwinder.ugs.nbp.designer.io.ugsd.UgsDesignWriter)1 Design (com.willwinder.ugs.nbp.designer.model.Design)1 FileStateInvalidException (org.openide.filesystems.FileStateInvalidException)1