X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FUserDefinedColours.java;h=463d8cdddc49b1e45d1d55c2c53da8e615e579d8;hb=e529f0aa0690ac7a6f58677fd043135d21e5e148;hp=7a5c1f1862d246af448c3297b5fc119af9053287;hpb=400b50efffaa43ae2c3b4d3f653bf8215c5d1edc;p=jalview.git diff --git a/src/jalview/gui/UserDefinedColours.java b/src/jalview/gui/UserDefinedColours.java index 7a5c1f1..463d8cd 100755 --- a/src/jalview/gui/UserDefinedColours.java +++ b/src/jalview/gui/UserDefinedColours.java @@ -29,6 +29,7 @@ import jalview.jbgui.GUserDefinedColours; import jalview.schemabinding.version2.Colour; import jalview.schemabinding.version2.JalviewUserColours; import jalview.schemes.ColourSchemeI; +import jalview.schemes.ColourSchemeLoader; import jalview.schemes.ColourSchemes; import jalview.schemes.ResidueProperties; import jalview.schemes.UserColourScheme; @@ -101,7 +102,7 @@ public class UserDefinedColours extends GUserDefinedColours implements */ public UserDefinedColours(AlignmentPanel ap, SequenceGroup sg) { - super(); + this(); lcaseColour.setEnabled(false); @@ -142,7 +143,7 @@ public class UserDefinedColours extends GUserDefinedColours implements public UserDefinedColours(JalviewStructureDisplayI viewer, ColourSchemeI oldcs) { - super(); + this(); this.structureViewer = viewer; colorChooser.getSelectionModel().addChangeListener(this); @@ -161,6 +162,12 @@ public class UserDefinedColours extends GUserDefinedColours implements } + public UserDefinedColours() + { + super(); + selectedButtons = new ArrayList(); + } + void showFrame() { colorChooser.getSelectionModel().addChangeListener(this); @@ -256,33 +263,33 @@ public class UserDefinedColours extends GUserDefinedColours implements } /** - * DOCUMENT ME! + * ChangeListener handler for when a colour is picked in the colour chooser. + * The action is to apply the colour to all selected buttons as their + * background colour. Foreground colour (text) is set to a lighter shade in + * order to highlight which buttons are selected. If 'Lower Case Colour' is + * active, then the colour is applied to all lower case buttons (as well as + * the Lower Case Colour button itself). * * @param evt - * DOCUMENT ME! */ @Override public void stateChanged(ChangeEvent evt) { - if (selectedButtons != null) + JButton button = null; + final Color newColour = colorChooser.getColor(); + for (int i = 0; i < selectedButtons.size(); i++) { - JButton button = null; - final Color newColour = colorChooser.getColor(); - for (int i = 0; i < selectedButtons.size(); i++) + button = selectedButtons.get(i); + button.setBackground(newColour); + button.setForeground(ColorUtils.brighterThan(newColour)); + } + if (lcaseColour.isSelected()) + { + for (int i = 0; i < lowerCaseButtons.size(); i++) { - button = selectedButtons.get(i); + button = lowerCaseButtons.get(i); button.setBackground(newColour); - button.setForeground(ColorUtils.brighterThan(newColour)); - } - if (button == lcaseColour) - { - for (int i = 0; i < lowerCaseButtons.size(); i++) - { - button = lowerCaseButtons.get(i); - button.setBackground(newColour); - button.setForeground(ColorUtils.brighterThan(button - .getBackground())); - } + button.setForeground(ColorUtils.brighterThan(button.getBackground())); } } } @@ -307,11 +314,6 @@ public class UserDefinedColours extends GUserDefinedColours implements */ public void colourButtonPressed(MouseEvent e) { - if (selectedButtons == null) - { - selectedButtons = new ArrayList(); - } - JButton pressed = (JButton) e.getSource(); if (e.isShiftDown()) @@ -624,7 +626,7 @@ public class UserDefinedColours extends GUserDefinedColours implements File choice = chooser.getSelectedFile(); Cache.setProperty(LAST_DIRECTORY, choice.getParent()); - UserColourScheme ucs = ColourSchemes.loadColourScheme(choice + UserColourScheme ucs = ColourSchemeLoader.loadColourScheme(choice .getAbsolutePath()); Color[] colors = ucs.getColours(); schemeName.setText(ucs.getSchemeName()); @@ -673,7 +675,7 @@ public class UserDefinedColours extends GUserDefinedColours implements { colours = colours.substring(0, colours.indexOf("|")); } - ret = ColourSchemes.loadColourScheme(colours); + ret = ColourSchemeLoader.loadColourScheme(colours); } if (ret == null) @@ -848,21 +850,8 @@ public class UserDefinedColours extends GUserDefinedColours implements @Override public void caseSensitive_actionPerformed(ActionEvent e) { - resetButtonPanel(caseSensitive.isSelected()); - lcaseColour.setEnabled(caseSensitive.isSelected()); - } - - @Override - public void lcaseColour_actionPerformed(ActionEvent e) - { - if (selectedButtons == null) - { - selectedButtons = new ArrayList(); - } - else - { - selectedButtons.clear(); - } - selectedButtons.add(lcaseColour); + boolean selected = caseSensitive.isSelected(); + resetButtonPanel(selected); + lcaseColour.setEnabled(selected); } }