Search in sources :

Example 6 with Canvas

use of net.sf.latexdraw.view.jfx.Canvas in project latexdraw by arnobl.

the class TemplateManager method configureBindings.

@Override
protected void configureBindings() {
    buttonBinder(UpdateTemplates.class).on(updateTemplates).first(c -> {
        c.setTemplatesPane(templatePane);
        c.updateThumbnails(true);
    }).bind();
    nodeBinder(LoadTemplate.class, new DnD()).on(templatePane).first((c, i) -> {
        c.setDrawing(drawing);
        c.setFile(new File((String) i.getSrcObject().get().getUserData()));
        c.setOpenSaveManager(SVGDocumentGenerator.INSTANCE);
        c.setProgressBar(statusController.getProgressBar());
        c.setStatusWidget(statusController.getLabel());
        c.setUi(LaTeXDraw.getInstance());
    }).then((c, i) -> {
        final Node srcObj = i.getSrcObject().get();
        final Point3D pt3d = i.getEndObjet().get().sceneToLocal(srcObj.localToScene(i.getEndLocalPt())).subtract(Canvas.ORIGIN.getX() + srcObj.getLayoutX(), Canvas.ORIGIN.getY() + srcObj.getLayoutY(), 0d);
        c.setPosition(ShapeFactory.INST.createPoint(pt3d));
    }).feedback(() -> templatePane.setCursor(Cursor.CLOSED_HAND)).when(i -> i.getSrcObject().orElse(null) instanceof ImageView && i.getSrcObject().get().getUserData() instanceof String && i.getEndObjet().orElse(null) instanceof Canvas).bind();
}
Also used : Button(javafx.scene.control.Button) Initializable(javafx.fxml.Initializable) LoadTemplate(net.sf.latexdraw.commands.LoadTemplate) Point3D(javafx.geometry.Point3D) URL(java.net.URL) ShapeFactory(net.sf.latexdraw.models.ShapeFactory) Bindings(javafx.beans.binding.Bindings) Inject(net.sf.latexdraw.util.Inject) ResourceBundle(java.util.ResourceBundle) FontPosture(javafx.scene.text.FontPosture) IDrawing(net.sf.latexdraw.models.interfaces.shape.IDrawing) Canvas(net.sf.latexdraw.view.jfx.Canvas) DnD(org.malai.javafx.interaction.library.DnD) UpdateTemplates(net.sf.latexdraw.commands.UpdateTemplates) Label(javafx.scene.control.Label) TitledPane(javafx.scene.control.TitledPane) Node(javafx.scene.Node) Font(javafx.scene.text.Font) JfxInstrument(org.malai.javafx.instrument.JfxInstrument) File(java.io.File) LaTeXDraw(net.sf.latexdraw.LaTeXDraw) FXML(javafx.fxml.FXML) Cursor(javafx.scene.Cursor) FlowPane(javafx.scene.layout.FlowPane) ImageView(javafx.scene.image.ImageView) SVGDocumentGenerator(net.sf.latexdraw.view.svg.SVGDocumentGenerator) Point3D(javafx.geometry.Point3D) Node(javafx.scene.Node) Canvas(net.sf.latexdraw.view.jfx.Canvas) DnD(org.malai.javafx.interaction.library.DnD) ImageView(javafx.scene.image.ImageView) UpdateTemplates(net.sf.latexdraw.commands.UpdateTemplates) File(java.io.File)

Aggregations

Canvas (net.sf.latexdraw.view.jfx.Canvas)6 Cursor (javafx.scene.Cursor)2 Node (javafx.scene.Node)2 ShapeFactory (net.sf.latexdraw.models.ShapeFactory)2 Inject (net.sf.latexdraw.util.Inject)2 ViewShape (net.sf.latexdraw.view.jfx.ViewShape)2 Before (org.junit.Before)2 DnD (org.malai.javafx.interaction.library.DnD)2 File (java.io.File)1 URL (java.net.URL)1 ArrayList (java.util.ArrayList)1 Collections (java.util.Collections)1 List (java.util.List)1 Optional (java.util.Optional)1 ResourceBundle (java.util.ResourceBundle)1 Platform (javafx.application.Platform)1 Bindings (javafx.beans.binding.Bindings)1 ListChangeListener (javafx.collections.ListChangeListener)1 FXML (javafx.fxml.FXML)1 Initializable (javafx.fxml.Initializable)1