|
@@ -19,6 +19,7 @@ import javax.swing.JLabel;
|
|
import javax.swing.JMenuItem;
|
|
import javax.swing.JMenuItem;
|
|
import javax.swing.JPanel;
|
|
import javax.swing.JPanel;
|
|
import javax.swing.JPopupMenu;
|
|
import javax.swing.JPopupMenu;
|
|
|
|
+import javax.swing.JToolTip;
|
|
|
|
|
|
import classes.CpsObject;
|
|
import classes.CpsObject;
|
|
import classes.GlobalVariables;
|
|
import classes.GlobalVariables;
|
|
@@ -42,11 +43,10 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
// PopUpMenu
|
|
// PopUpMenu
|
|
private JPopupMenu popmenu = new JPopupMenu();
|
|
private JPopupMenu popmenu = new JPopupMenu();
|
|
private JMenuItem itemDelete = new JMenuItem("Delete Object");
|
|
private JMenuItem itemDelete = new JMenuItem("Delete Object");
|
|
- private JLabel labelID = new JLabel();
|
|
|
|
-
|
|
|
|
|
|
+ private JToolTip objectTT = new JToolTip();
|
|
|
|
+
|
|
public MyCanvas(final Model model, Control control) {
|
|
public MyCanvas(final Model model, Control control) {
|
|
- this.add(labelID);
|
|
|
|
- labelID.setSize(GlobalVariables.SCALE/2, GlobalVariables.SCALE/2);
|
|
|
|
|
|
+ this.add(objectTT);
|
|
this.controller = control;
|
|
this.controller = control;
|
|
this.model = model;
|
|
this.model = model;
|
|
popmenu.add(itemDelete);
|
|
popmenu.add(itemDelete);
|
|
@@ -55,6 +55,7 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
@Override
|
|
@Override
|
|
public void actionPerformed(ActionEvent e) {
|
|
public void actionPerformed(ActionEvent e) {
|
|
model.getObjectsOnCanvas().remove(tempCps);
|
|
model.getObjectsOnCanvas().remove(tempCps);
|
|
|
|
+ tempCps = null;
|
|
selectRect.setRect(0, 0, 0, 0);
|
|
selectRect.setRect(0, 0, 0, 0);
|
|
repaint();
|
|
repaint();
|
|
}
|
|
}
|
|
@@ -115,6 +116,7 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
tempCps = cps;
|
|
tempCps = cps;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ //Object Selection
|
|
if(tempCps != null){
|
|
if(tempCps != null){
|
|
selectRect.setBounds(tempCps.getPos().x-(GlobalVariables.SCALE/20), tempCps.getPos().y-(GlobalVariables.SCALE/20), GlobalVariables.SCALE+GlobalVariables.SCALE/10, GlobalVariables.SCALE+GlobalVariables.SCALE/10);
|
|
selectRect.setBounds(tempCps.getPos().x-(GlobalVariables.SCALE/20), tempCps.getPos().y-(GlobalVariables.SCALE/20), GlobalVariables.SCALE+GlobalVariables.SCALE/10, GlobalVariables.SCALE+GlobalVariables.SCALE/10);
|
|
controller.setSelectedObjectID(tempCps.getID());
|
|
controller.setSelectedObjectID(tempCps.getID());
|
|
@@ -156,8 +158,9 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
tempCps.setPos(e.getX() - GlobalVariables.SCALE/2, e.getY() - GlobalVariables.SCALE/2);
|
|
tempCps.setPos(e.getX() - GlobalVariables.SCALE/2, e.getY() - GlobalVariables.SCALE/2);
|
|
dragging = true;
|
|
dragging = true;
|
|
selectRect.setLocation(tempCps.getPos().x-(GlobalVariables.SCALE/20), tempCps.getPos().y-(GlobalVariables.SCALE/20));
|
|
selectRect.setLocation(tempCps.getPos().x-(GlobalVariables.SCALE/20), tempCps.getPos().y-(GlobalVariables.SCALE/20));
|
|
|
|
+ objectTT.setTipText(tempCps.getName());
|
|
|
|
+ objectTT.setLocation(tempCps.getPos().x, tempCps.getPos().y);
|
|
repaint();
|
|
repaint();
|
|
- System.out.println("drag: " + e.getX() + " " + e.getY());
|
|
|
|
} catch (Exception e2) {
|
|
} catch (Exception e2) {
|
|
// TODO: handle exception
|
|
// TODO: handle exception
|
|
}
|
|
}
|
|
@@ -173,11 +176,9 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
cx = cps.getPos().x;
|
|
cx = cps.getPos().x;
|
|
cy = cps.getPos().y;
|
|
cy = cps.getPos().y;
|
|
if (x - GlobalVariables.SCALE <= cx && y - GlobalVariables.SCALE <= cy && x >= cx && y >= cy) {
|
|
if (x - GlobalVariables.SCALE <= cx && y - GlobalVariables.SCALE <= cy && x >= cx && y >= cy) {
|
|
- labelID.setText("ID: "+cps.getID());
|
|
|
|
- labelID.setLocation(cx, cy);
|
|
|
|
- System.out.println("show ID: "+cps.getID());
|
|
|
|
- } else {
|
|
|
|
- labelID.setText("");
|
|
|
|
|
|
+ objectTT.setEnabled(true);
|
|
|
|
+ objectTT.setTipText(cps.getName());
|
|
|
|
+ objectTT.setLocation(cx, cy);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|