JAL-3056 open Help web page instead of internal (targeted) help link
[jalview.git] / src / jalview / gui / FeatureSettings.java
index 37a51ef..33c22f4 100644 (file)
@@ -22,7 +22,6 @@ package jalview.gui;
 
 import jalview.api.FeatureColourI;
 import jalview.api.FeatureSettingsControllerI;
-import jalview.bin.Jalview;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.SequenceI;
 import jalview.datamodel.features.FeatureMatcher;
@@ -99,6 +98,7 @@ import javax.swing.border.Border;
 import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
 import javax.swing.table.AbstractTableModel;
+import javax.swing.table.JTableHeader;
 import javax.swing.table.TableCellEditor;
 import javax.swing.table.TableCellRenderer;
 import javax.swing.table.TableColumn;
@@ -163,12 +163,6 @@ public class FeatureSettings extends JPanel
 
   int selectedRow = -1;
 
-  JButton fetchDAS = new JButton();
-
-  JButton saveDAS = new JButton();
-
-  JButton cancelDAS = new JButton();
-
   boolean resettingTable = false;
 
   /*
@@ -208,33 +202,6 @@ public class FeatureSettings extends JPanel
 
     table = new JTable()
     {
-       
-//     @Override
-//     public void repaint() {
-//       System.out.println("FS repaint");
-//       super.repaint();
-//       
-//     }
-//     
-//     @Override
-//        public void repaint(long tm, int x, int y, int width, int height) {
-//       System.out.println("FS repaint " + x  + " " + y + " " + width + " " + height);
-//       super.repaint(tm, x, y, width, height);
-//       
-//     }
-//     @Override
-//     public void invalidate() {
-//             if (isValid())
-//               System.out.println("FS invalidating ");
-//            super.invalidate();
-//     }
-//     
-//     @Override
-//     public void validate() {
-//            System.out.println("FS validating "  + isValid());
-//            super.validate();
-//     }
-
       @Override
       public String getToolTipText(MouseEvent e)
       {
@@ -257,7 +224,8 @@ public class FeatureSettings extends JPanel
           FeatureMatcherSet o = (FeatureMatcherSet) table.getValueAt(row,
                   column);
           tip = o.isEmpty()
-                  ? MessageManager.getString("label.filters_tooltip")
+                  ? MessageManager
+                          .getString("label.configure_feature_tooltip")
                   : o.toString();
           break;
         default:
@@ -283,15 +251,10 @@ public class FeatureSettings extends JPanel
         return loc;
       }
     };
-    
-    // next line is needed to avoid (quiet) exceptions thrown
-    // when column ordering changes so that the above constants
-    // no longer apply.
-    table.getTableHeader().setReorderingAllowed(false); // BH 2018
-    
-    table.getTableHeader().setFont(new Font("Verdana", Font.PLAIN, 12));
-    ToolTipManager.sharedInstance().registerComponent(table);
-
+    JTableHeader tableHeader = table.getTableHeader();
+    tableHeader.setFont(new Font("Verdana", Font.PLAIN, 12));
+    tableHeader.setReorderingAllowed(false);
+    table.setFont(new Font("Verdana", Font.PLAIN, 12));
     table.setDefaultEditor(FeatureColour.class, new ColorEditor());
     table.setDefaultRenderer(FeatureColour.class, new ColorRenderer());
 
@@ -402,18 +365,9 @@ public class FeatureSettings extends JPanel
 
     frame = new JInternalFrame();
     frame.setContentPane(this);
-    if (Platform.isAMac())
-    {
-      Desktop.addInternalFrame(frame,
-              MessageManager.getString("label.sequence_feature_settings"),
-              600, 480);
-    }
-    else
-    {
-      Desktop.addInternalFrame(frame,
-              MessageManager.getString("label.sequence_feature_settings"),
-              600, 450);
-    }
+    Desktop.addInternalFrame(frame,
+            MessageManager.getString("label.sequence_feature_settings"),
+            600, Platform.isAMacAndNotJS() ? 480 : 450);
     frame.setMinimumSize(new Dimension(MIN_WIDTH, MIN_HEIGHT));
 
     frame.addInternalFrameListener(
@@ -442,41 +396,13 @@ public class FeatureSettings extends JPanel
   protected void showPopupMenu(final int rowSelected, final String type,
           final Object typeCol, final Point pt)
   {
-    final FeatureColourI featureColour = (FeatureColourI) typeCol;
-
     JPopupMenu men = new JPopupMenu(MessageManager
             .formatMessage("label.settings_for_param", new String[]
             { type }));
-    JMenuItem scr = new JMenuItem(
-            MessageManager.getString("label.sort_by_score"));
-    men.add(scr);
-    scr.addActionListener(new ActionListener()
-    {
-
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        af.avc.sortAlignmentByFeatureScore(Arrays.asList(new String[]
-                { type }));
-      }
-    });
-    JMenuItem dens = new JMenuItem(
-            MessageManager.getString("label.sort_by_density"));
-    dens.addActionListener(new ActionListener()
-    {
-
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        af.avc.sortAlignmentByFeatureDensity(Arrays.asList(new String[]
-                { type }));
-      }
-    });
-    men.add(dens);
+    final FeatureColourI featureColour = (FeatureColourI) typeCol;
 
     /*
-     * variable colour options include colour by label, by score,
-     * by selected attribute text, or attribute value
+     * menu option to select (or deselect) variable colour
      */
     final JCheckBoxMenuItem variableColourCB = new JCheckBoxMenuItem(
             MessageManager.getString("label.variable_colour"));
@@ -538,12 +464,41 @@ public class FeatureSettings extends JPanel
             FeatureColourI fci = fr.getFeatureColours().get(type);
             table.setValueAt(fci, rowSelected, COLOUR_COLUMN);
             // BH 2018 setting a table value does not invalidate it.
-//            System.out.println("FeatureSettings is valied" + table.isValid());
-//            table.validate();
+//                 System.out.println("FeatureSettings is valied" + table.isValid());
+//                 table.validate();
           }
         }
       }
     });
+    
+    men.addSeparator();
+
+    JMenuItem scr = new JMenuItem(
+            MessageManager.getString("label.sort_by_score"));
+    men.add(scr);
+    scr.addActionListener(new ActionListener()
+    {
+
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        af.avc.sortAlignmentByFeatureScore(Arrays.asList(new String[]
+                { type }));
+      }
+    });
+    JMenuItem dens = new JMenuItem(
+            MessageManager.getString("label.sort_by_density"));
+    dens.addActionListener(new ActionListener()
+    {
+
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        af.avc.sortAlignmentByFeatureDensity(Arrays.asList(new String[]
+                { type }));
+      }
+    });
+    men.add(dens);
 
     JMenuItem selCols = new JMenuItem(
             MessageManager.getString("label.select_columns_containing"));
@@ -1305,22 +1260,6 @@ public class FeatureSettings extends JPanel
         }
       }
     });
-    help.setFont(JvSwingUtils.getLabelFont());
-    help.setText(MessageManager.getString("action.help"));
-    help.addActionListener(new ActionListener()
-    {
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        try
-        {
-          Help.showHelpWindow(HelpId.SequenceFeatureSettings);
-        } catch (HelpSetException e1)
-        {
-          e1.printStackTrace();
-        }
-      }
-    });
 
     JButton cancel = new JButton(MessageManager.getString("action.cancel"));
     cancel.setFont(JvSwingUtils.getLabelFont());
@@ -1506,7 +1445,7 @@ public class FeatureSettings extends JPanel
     private String[] columnNames = {
         MessageManager.getString("label.feature_type"),
         MessageManager.getString("action.colour"),
-        MessageManager.getString("label.filter"),
+        MessageManager.getString("label.configuration"),
         MessageManager.getString("label.show") };
 
     private Object[][] data;
@@ -1772,7 +1711,7 @@ class ColorEditor extends AbstractCellEditor
            * variable colour and filters dialog
            */
           chooser = new FeatureTypeSettings(fr, type);
-          if (!Jalview.isJS())
+          if (!Platform.isJS())
           {
             chooser.setRequestFocusEnabled(true);
             chooser.requestFocus();