From b369447eadbada00a546399a4dae3ae735bb6c4f Mon Sep 17 00:00:00 2001 From: "Leigh B. Stoller" <stoller@flux.utah.edu> Date: Mon, 7 Mar 2005 15:43:05 +0000 Subject: [PATCH] Change to the UI. Add a right click context menu (right click over a node) brings up a context menu that allows you to 1) Cancel the current drag operation for that robot, 2) bring up the Emulab shownode page in another window, and 3) set the orientation for the robot using a popup dialog input box. This allowed me to clean up some of the table handling code, and fix a glitch whereby a value left inside a cell being edited caused the a cancel drag operation to immediately start a new one. --- robots/tracker/RoboTrack.java | 280 ++++++++++++++++++++++------------ www/robotrack/tracker.jar | Bin 19275 -> 20049 bytes 2 files changed, 183 insertions(+), 97 deletions(-) diff --git a/robots/tracker/RoboTrack.java b/robots/tracker/RoboTrack.java index 3fd283092f..6e859b7001 100644 --- a/robots/tracker/RoboTrack.java +++ b/robots/tracker/RoboTrack.java @@ -28,8 +28,9 @@ import java.text.DecimalFormat; public class RoboTrack extends JApplet { Map map; JTable maptable; - JPopupMenu MenuPopup; - JMenuItem CancelMenuItem, SubmitMenuItem; + JPopupMenu LeftMenuPopup, RightMenuPopup; + JMenuItem CancelMovesMenuItem, SubmitMenuItem; + JMenuItem CancelDragMenuItem, ShowNodeMenuItem, SetOrientationMenuItem; Image floorimage; double pixels_per_meter = 1.0; boolean frozen = false; @@ -92,13 +93,6 @@ public class RoboTrack extends JApplet { th.printStackTrace(); } - /* - * Mouse listener. See below. - */ - MyMouseAdaptor mymouser = new MyMouseAdaptor(); - addMouseListener(mymouser); - addMouseMotionListener(mymouser); - /* * Make sure the redraw stops when the window is iconified. * Hmm, not sure how to do this yet. How do I get a handle @@ -108,6 +102,9 @@ public class RoboTrack extends JApplet { public void windowDeiconified(WindowEvent e) { start(); } }); */ + + // This is used below for the listeners. + MyMouseAdaptor mymouser = new MyMouseAdaptor(); /* * Vertical placement of Components in the pane. @@ -128,20 +125,47 @@ public class RoboTrack extends JApplet { * Create the popup menu that will be used to fire off * robot moves. We use the mouseadaptor for this too. */ - MenuPopup = new JPopupMenu("Tracker"); + LeftMenuPopup = new JPopupMenu("Tracker"); JMenuItem menuitem = new JMenuItem(" Motion Menu "); - menuitem.addActionListener(mymouser); - MenuPopup.add(menuitem); + LeftMenuPopup.add(menuitem); + LeftMenuPopup.addSeparator(); SubmitMenuItem = new JMenuItem("Submit All Moves"); SubmitMenuItem.addActionListener(mymouser); - MenuPopup.add(SubmitMenuItem); - CancelMenuItem = new JMenuItem("Cancel All Moves"); - CancelMenuItem.addActionListener(mymouser); - MenuPopup.add(CancelMenuItem); + LeftMenuPopup.add(SubmitMenuItem); + CancelMovesMenuItem = new JMenuItem("Cancel All Moves"); + CancelMovesMenuItem.addActionListener(mymouser); + LeftMenuPopup.add(CancelMovesMenuItem); menuitem = new JMenuItem("Close This Menu"); menuitem.addActionListener(mymouser); - MenuPopup.add(menuitem); - MenuPopup.setBorder(BorderFactory.createLineBorder(Color.black)); + LeftMenuPopup.add(menuitem); + LeftMenuPopup.setBorder(BorderFactory.createLineBorder(Color.black)); + + /* + * And a right button popup that is active over a node. + */ + RightMenuPopup = new JPopupMenu("Tracker"); + menuitem = new JMenuItem(" Context Menu "); + RightMenuPopup.add(menuitem); + RightMenuPopup.addSeparator(); + ShowNodeMenuItem = new JMenuItem("Emulab ShowNode"); + ShowNodeMenuItem.addActionListener(mymouser); + RightMenuPopup.add(ShowNodeMenuItem); + CancelDragMenuItem = new JMenuItem("Cancel Drag"); + CancelDragMenuItem.addActionListener(mymouser); + RightMenuPopup.add(CancelDragMenuItem); + SetOrientationMenuItem = new JMenuItem("Set Orientation"); + SetOrientationMenuItem.addActionListener(mymouser); + RightMenuPopup.add(SetOrientationMenuItem); + menuitem = new JMenuItem("Close This Menu"); + menuitem.addActionListener(mymouser); + RightMenuPopup.add(menuitem); + RightMenuPopup.setBorder(BorderFactory.createLineBorder(Color.black)); + + /* + * Mouse listener. See below. + */ + addMouseListener(mymouser); + addMouseMotionListener(mymouser); } public void start() { @@ -412,9 +436,6 @@ public class RoboTrack extends JApplet { while (e.hasMoreElements()) { Robot robbie = (Robot)e.nextElement(); - if (! robbie.mobile) - continue; - if ((Math.abs(robbie.y - y) < robbie.size/2 && Math.abs(robbie.x - x) < robbie.size/2) || (robbie.dragging && @@ -447,6 +468,7 @@ public class RoboTrack extends JApplet { if (!robbie.dragging) continue; + // Bounding box. int rx1 = robbie.drag_x - (robbie.radius); int ry1 = robbie.drag_y - (robbie.radius); int rx2 = robbie.drag_x + (robbie.radius); @@ -555,6 +577,7 @@ public class RoboTrack extends JApplet { if (!robbie.dragging) continue; + // Bounding box. int rx1 = robbie.drag_x - (robbie.radius + OBSTACLE_BUFFER); int ry1 = robbie.drag_y - (robbie.radius + OBSTACLE_BUFFER); int rx2 = robbie.drag_x + (robbie.radius + OBSTACLE_BUFFER); @@ -774,7 +797,6 @@ public class RoboTrack extends JApplet { public void run() { Thread me = Thread.currentThread(); - byte buffer[] = new byte[6]; BufferedReader input = new BufferedReader(new InputStreamReader(is)); String str; @@ -845,7 +867,7 @@ public class RoboTrack extends JApplet { // System.out.println("foo"); /* * Hmm, if I return 0 (as before there are any robots) the - * table is never resized up. I ma sure there is a way to + * table is never resized up. I am sure there is a way to * deal with this ... not sure what it is yet. So hardwire * table size for now. */ @@ -906,8 +928,7 @@ public class RoboTrack extends JApplet { Robot robbie = (Robot) robotmap.elementAt(row); - if ((robbie.dragging && (col >= 6 && col <= 8)) || - (!robbie.gotdest && col == 8)) + if (robbie.dragging && (col >= 6 && col <= 8)) return true; return false; } @@ -921,8 +942,7 @@ public class RoboTrack extends JApplet { Robot robbie = (Robot) robotmap.elementAt(row); - if ((robbie.dragging && (col >= 6 && col <= 8)) || - (!robbie.gotdest && col == 8)) { + if (robbie.dragging && (col >= 6 && col <= 8)) { String stmp = value.toString().trim(); double dtmp; @@ -970,18 +990,6 @@ public class RoboTrack extends JApplet { robbie.drag_or == robbie.or) { robbie.dragging = false; } - else if (!robbie.dragging) { - /* - * User changed the orientation, but the robot was not - * currenly being dragged, so make sure things are - * initialized properly for a drag. - */ - robbie.drag_x = robbie.x; - robbie.drag_y = robbie.y; - robbie.dragx_meters = robbie.x_meters; - robbie.dragy_meters = robbie.y_meters; - robbie.dragging = true; - } fireTableCellUpdated(row, col); repaint(); return; @@ -989,15 +997,29 @@ public class RoboTrack extends JApplet { } } + /* + * Utility function. When canceling a drag operation, we need to + * clear the values in the table for that row. If we do not do this, + * the next time the user tries to drag that node, the old value in + * cell that was being edited is picked up (and I do not know how + * to turn off editing of the cell being edited). + */ + private void cancelDrag(Robot robbie) { + int row = robbie.index; + + robbie.dragging = false; + maptable.clearSelection(); + // Just force the editor out of the cell, if any. This will end up + maptable.editCellAt(100, 100); + maptable.repaint(); + } + /* * Mouse button event handler. */ public class MyMouseAdaptor implements MouseInputListener, ActionListener { String node_id = null; - int click_x = 0; - int click_y = 0; boolean dragging = false; - boolean clicked = false; public void mousePressed(MouseEvent e) { int button = e.getButton(); @@ -1006,15 +1028,32 @@ public class RoboTrack extends JApplet { /* * Left button pressed. This starts a drag operation. */ - if (!dragging && !clicked) { + if (!dragging) { node_id = map.pickRobot(e.getX(), e.getY()); if (node_id == "") { node_id = null; - MaybeShowMenu(e); + MaybeLeftShowMenu(e); return; } Robot robbie = (Robot) robots.get(node_id); + + /* + * Fixed nodes cannot be dragged. + */ + if (! robbie.mobile) { + node_id = null; + return; + } + + /* + * Do not allow robots with current destinations + * to be dragged. Not yet, maybe later. + */ + if (robbie.gotdest) { + node_id = null; + return; + } robbie.drag_x = e.getX(); robbie.drag_y = e.getY(); @@ -1042,7 +1081,6 @@ public class RoboTrack extends JApplet { maptable.setRowSelectionInterval(robbie.index, robbie.index); - maptable.editCellAt(robbie.index, 8); } } else if (button == e.BUTTON2) { @@ -1062,8 +1100,7 @@ public class RoboTrack extends JApplet { } else if (button == e.BUTTON3) { /* - * Right mouse button will bring up a showpage on release. - * Eventually this will be a context menu. + * Right mouse button will bring up a context menu. */ if (! dragging) { node_id = map.pickRobot(e.getX(), e.getY()); @@ -1072,12 +1109,25 @@ public class RoboTrack extends JApplet { node_id = null; return; } - Robot robbie = (Robot) robots.get(node_id); + + /* + * Set whether the cancel move button is enabled. + */ + if (robbie.dragging) + CancelDragMenuItem.setEnabled(true); + else + CancelDragMenuItem.setEnabled(false); + + /* + * And set whether the orientation option is enabled. + */ + if (robbie.mobile) + SetOrientationMenuItem.setEnabled(true); + else + SetOrientationMenuItem.setEnabled(false); - click_x = e.getX(); - click_y = e.getY(); - clicked = true; + RightMenuPopup.show(map, e.getX(), e.getY()); } } } @@ -1093,7 +1143,7 @@ public class RoboTrack extends JApplet { */ // Make sure we received the down event. if (node_id == null) { - clicked = false; + dragging = false; return; } System.out.println("Drag finished: " + node_id); @@ -1121,49 +1171,22 @@ public class RoboTrack extends JApplet { if (Math.abs(e.getX() - robbie.x) <= 2 && Math.abs(e.getY() - robbie.y) <= 2 && robbie.drag_or == robbie.or) { - robbie.dragging = false; + cancelDrag(robbie); } repaint(); } } else if (button == e.BUTTON3) { /* - * Right mouse button release brings up a showpage. - * Eventually this will be a context menu. + * Right mouse button brought up the context menu. + * It seems that this event will fire before the menu popup + * event fires, so nothing to do since we need to maintain + * the state (the selected node) for the popup event below. */ - if (clicked) { - // Make sure we received the down event. - if (node_id == null) { - clicked = false; - return; - } - System.out.println("Click finished: " + node_id); - - Robot robbie = (Robot) robots.get(node_id); - node_id = null; - - if (! shelled) { - // This will fail when I run it from the shell - try - { - URL url = new URL(getCodeBase(), - "/shownode.php3?node_id=" + - robbie.pname - + "&nocookieuid=" - + URLEncoder.encode(uid) - + "&nocookieauth=" - + URLEncoder.encode(auth)); - System.out.println(url.toString()); - getAppletContext().showDocument(url, "_robbie"); - } - catch(Throwable th) - { - th.printStackTrace(); - } - } + if (node_id == null) { + return; } - // Clear the click. - clicked = false; + System.out.println("Click finished: " + node_id); } } @@ -1181,10 +1204,9 @@ public class RoboTrack extends JApplet { if (dragging) { Robot robbie = (Robot) robots.get(node_id); - clicked = dragging = false; - robbie.dragging = false; + cancelDrag(robbie); + robbie.dragging = false; repaint(); - maptable.repaint(10); } } @@ -1238,7 +1260,7 @@ public class RoboTrack extends JApplet { * Decide if we want to actually show the popupmenu; only if * there are robots involved in a drag. Scan the list. */ - public void MaybeShowMenu(MouseEvent e) { + public void MaybeLeftShowMenu(MouseEvent e) { Enumeration enum = robots.elements(); while (enum.hasMoreElements()) { @@ -1251,7 +1273,7 @@ public class RoboTrack extends JApplet { * the "Java Applet Window" warning so that tells people * a window has just been popped up. */ - MenuPopup.show(map, e.getX(), e.getY()); + LeftMenuPopup.show(map, e.getX(), e.getY()); return; } } @@ -1269,18 +1291,15 @@ public class RoboTrack extends JApplet { /* * Figuring out which item was selected is silly. */ - if (source == CancelMenuItem) { + if (source == CancelMovesMenuItem) { /* * Clear all the dragging bits. */ Enumeration enum = robots.elements(); while (enum.hasMoreElements()) { - Robot robbie = (Robot)enum.nextElement(); - - robbie.dragging = false; + cancelDrag((Robot) enum.nextElement()); } - maptable.clearSelection(); } else if (source == SubmitMenuItem) { /* @@ -1291,6 +1310,73 @@ public class RoboTrack extends JApplet { ! map.CheckOutOfBounds()) SendInDestinations(); } + else if (source == ShowNodeMenuItem && node_id != null) { + if (! shelled) { + Robot robbie = (Robot) robots.get(node_id); + + // This will fail when I run it from the shell + try + { + URL url = new URL(getCodeBase(), + "/shownode.php3?node_id=" + + robbie.pname + + "&nocookieuid=" + + URLEncoder.encode(uid) + + "&nocookieauth=" + + URLEncoder.encode(auth)); + System.out.println(url.toString()); + getAppletContext().showDocument(url, "_robbie"); + } + catch(Throwable th) + { + th.printStackTrace(); + } + } + } + else if (source == CancelDragMenuItem && node_id != null) { + cancelDrag((Robot) robots.get(node_id)); + } + else if (source == SetOrientationMenuItem && node_id != null) { + String saved_node_id = node_id; + String str = (String) + JOptionPane.showInputDialog(map, + "Enter new Orientation for " + + node_id, + null, + JOptionPane.PLAIN_MESSAGE); + str = str.trim(); + System.out.println("Orientation: " + str); + + if (str.length() > 0) { + double dtmp; + + try + { + dtmp = Double.parseDouble(str); + } + catch(Throwable th) + { + // Must not be a float. + repaint(); + return; + } + Robot robbie = (Robot) robots.get(saved_node_id); + + robbie.drag_or = dtmp; + robbie.dragor_string = str; + + /* + * Set things up so that the robot is now being dragged. + */ + if (! robbie.dragging) { + robbie.drag_x = robbie.x; + robbie.drag_y = robbie.y; + robbie.dragx_meters = robbie.x_meters; + robbie.dragy_meters = robbie.y_meters; + robbie.dragging = true; + } + } + } repaint(); maptable.repaint(10); } diff --git a/www/robotrack/tracker.jar b/www/robotrack/tracker.jar index a90e6e569745a57a5ef12f157b8bc000bfde89aa..57aba24a2a2176a32a938ecc30cc5a0ccc27c5eb 100644 GIT binary patch delta 19291 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 UkTCtrS`vl^=?Iczbk4Q^17V(#h5!Hn literal 19275 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 GeEKiozf#%& -- GitLab