From 89c0ed3e4887086997cd393d030679b7eee31ead Mon Sep 17 00:00:00 2001 From: ekallin Date: Mon, 4 Dec 2023 12:34:00 +0400 Subject: [PATCH] URAAAAAAAA drag/drop for wheels works --- .../FormLocomotiveConfig.java | 32 +++++++++++++++---- 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/ProjectElectricLocomotive/FormLocomotiveConfig.java b/ProjectElectricLocomotive/FormLocomotiveConfig.java index d160f8e..4297de3 100644 --- a/ProjectElectricLocomotive/FormLocomotiveConfig.java +++ b/ProjectElectricLocomotive/FormLocomotiveConfig.java @@ -236,8 +236,8 @@ public class FormLocomotiveConfig{ labelModifiedObject.addMouseListener(new LabelMouseAdapter()); labelModifiedObject.setBorder(br); - labelWheels.setTransferHandler(new PanelTransferHandler()); - labelWheels.addMouseListener(new PanelMouseAdapter()); + labelWheels.setTransferHandler(new LabelTransferHandler()); + labelWheels.addMouseListener(new LabelMouseAdapter()); labelWheels.setBorder(br); redPanel.setTransferHandler(new PanelTransferHandler()); @@ -373,7 +373,6 @@ public class FormLocomotiveConfig{ public boolean importData(TransferHandler.TransferSupport support) { if (canImport(support)) { try { - Random rnd; String data = (String) support.getTransferable().getTransferData(DataFlavor.stringFlavor); switch (data) { case "Простой": @@ -399,8 +398,25 @@ public class FormLocomotiveConfig{ ); break; } + + String dataWheels = (String) support.getTransferable().getTransferData(DataFlavor.stringFlavor); + switch (dataWheels){ + case "Колеса добавить?...": + Random rnd; + rnd = new Random(); + IDrawingWheels iDrawingWheels; + int wheelsChoice = rnd.nextInt(0, 3); + if (wheelsChoice == 0) { + iDrawingWheels = new DrawingWheel(); + } else if (wheelsChoice == 1) { + iDrawingWheels = new DrawingEmptyWheels(); + } else { + iDrawingWheels = new DrawingWheelsBlueCrom(); + } + iDrawingWheels.SetWheelsCount(rnd.nextInt(2, 5)); + _loco._drawingWheels = iDrawingWheels; + } pictureBoxObject.repaint(); -// Draw(); return true; } catch (UnsupportedFlavorException | IOException e) { e.printStackTrace(); @@ -410,9 +426,13 @@ public class FormLocomotiveConfig{ } } ); - - } + + ComponentWheel componentWheelSimple = new ComponentWheel(new DrawingWheel()); + ComponentWheel componentWheelEmpty = new ComponentWheel(new DrawingEmptyWheels()); + ComponentWheel componentWheelBlue = new ComponentWheel(new DrawingWheelsBlueCrom()); + + // lableSimpleObject.addMouseListener(ml); // labelModifiedObject.setTransferHandler(new TransferHandler("rar"));