From 89a8c8fe1aaa9c622fd94e957c14cced0d895374 Mon Sep 17 00:00:00 2001 From: tobias <tobias.ullerich@icloud.com> Date: Thu, 11 Aug 2016 21:40:12 +0200 Subject: [PATCH] Implement multiple page dragging --- .../DesktopMenuToolbarViewController.java | 1 + .../layout/desktop/PageButtonDragHandler.java | 23 +++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 PlayWall/src/de/tobias/playpad/layout/desktop/PageButtonDragHandler.java diff --git a/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java b/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java index adc1a04d..f29403b6 100644 --- a/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java +++ b/PlayWall/src/de/tobias/playpad/layout/desktop/DesktopMenuToolbarViewController.java @@ -193,6 +193,7 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro for (int i = 0; i < openProject.getSettings().getPageCount(); i++) { Button button = new Button(Localization.getString(Strings.UI_Window_Main_PageButton, (i + 1))); button.setUserData(i); + button.setOnDragOver(new PageButtonDragHandler(mainViewController, i)); button.setFocusTraversable(false); button.setOnAction(this); pageHBox.getChildren().add(button); diff --git a/PlayWall/src/de/tobias/playpad/layout/desktop/PageButtonDragHandler.java b/PlayWall/src/de/tobias/playpad/layout/desktop/PageButtonDragHandler.java new file mode 100644 index 00000000..64b67e72 --- /dev/null +++ b/PlayWall/src/de/tobias/playpad/layout/desktop/PageButtonDragHandler.java @@ -0,0 +1,23 @@ +package de.tobias.playpad.layout.desktop; + +import de.tobias.playpad.viewcontroller.main.IMainViewController; +import javafx.event.EventHandler; +import javafx.scene.input.DragEvent; + +public class PageButtonDragHandler implements EventHandler<DragEvent> { + + private IMainViewController controller; + private int page; + + public PageButtonDragHandler(IMainViewController controller, int page) { + this.controller = controller; + this.page = page; + } + + public void handle(DragEvent event) { + if (event.getEventType() == DragEvent.DRAG_OVER) { + controller.showPage(page); + } + } + +} -- GitLab