r671 - trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/control
Author: chatellier Date: 2011-02-04 11:21:33 +0000 (Fri, 04 Feb 2011) New Revision: 671 Log: Fix potential NPE Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/control/ControlHandler.java Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/control/ControlHandler.java =================================================================== --- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/control/ControlHandler.java 2011-02-04 11:04:44 UTC (rev 670) +++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/control/ControlHandler.java 2011-02-04 11:21:33 UTC (rev 671) @@ -59,7 +59,6 @@ import javax.swing.event.TreeSelectionEvent; import javax.swing.tree.TreePath; -import jaxx.runtime.JAXXContext; import jaxx.runtime.JAXXUtil; import jaxx.runtime.SwingUtil; import jaxx.runtime.validator.swing.SwingValidator; @@ -68,6 +67,7 @@ import org.apache.commons.lang.ArrayUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.jdesktop.swingx.JXTreeTable; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.nuiton.widget.SwingSession; @@ -537,7 +537,8 @@ // clic contextuel (clic droit) if (eventButton == MouseEvent.BUTTON3) { - TreePath selectedError = controlView.getGlobalControlErrorTable().getTreeSelectionModel().getSelectionPath(); + JXTreeTable errorTable = controlView.getGlobalControlErrorTable(); + TreePath selectedError = errorTable.getTreeSelectionModel().getSelectionPath(); JPopupMenu popupMenu = new JPopupMenu(); @@ -563,16 +564,19 @@ } } } - - JMenuItem generateHtmlMenu = new JMenuItem(_("coser.ui.control.globalErrorMenuGenerateHTML")); - generateHtmlMenu.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - generateHTMLReport(controlView); - } - }); - popupMenu.add(generateHtmlMenu); + // fix potentail NPE + if (errorTable.getRowCount() > 0) { + JMenuItem generateHtmlMenu = new JMenuItem(_("coser.ui.control.globalErrorMenuGenerateHTML")); + generateHtmlMenu.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + generateHTMLReport(controlView); + } + }); + popupMenu.add(generateHtmlMenu); + } + popupMenu.show(controlView.getGlobalControlErrorTable(), event.getX(), event.getY()); }
participants (1)
-
chatellierï¼ users.labs.libre-entreprise.org