X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FFeatureTypeSettings.java;fp=src%2Fjalview%2Fgui%2FFeatureTypeSettings.java;h=c3887ff8ed3227366e77b6418f18c7fb8d615bc7;hb=a83adb45bdf9554e270921b4baad94defd314b36;hp=cbfe80ffa05b1f2c98a3f1df94df681764c6dd02;hpb=d4ec118f86b5c9dee801e743c46aaacc7bb521d1;p=jalview.git diff --git a/src/jalview/gui/FeatureTypeSettings.java b/src/jalview/gui/FeatureTypeSettings.java index cbfe80f..c3887ff 100644 --- a/src/jalview/gui/FeatureTypeSettings.java +++ b/src/jalview/gui/FeatureTypeSettings.java @@ -22,7 +22,6 @@ package jalview.gui; import jalview.api.AlignmentViewPanel; import jalview.api.FeatureColourI; -import jalview.bin.Cache; import jalview.datamodel.GraphLine; import jalview.datamodel.features.FeatureAttributes; import jalview.datamodel.features.FeatureAttributes.Datatype; @@ -40,6 +39,7 @@ import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.FlowLayout; +import java.awt.Graphics; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -64,7 +64,6 @@ import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.JSlider; import javax.swing.JTextField; -import javax.swing.border.EmptyBorder; import javax.swing.border.LineBorder; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; @@ -165,7 +164,7 @@ public class FeatureTypeSettings extends JalviewDialog JPanel maxColour = new JPanel(); - private JComboBox threshold = new JComboBox<>(); + private JComboBox threshold = new JComboBox<>(); JSlider slider = new JSlider(); @@ -182,17 +181,17 @@ public class FeatureTypeSettings extends JalviewDialog /* * choice of option for 'colour for no value' */ - private JComboBox noValueCombo; + private JComboBox noValueCombo; /* * choice of what to colour by text (Label or attribute) */ - private JComboBox colourByTextCombo; + private JComboBox colourByTextCombo; /* * choice of what to colour by range (Score or attribute) */ - private JComboBox colourByRangeCombo; + private JComboBox colourByRangeCombo; private JRadioButton andFilters; @@ -1122,7 +1121,7 @@ public class FeatureTypeSettings extends JalviewDialog * @param withRange * @param withText */ - protected JComboBox populateAttributesDropdown( + protected JComboBox populateAttributesDropdown( List attNames, boolean withRange, boolean withText) { List displayAtts = new ArrayList<>(); @@ -1161,11 +1160,9 @@ public class FeatureTypeSettings extends JalviewDialog tooltips.add(desc == null ? "" : desc); } - // now convert String List to Object List for buildComboWithTooltips - List displayAttsObjects = new ArrayList<>(displayAtts); - JComboBox attCombo = JvSwingUtils - .buildComboWithTooltips(displayAttsObjects, tooltips); - + JComboBox attCombo = JvSwingUtils + .buildComboWithTooltips(displayAtts, tooltips); + return attCombo; } @@ -1343,8 +1340,8 @@ public class FeatureTypeSettings extends JalviewDialog * drop-down choice of attribute, with description as a tooltip * if we can obtain it */ - final JComboBox attCombo = populateAttributesDropdown(attNames, - true, true); + JComboBox attCombo = populateAttributesDropdown(attNames, true, + true); String filterBy = setSelectedAttribute(attCombo, filter); JComboBox condCombo = new JComboBox<>(); @@ -1445,13 +1442,20 @@ public class FeatureTypeSettings extends JalviewDialog if (!patternField.isEnabled() || (pattern != null && pattern.trim().length() > 0)) { - JButton removeCondition = new JButton("\u2717"); // Dingbats cursive x - removeCondition.setBorder(new EmptyBorder(0, 0, 0, 0)); + JButton removeCondition = new JButton("\u2717") + { + @Override + public void paint(Graphics g) + { + g.setColor(Color.black); + g.drawString("\u2717", 2, 14); // Dingbats cursive x + } + }; removeCondition.setBackground(Color.WHITE); + removeCondition.setOpaque(true); removeCondition.setPreferredSize(new Dimension(23, 17)); - removeCondition.setToolTipText( - MessageManager.getString("label.delete_condition")); - removeCondition.setBorder(new EmptyBorder(0, 0, 0, 0)); + removeCondition + .setToolTipText(MessageManager.getString("label.delete_row")); removeCondition.addActionListener(new ActionListener() { @Override @@ -1474,7 +1478,7 @@ public class FeatureTypeSettings extends JalviewDialog * @param attCombo * @param filter */ - private String setSelectedAttribute(JComboBox attCombo, + private String setSelectedAttribute(JComboBox attCombo, FeatureMatcherI filter) { String item = null; @@ -1691,19 +1695,11 @@ public class FeatureTypeSettings extends JalviewDialog * @param valueField * @param filterIndex */ - protected boolean updateFilter(JComboBox attCombo, + protected boolean updateFilter(JComboBox attCombo, JComboBox condCombo, JTextField valueField, int filterIndex) { - String attName; - try - { - attName = (String) attCombo.getSelectedItem(); - } catch (Exception e) - { - Cache.log.error("Problem casting Combo box entry to String"); - attName = attCombo.getSelectedItem().toString(); - } + String attName = (String) attCombo.getSelectedItem(); Condition cond = (Condition) condCombo.getSelectedItem(); String pattern = valueField.getText().trim();