diff options
author | Jonathan Bauer | 2015-08-06 18:01:29 +0200 |
---|---|---|
committer | Jonathan Bauer | 2015-08-06 18:01:29 +0200 |
commit | bcae2f35fc198cd15d61116c79ac58df1807d084 (patch) | |
tree | b7ea9a49ec60f227c3fc2af0259f79ab4f0b04a4 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java | |
parent | [client] Some layout fixes, added versions in comboBox for lectureDetailsWindow (diff) | |
download | tutor-module-bcae2f35fc198cd15d61116c79ac58df1807d084.tar.gz tutor-module-bcae2f35fc198cd15d61116c79ac58df1807d084.tar.xz tutor-module-bcae2f35fc198cd15d61116c79ac58df1807d084.zip |
[client] little less buggy popup
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 | 34 |
1 files changed, 20 insertions, 14 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 6ba1f149..b7b9e0fd 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 @@ -59,19 +59,7 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout { } } }); - versionTableScrollPane.addMouseListener(new MouseAdapter() { - @Override - public void mouseClicked(MouseEvent e) { - int r = versionTable.rowAtPoint(e.getPoint()); - LOGGER.debug(r); - if (r >= 0 && r < versionTable.getRowCount()) { - versionTable.setRowSelectionInterval(r, r); - } else { - versionTable.clearSelection(); - } - } - }); - PopupMenu pop = new PopupMenu(new ActionListener() { + final PopupMenu pop = new PopupMenu(new ActionListener() { public void actionPerformed(ActionEvent event) { String command = event.getActionCommand(); if (command.equals("link")) { @@ -85,7 +73,25 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout { pop.addMenuItem(new JMenuItem("Neue Veranstaltung"), "link"); pop.addSeparator(); pop.addMenuItem(new JMenuItem("Löschen"), "delete"); - versionTable.setComponentPopupMenu(pop); + MouseAdapter ma = new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent e) { + LOGGER.debug(e.getSource().getClass()); + int r = versionTable.rowAtPoint(e.getPoint()); + LOGGER.debug(r); + if (r >= 0 && r < versionTable.getRowCount()) { + versionTable.setRowSelectionInterval(r, r); + // open popup + pop.show(e.getComponent(), e.getX(), e.getY()); + } else { + versionTable.clearSelection(); + pop.setVisible(false); + } + } + }; + + versionTableScrollPane.addMouseListener(ma); + versionTable.addMouseListener(ma); setFocusable(true); } |