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()));
protected void htmlMenuItem_actionPerformed(ActionEvent e)
{
- HTMLOutput htmlOutput = new HTMLOutput(viewport);
- htmlOutput = null;
+ new HTMLOutput(viewport);
}
protected void createPNG_actionPerformed(ActionEvent e)
public void clustalColour_actionPerformed(ActionEvent e)
{
- abovePIDThreshold.setSelected(false);
changeColour(new ClustalxColourScheme(viewport.alignment.getSequences(), viewport.alignment.getWidth()));
}
ccs.setConsensus( viewport.vconsensus );
viewport.setGlobalColourScheme(ccs);
- SliderPanel.setConservationSlider(alignPanel, ccs, "Background");
+ ccs.inc = SliderPanel.setConservationSlider(alignPanel, ccs, "Background");
}
else
{
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())
{
public void userDefinedColour_actionPerformed(ActionEvent e)
{
- UserDefinedColours chooser = new UserDefinedColours( alignPanel, null);
+ new UserDefinedColours( alignPanel, null);
}
public void PIDColour_actionPerformed(ActionEvent e)
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)
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
}\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
\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
///////////////////////////////////////////////\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
ColourSchemeI oldColourScheme;\r
JInternalFrame frame;\r
\r
+\r
public UserDefinedColours(AlignmentPanel ap, SequenceGroup sg)\r
{\r
super();\r
\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
\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
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
{\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
{\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
\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
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