import jalview.schemes.*;\r
\r
public class UserDefinedColours\r
- extends Panel\r
+ extends Panel implements ActionListener, AdjustmentListener\r
{\r
\r
AlignmentPanel ap;\r
Vector oldColours = new Vector();\r
ColourSchemeI oldColourScheme;\r
Frame frame;\r
+ MCview.AppletPDBCanvas pdbcanvas;\r
\r
int R = 0, G = 0, B = 0;\r
\r
\r
public UserDefinedColours(AlignmentPanel ap, SequenceGroup sg)\r
{\r
- try {\r
- jbInit();\r
- } catch (Exception e) {\r
- e.printStackTrace();\r
- }\r
- frame = new Frame();\r
- frame.add(this);\r
- jalview.bin.JalviewLite.addFrame(frame, "User defined colours", 420, 345);\r
-\r
- if (sg != null)\r
- {\r
- frame.setTitle(frame.getTitle() + " (" + sg.getName() + ")");\r
- }\r
-\r
this.ap = ap;\r
seqGroup = sg;\r
\r
oldColourScheme = ap.av.getGlobalColourScheme();\r
}\r
\r
+ init();\r
+ }\r
+\r
+ public UserDefinedColours(MCview.AppletPDBCanvas pdb)\r
+ {\r
+ this.pdbcanvas = pdb;\r
+ init();\r
+ }\r
+\r
+ public void actionPerformed(ActionEvent evt)\r
+ {\r
+ if(evt.getSource()==okButton)\r
+ okButton_actionPerformed();\r
+ else if(evt.getSource()==applyButton)\r
+ applyButton_actionPerformed();\r
+ else if(evt.getSource()==cancelButton)\r
+ cancelButton_actionPerformed();\r
+ else if(evt.getSource()==rText)\r
+ rText_actionPerformed();\r
+ else if (evt.getSource() == gText)\r
+ gText_actionPerformed();\r
+ else if (evt.getSource() == bText)\r
+ bText_actionPerformed();\r
+}\r
+\r
+ public void adjustmentValueChanged(AdjustmentEvent evt)\r
+ {\r
+ if(evt.getSource()==rScroller)\r
+ rScroller_adjustmentValueChanged();\r
+ else if(evt.getSource()==gScroller)\r
+ gScroller_adjustmentValueChanged();\r
+ else if(evt.getSource()==bScroller)\r
+ bScroller_adjustmentValueChanged();\r
+}\r
+\r
+ void init()\r
+ {\r
+ try\r
+ {\r
+ jbInit();\r
+ }\r
+ catch (Exception e)\r
+ {\r
+ e.printStackTrace();\r
+ }\r
+ frame = new Frame();\r
+ frame.add(this);\r
+ jalview.bin.JalviewLite.addFrame(frame, "User defined colours", 420, 345);\r
+\r
+ if (seqGroup != null)\r
+ {\r
+ frame.setTitle(frame.getTitle() + " (" + seqGroup.getName() + ")");\r
+ }\r
+\r
for (int i = 0; i < 20; i++)\r
{\r
makeButton(ResidueProperties.aa2Triplet.get(ResidueProperties.aa[i]) +\r
makeButton("Gap", "'.','-',' '");\r
\r
validate();\r
-\r
}\r
-\r
- protected void rText_actionPerformed(ActionEvent e)\r
+ protected void rText_actionPerformed()\r
{\r
try\r
{\r
int i = Integer.parseInt(rText.getText());\r
rScroller.setValue(i);\r
- rScroller_adjustmentValueChanged(null);\r
+ rScroller_adjustmentValueChanged();\r
}\r
catch (NumberFormatException ex)\r
{}\r
}\r
\r
- protected void gText_actionPerformed(ActionEvent e)\r
+ protected void gText_actionPerformed()\r
{\r
try\r
{\r
int i = Integer.parseInt(gText.getText());\r
gScroller.setValue(i);\r
- gScroller_adjustmentValueChanged(null);\r
+ gScroller_adjustmentValueChanged();\r
}\r
catch (NumberFormatException ex)\r
{}\r
\r
}\r
\r
- protected void bText_actionPerformed(ActionEvent e)\r
+ protected void bText_actionPerformed()\r
{\r
try\r
{\r
int i = Integer.parseInt(bText.getText());\r
bScroller.setValue(i);\r
- bScroller_adjustmentValueChanged(null);\r
+ bScroller_adjustmentValueChanged();\r
}\r
catch (NumberFormatException ex)\r
{}\r
\r
}\r
\r
- protected void rScroller_adjustmentValueChanged(AdjustmentEvent e)\r
+ protected void rScroller_adjustmentValueChanged()\r
{\r
R = rScroller.getValue();\r
rText.setText(R + "");\r
colourChanged();\r
}\r
\r
- protected void gScroller_adjustmentValueChanged(AdjustmentEvent e)\r
+ protected void gScroller_adjustmentValueChanged()\r
{\r
G = gScroller.getValue();\r
gText.setText(G + "");\r
colourChanged();\r
}\r
\r
- protected void bScroller_adjustmentValueChanged(AdjustmentEvent e)\r
+ protected void bScroller_adjustmentValueChanged()\r
{\r
B = bScroller.getValue();\r
bText.setText(B + "");\r
buttonPanel.add(button, null);\r
}\r
\r
- protected void okButton_actionPerformed(ActionEvent e)\r
+ protected void okButton_actionPerformed()\r
{\r
- applyButton_actionPerformed(null);\r
+ applyButton_actionPerformed();\r
frame.setVisible(false);\r
}\r
\r
- protected void applyButton_actionPerformed(ActionEvent e)\r
+ protected void applyButton_actionPerformed()\r
{\r
-\r
Color[] newColours = new Color[24];\r
for (int i = 0; i < 24; i++)\r
{\r
}\r
\r
UserColourScheme ucs = new UserColourScheme(newColours);\r
- ucs.setThreshold(0, ap.av.getIgnoreGapsConsensus());\r
+ if(ap!=null)\r
+ ucs.setThreshold(0, ap.av.getIgnoreGapsConsensus());\r
\r
- if (seqGroup != null)\r
+ if(ap!=null)\r
{\r
- seqGroup.cs = ucs;\r
+ if (seqGroup != null)\r
+ {\r
+ seqGroup.cs = ucs;\r
+ }\r
+ else\r
+ {\r
+ ap.av.setGlobalColourScheme(ucs);\r
+ }\r
+ ap.seqPanel.seqCanvas.img = null;\r
+ ap.repaint();\r
}\r
- else\r
+ else if(pdbcanvas!=null)\r
{\r
- ap.av.setGlobalColourScheme(ucs);\r
+ pdbcanvas.pdb.setColours(ucs);\r
+ pdbcanvas.updateSeqColours();\r
}\r
-\r
- ap.seqPanel.seqCanvas.img = null;\r
- ap.repaint();\r
}\r
\r
\r
- protected void cancelButton_actionPerformed(ActionEvent e)\r
+ protected void cancelButton_actionPerformed()\r
{\r
\r
Color[] newColours = new Color[24];\r
\r
UserColourScheme ucs = new UserColourScheme(newColours);\r
\r
- if (seqGroup != null)\r
+ if(ap!=null)\r
{\r
- seqGroup.cs = ucs;\r
+ if (seqGroup != null)\r
+ {\r
+ seqGroup.cs = ucs;\r
+ }\r
+ else\r
+ {\r
+ ap.av.setGlobalColourScheme(ucs);\r
+ }\r
+ ap.repaint();\r
}\r
- else\r
+ else if(pdbcanvas!=null)\r
{\r
- ap.av.setGlobalColourScheme(ucs);\r
+ pdbcanvas.pdb.setColours(ucs);\r
}\r
\r
- ap.repaint();\r
-\r
frame.setVisible(false);\r
}\r
\r
gridLayout.setRows(4);\r
okButton.setFont(new java.awt.Font("Verdana", 0, 11));\r
okButton.setLabel("OK");\r
- okButton.addActionListener(new java.awt.event.ActionListener() {\r
- public void actionPerformed(ActionEvent e) {\r
- okButton_actionPerformed(e);\r
- }\r
- });\r
+ okButton.addActionListener(this);\r
applyButton.setFont(new java.awt.Font("Verdana", 0, 11));\r
applyButton.setLabel("Apply");\r
- applyButton.addActionListener(new java.awt.event.ActionListener() {\r
- public void actionPerformed(ActionEvent e) {\r
- applyButton_actionPerformed(e);\r
- }\r
- });\r
+ applyButton.addActionListener(this);\r
cancelButton.setFont(new java.awt.Font("Verdana", 0, 11));\r
cancelButton.setLabel("Cancel");\r
- cancelButton.addActionListener(new java.awt.event.ActionListener() {\r
- public void actionPerformed(ActionEvent e) {\r
- cancelButton_actionPerformed(e);\r
- }\r
- });\r
+ cancelButton.addActionListener(this);\r
this.setBackground(new Color(212, 208, 223));\r
jPanel2.setBounds(new Rectangle(0, 265, 400, 35));\r
buttonPanel.setBounds(new Rectangle(0, 123, 400, 142));\r
rScroller.setUnitIncrement(1);\r
rScroller.setVisibleAmount(1);\r
rScroller.setBounds(new Rectangle(36, 27, 119, 19));\r
- rScroller.addAdjustmentListener(new java.awt.event.AdjustmentListener() {\r
- public void adjustmentValueChanged(AdjustmentEvent e) {\r
- rScroller_adjustmentValueChanged(e);\r
- }\r
- });\r
+ rScroller.addAdjustmentListener(this);\r
label1.setAlignment(Label.RIGHT);\r
label1.setText("R");\r
label1.setBounds(new Rectangle(19, 30, 16, 15));\r
rText.setFont(new java.awt.Font("Dialog", Font.PLAIN, 10));\r
rText.setText("0 ");\r
rText.setBounds(new Rectangle(156, 27, 53, 19));\r
- rText.addActionListener(new java.awt.event.ActionListener() {\r
- public void actionPerformed(ActionEvent e) {\r
- rText_actionPerformed(e);\r
- }\r
- });\r
+ rText.addActionListener(this);\r
label4.setAlignment(Label.RIGHT);\r
label4.setText("G");\r
label4.setBounds(new Rectangle(15, 56, 20, 15));\r
gScroller.setUnitIncrement(1);\r
gScroller.setVisibleAmount(1);\r
gScroller.setBounds(new Rectangle(35, 52, 120, 20));\r
- gScroller.addAdjustmentListener(new java.awt.event.AdjustmentListener() {\r
- public void adjustmentValueChanged(AdjustmentEvent e) {\r
- gScroller_adjustmentValueChanged(e);\r
- }\r
- });\r
+ gScroller.addAdjustmentListener(this);\r
gText.setFont(new java.awt.Font("Dialog", Font.PLAIN, 10));\r
gText.setText("0 ");\r
gText.setBounds(new Rectangle(156, 52, 53, 20));\r
- gText.addActionListener(new java.awt.event.ActionListener() {\r
- public void actionPerformed(ActionEvent e) {\r
- gText_actionPerformed(e);\r
- }\r
- });\r
+ gText.addActionListener(this);\r
label5.setAlignment(Label.RIGHT);\r
label5.setText("B");\r
label5.setBounds(new Rectangle(14, 82, 20, 15));\r
bScroller.setUnitIncrement(1);\r
bScroller.setVisibleAmount(1);\r
bScroller.setBounds(new Rectangle(35, 78, 120, 20));\r
- bScroller.addAdjustmentListener(new java.awt.event.AdjustmentListener() {\r
- public void adjustmentValueChanged(AdjustmentEvent e) {\r
- bScroller_adjustmentValueChanged(e);\r
- }\r
- });\r
+ bScroller.addAdjustmentListener(this);\r
bText.setFont(new java.awt.Font("Dialog", Font.PLAIN, 10));\r
bText.setText("0 ");\r
bText.setBounds(new Rectangle(157, 78, 52, 20));\r
- bText.addActionListener(new java.awt.event.ActionListener() {\r
- public void actionPerformed(ActionEvent e) {\r
- bText_actionPerformed(e);\r
- }\r
- });\r
+ bText.addActionListener(this);\r
target.setBackground(Color.black);\r
target.setBounds(new Rectangle(229, 26, 134, 79));\r
this.add(jPanel2, null);\r