comma separated rgb values
[jalview.git] / src / jalview / schemes / UserColourScheme.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer\r
3  * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
4  *\r
5  * This program is free software; you can redistribute it and/or\r
6  * modify it under the terms of the GNU General Public License\r
7  * as published by the Free Software Foundation; either version 2\r
8  * of the License, or (at your option) any later version.\r
9  *\r
10  * This program is distributed in the hope that it will be useful,\r
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13  * GNU General Public License for more details.\r
14  *\r
15  * You should have received a copy of the GNU General Public License\r
16  * along with this program; if not, write to the Free Software\r
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA\r
18  */\r
19 package jalview.schemes;\r
20 \r
21 import java.awt.*;\r
22 \r
23 public class UserColourScheme\r
24     extends ResidueColourScheme\r
25 {\r
26   protected String schemeName;\r
27 \r
28   public UserColourScheme(String colour)\r
29   {\r
30     Color col = null;\r
31     try{\r
32       int value = Integer.parseInt(colour, 16);\r
33       col = new Color(value);\r
34     }\r
35     catch(NumberFormatException ex){}\r
36 \r
37     if(col==null)\r
38       col = ColourSchemeProperty.getAWTColorFromName(colour);\r
39 \r
40     if(col==null)\r
41     {try{\r
42       java.util.StringTokenizer st = new java.util.StringTokenizer(colour, ",");\r
43       int r = Integer.parseInt( st.nextToken() );\r
44       int g = Integer.parseInt( st.nextToken() );\r
45       int b = Integer.parseInt( st.nextToken() );\r
46       col = new Color(r,g,b);\r
47     }catch(Exception ex){}\r
48     }\r
49 \r
50     if(col==null)\r
51     {\r
52       System.out.println("Unknown colour!! "+colour);\r
53     }\r
54 \r
55     colors = new Color[24];\r
56     for(int i=0; i<24; i++)\r
57       colors[i] = col;\r
58   }\r
59 \r
60   public UserColourScheme(Color[] newColors)\r
61   {\r
62     colors = newColors;\r
63   }\r
64 \r
65   public Color[] getColours()\r
66   {\r
67     return colors;\r
68   }\r
69 \r
70   public void setName(String name)\r
71   {\r
72     schemeName = name;\r
73   }\r
74   public String getName()\r
75   {\r
76     return schemeName;\r
77   }\r
78 }\r