diff options
author | Jonathan Bauer | 2015-08-07 16:20:48 +0200 |
---|---|---|
committer | Jonathan Bauer | 2015-08-07 16:20:48 +0200 |
commit | 5211f8e4b4dbaa1086f72404c980f9c06b9c1a02 (patch) | |
tree | f2e646f1a7f102b3471895dae227478fd0cc01e6 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java | |
parent | [client] auto-udpate checkbox trigger when clicking the label (diff) | |
download | tutor-module-5211f8e4b4dbaa1086f72404c980f9c06b9c1a02.tar.gz tutor-module-5211f8e4b4dbaa1086f72404c980f9c06b9c1a02.tar.xz tutor-module-5211f8e4b4dbaa1086f72404c980f9c06b9c1a02.zip |
[client] detect which popup menu item was clicked using the source of the mouseEvent instead of those wacky action commands
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java')
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java | 40 |
1 files changed, 24 insertions, 16 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java index 8c1f54e5..15adc4f3 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java @@ -15,6 +15,8 @@ import javax.swing.JMenuItem; import org.apache.log4j.Logger; import org.openslx.bwlp.thrift.iface.ImageDetailsRead; +import org.openslx.bwlp.thrift.iface.ImagePermissions; +import org.openslx.bwlp.thrift.iface.ImageVersionDetails; import org.openslx.bwlp.thrift.iface.OperatingSystem; import org.openslx.bwlp.thrift.iface.Virtualizer; import org.openslx.dozmod.gui.Gui; @@ -39,10 +41,15 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout { private final ImageDetailsWindow me = this; private ImageDetailsRead image = null; + + private final JMenuItem[] popupMenuItems = new JMenuItem[2]; public ImageDetailsWindow(Frame modalParent) { super(modalParent); + popupMenuItems[0] = new JMenuItem("Neue Veranstaltung"); + popupMenuItems[1] = new JMenuItem("Löschen"); + // Close button closes window btnClose.addActionListener(new ActionListener() { @Override @@ -60,42 +67,43 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout { } }); final PopupMenu pop = new PopupMenu(new ActionListener() { - public void actionPerformed(ActionEvent event) { - String command = event.getActionCommand(); - if (command.equals("link")) { - // TODO new leture wizard with this image preset + public void actionPerformed(ActionEvent e) { + if (e.getSource().equals(popupMenuItems[0])) { + // TODO new lecture wizard with this image preset + LOGGER.debug("New lecture clicked"); } - if (command.equals("delete")) { - // TODO delete image + if (e.getSource().equals(popupMenuItems[1])) { + // TODO delete that image + LOGGER.debug("Delete image clicked"); } + } }); - pop.addMenuItem(new JMenuItem("Neue Veranstaltung"), "link"); + // add our menu items to the popup menu + pop.addMenuItem(popupMenuItems[0]); pop.addSeparator(); - pop.addMenuItem(new JMenuItem("Löschen"), "delete"); - MouseAdapter ma = new MouseAdapter() { + pop.addMenuItem(popupMenuItems[1]); + final MouseAdapter ma = new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { - - mouseClicked(e); + processClick(e); } @Override public void mouseReleased(MouseEvent e) { - // TODO Auto-generated method stub - mouseClicked(e); + processClick(e); } - @Override - public void mouseClicked(MouseEvent e) { + private void processClick(MouseEvent e) { int r = versionTable.rowAtPoint(e.getPoint()); LOGGER.debug(e.getSource().getClass() + " @ " + r); if (r >= 0 && r < versionTable.getRowCount()) { versionTable.setRowSelectionInterval(r, r); + ImageVersionDetails isr = versionTable.getSelectedItem(); + ImagePermissions userPermissions = image.getUserPermissions(); // open popup if (e.isPopupTrigger()) { - LOGGER.debug("showing pop"); pop.show(e.getComponent(), e.getX(), e.getY()); } } else { |