usercolours changed
authoramwaterhouse <Andrew Waterhouse>
Wed, 25 May 2005 16:40:13 +0000 (16:40 +0000)
committeramwaterhouse <Andrew Waterhouse>
Wed, 25 May 2005 16:40:13 +0000 (16:40 +0000)
src/jalview/gui/AlignFrame.java
src/jalview/gui/AlignViewport.java
src/jalview/gui/Finder.java
src/jalview/gui/UserDefinedColours.java

index de2d8ef..1f04fa3 100755 (executable)
@@ -105,9 +105,8 @@ public class AlignFrame extends GAlignFrame
 
   protected void outputText_actionPerformed(ActionEvent e)
   {
-     CutAndPasteTransfer cap = new CutAndPasteTransfer(false);
+     CutAndPasteTransfer cap = new CutAndPasteTransfer();
      JInternalFrame frame = new JInternalFrame();
-     cap.formatForOutput();
      frame.setContentPane(cap);
      Desktop.addInternalFrame(frame, "Alignment output - "+e.getActionCommand(), 600, 500);
      cap.setText( FormatAdapter.formatSequences(e.getActionCommand(), viewport.getAlignment().getSequences()));
@@ -115,8 +114,7 @@ public class AlignFrame extends GAlignFrame
 
   protected void htmlMenuItem_actionPerformed(ActionEvent e)
   {
-    HTMLOutput htmlOutput = new HTMLOutput(viewport);
-    htmlOutput = null;
+    new HTMLOutput(viewport);
   }
 
   protected void createPNG_actionPerformed(ActionEvent e)
@@ -737,7 +735,6 @@ public class AlignFrame extends GAlignFrame
 
   public void clustalColour_actionPerformed(ActionEvent e)
   {
-    abovePIDThreshold.setSelected(false);
     changeColour(new ClustalxColourScheme(viewport.alignment.getSequences(), viewport.alignment.getWidth()));
   }
 
@@ -834,7 +831,7 @@ public class AlignFrame extends GAlignFrame
       ccs.setConsensus( viewport.vconsensus );
       viewport.setGlobalColourScheme(ccs);
 
-      SliderPanel.setConservationSlider(alignPanel, ccs, "Background");
+      ccs.inc = SliderPanel.setConservationSlider(alignPanel, ccs, "Background");
 
     }
     else
@@ -853,16 +850,16 @@ public class AlignFrame extends GAlignFrame
       {
         SequenceGroup sg = (SequenceGroup)groups.elementAt(i);
 
-        if (cs instanceof ClustalxColourScheme)
-        {
+        if(cs==null)
+          sg.cs = null;
+        else if (cs instanceof ClustalxColourScheme)
           sg.cs = new ClustalxColourScheme(sg.sequences, sg.getWidth());
-        }
-        else if(cs!=null)
-        {
+        else if (cs instanceof UserColourScheme)
+          sg.cs = new UserColourScheme( ((UserColourScheme)cs).getColours());
+        else
           try{
             sg.cs = (ColourSchemeI) cs.getClass().newInstance();
-          }catch(Exception ex){ex.printStackTrace();}
-        }
+          }catch(Exception ex){}
 
         if(viewport.getAbovePIDThreshold())
         {
@@ -959,7 +956,7 @@ public class AlignFrame extends GAlignFrame
 
   public void userDefinedColour_actionPerformed(ActionEvent e)
   {
-    UserDefinedColours chooser = new UserDefinedColours( alignPanel, null);
+    new UserDefinedColours( alignPanel, null);
   }
 
   public void PIDColour_actionPerformed(ActionEvent e)
@@ -1063,7 +1060,7 @@ public class AlignFrame extends GAlignFrame
 
   protected void avTreeBlosumMenuItem_actionPerformed(ActionEvent e)
   {
-    NewTreePanel("AV", "BL", "Average distance tree using BLOSUM62PID");
+    NewTreePanel("AV", "BL", "Average distance tree using BLOSUM62");
   }
 
   void NewTreePanel(String type, String pwType, String title)
index 82d2e3e..7256bed 100755 (executable)
@@ -100,6 +100,8 @@ public class AlignViewport
     if(Preferences.defaultColour!=null)\r
     {\r
       globalColourScheme = ColourSchemeProperty.getColour(alignment, Preferences.defaultColour);\r
+      if(globalColourScheme instanceof UserColourScheme)\r
+       globalColourScheme = UserDefinedColours.loadDefaultColours();\r
       if(globalColourScheme!=null)\r
         globalColourScheme.setConsensus( vconsensus );\r
    }\r
@@ -479,14 +481,10 @@ public class AlignViewport
   }\r
 \r
   public boolean getShowAnnotation()\r
-  {\r
-    return showAnnotation;\r
-  }\r
+  {   return showAnnotation;  }\r
 \r
   public void setShowAnnotation(boolean b)\r
-  {\r
-    showAnnotation = b;\r
-  }\r
+  {    showAnnotation = b;  }\r
 \r
   public boolean getScaleAboveWrapped()\r
   { return scaleAboveWrapped;}\r
index 594baf8..ef28ebe 100755 (executable)
@@ -75,12 +75,12 @@ public class Finder extends GFinder
 \r
   public void createNewGroup_actionPerformed(ActionEvent e)\r
   {\r
-    jalview.schemes.UserColourScheme ucs = new jalview.schemes.UserColourScheme();\r
+\r
    Color [] newColors = new Color[24];\r
    for(int i=0; i<24; i++)\r
      newColors[i] = new Color(60,160,115);\r
 \r
-   ucs.setColourScheme(newColors);\r
+   jalview.schemes.UserColourScheme ucs = new jalview.schemes.UserColourScheme(newColors);\r
    String searchString = textfield.getText();\r
 \r
    searchGroup = new SuperGroup(searchString, ucs , true, true, false);\r
@@ -140,12 +140,12 @@ public class Finder extends GFinder
     ///////////////////////////////////////////////\r
 \r
 \r
-    jalview.schemes.UserColourScheme ucs = new jalview.schemes.UserColourScheme();\r
+\r
     Color [] newColors = new Color[24];\r
     for(int i=0; i<24; i++)\r
       newColors[i] = new Color(60,160,115);\r
 \r
-    ucs.setColourScheme(newColors);\r
+    jalview.schemes.UserColourScheme ucs = new jalview.schemes.UserColourScheme(newColors);\r
 \r
     searchGroup = new SuperGroup(searchString, ucs , true, true, false);\r
 \r
index 077a268..a35180b 100755 (executable)
@@ -22,6 +22,7 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
   ColourSchemeI oldColourScheme;\r
   JInternalFrame frame;\r
 \r
+\r
   public UserDefinedColours(AlignmentPanel ap, SequenceGroup sg)\r
   {\r
     super();\r
@@ -56,7 +57,7 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
 \r
       if(jalview.bin.Cache.getProperty("USER_DEFINED_COLOUR")!=null)\r
       {\r
-        loadColour(jalview.bin.Cache.getProperty("USER_DEFINED_COLOUR"));\r
+        loadColours(jalview.bin.Cache.getProperty("USER_DEFINED_COLOUR"));\r
       }\r
   }\r
 \r
@@ -109,7 +110,6 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
 \r
   protected void applyButton_actionPerformed(ActionEvent e)\r
   {\r
-\r
     Color [] newColours = new Color[24];\r
     for(int i=0; i<24; i++)\r
     {\r
@@ -117,16 +117,17 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
           newColours[i] = button.getBackground();\r
     }\r
 \r
-    UserColourScheme ucs = new UserColourScheme();\r
+    UserColourScheme ucs = new UserColourScheme(newColours);\r
     ucs.setThreshold(0);\r
-    ucs.setColourScheme( newColours );\r
 \r
     if(seqGroup!=null)\r
+    {\r
       seqGroup.cs = ucs;\r
+      ap.repaint();\r
+    }\r
     else\r
-      ap.av.setGlobalColourScheme(ucs);\r
+      ap.alignFrame.changeColour(ucs);\r
 \r
-    ap.repaint();\r
   }\r
 \r
   protected void loadbutton_actionPerformed(ActionEvent e)\r
@@ -144,51 +145,52 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
     {\r
       File choice = chooser.getSelectedFile();\r
       jalview.bin.Cache.setProperty("LAST_DIRECTORY",  choice.getParent());\r
-      loadColour(choice.getAbsolutePath());\r
+      Color[] colors = loadColours(choice.getAbsolutePath());\r
+      for (int i = 0; i < colors.length; i++)\r
+      {\r
+        JButton button = (JButton) buttonPanel.getComponent(i);\r
+        button.setBackground(colors[i]);\r
+      }\r
+\r
     }\r
+  }\r
 \r
+  public static UserColourScheme loadDefaultColours()\r
+  {\r
+    if(jalview.bin.Cache.getProperty("USER_DEFINED_COLOUR")!=null)\r
+      return loadDefaultColours(jalview.bin.Cache.getProperty("USER_DEFINED_COLOUR"));\r
+    else\r
+      return null;\r
   }\r
 \r
   public static UserColourScheme loadDefaultColours(String file)\r
   {\r
-    UserColourScheme ucs = null;\r
-    try\r
-    {\r
-      BufferedReader in = new BufferedReader(new FileReader(file));\r
-      Color [] newColours = new Color[24];\r
-      for (int i = 0; i < 24; i++)\r
-      {\r
-        newColours[i] = new Color(Integer.parseInt(in.readLine()));\r
-      }\r
-\r
-      ucs = new UserColourScheme();\r
+      UserColourScheme ucs = null;\r
+      ucs = new UserColourScheme(loadColours(file));\r
       ucs.setThreshold(0);\r
-      ucs.setColourScheme(newColours);\r
-\r
-    }\r
-    catch (Exception ex)\r
-    {}\r
-\r
-    return ucs;\r
+      return ucs;\r
   }\r
 \r
-  void loadColour(String file)\r
+  static Color [] loadColours(String file)\r
   {\r
+    Color [] newColours=null;\r
     try\r
     {\r
-      BufferedReader in = new BufferedReader(new FileReader(file));\r
+      InputStreamReader in = new InputStreamReader(\r
+          new FileInputStream(file), "UTF-8");\r
+\r
+      jalview.binding.JalviewUserColours ucs = new jalview.binding.JalviewUserColours();\r
+      ucs = (jalview.binding.JalviewUserColours)ucs.unmarshal(in);\r
+\r
+      newColours = new Color[ucs.getColourCount()];\r
       for (int i = 0; i < 24; i++)\r
-      {\r
-        JButton button = (JButton) buttonPanel.getComponent(i);\r
-        Color c = new Color(Integer.parseInt(in.readLine()));\r
-        button.setBackground(c);\r
-      }\r
+        newColours[i] = new Color(Integer.parseInt(ucs.getColour(i).getRGB(), 16));\r
 \r
-      jalview.bin.Cache.setProperty("USER_DEFINED_COLOUR", file);\r
     }\r
     catch (Exception ex)\r
-    {}\r
+    {ex.printStackTrace();}\r
 \r
+    return newColours;\r
   }\r
 \r
   protected void savebutton_actionPerformed(ActionEvent e)\r
@@ -207,15 +209,21 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
     {\r
       String choice = chooser.getSelectedFile().getPath();\r
       jalview.bin.Cache.setProperty("USER_DEFINED_COLOUR", choice);\r
+      jalview.binding.JalviewUserColours ucs = new jalview.binding.JalviewUserColours();\r
 \r
       try{\r
-        PrintWriter out = new PrintWriter(new FileWriter(choice));\r
+        PrintWriter out = new PrintWriter(new OutputStreamWriter(\r
+                                     new FileOutputStream(choice), "UTF-8"));\r
         for(int i=0; i<24; i++)\r
         {\r
-          JButton button = (JButton)buttonPanel.getComponent(i);\r
-          out.println(button.getBackground().getRGB() + "");\r
+         JButton button = (JButton)buttonPanel.getComponent(i);\r
+         jalview.binding.Colour col = new jalview.binding.Colour();\r
+         col.setName(button.getText());\r
+         col.setRGB( jalview.util.Format.getHexString( button.getBackground() ));\r
+         ucs.addColour(col);\r
         }\r
 \r
+        ucs.marshal(out);\r
         out.close();\r
       }\r
       catch(Exception ex)\r
@@ -226,7 +234,7 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
 \r
   protected void cancelButton_actionPerformed(ActionEvent e)\r
   {\r
-    UserColourScheme ucs = new UserColourScheme();\r
+\r
     Color [] newColours = new Color[24];\r
     for(int i=0; i<24; i++)\r
     {\r
@@ -234,7 +242,8 @@ public class UserDefinedColours extends GUserDefinedColours implements ChangeLis
           buttonPanel.getComponent(i).setBackground(newColours[i]);\r
     }\r
 \r
-    ucs.setColourScheme( newColours );\r
+    UserColourScheme ucs = new UserColourScheme( newColours );\r
+\r
     if (seqGroup != null)\r
       seqGroup.cs = ucs;\r
     else\r