Check featureLinks is not null
[jalview.git] / src / jalview / appletgui / FontChooser.java
index e424a42..843ffe7 100755 (executable)
@@ -21,10 +21,10 @@ package jalview.appletgui;
 \r
 import java.awt.*;\r
 \r
-import jalview.jbappletgui.*;\r
+import java.awt.event.*;\r
 \r
 public class FontChooser\r
-    extends GFontChooser\r
+    extends Panel implements ActionListener, ItemListener\r
 {\r
   AlignmentPanel ap;\r
   TreePanel tp;\r
@@ -34,6 +34,15 @@ public class FontChooser
 \r
   public FontChooser(TreePanel tp)\r
   {\r
+    try\r
+    {\r
+      jbInit();\r
+    }\r
+    catch (Exception e)\r
+    {\r
+      e.printStackTrace();\r
+    }\r
+\r
     this.tp = tp;\r
     oldFont = tp.getTreeFont();\r
     init();\r
@@ -41,14 +50,22 @@ public class FontChooser
 \r
   public FontChooser(AlignmentPanel ap)\r
   {\r
+    try\r
+    {\r
+      jbInit();\r
+    }\r
+    catch (Exception e)\r
+    {\r
+      e.printStackTrace();\r
+    }\r
+\r
     this.ap = ap;\r
     oldFont = ap.av.getFont();\r
     init();\r
   }\r
 \r
   void init()\r
-    {\r
-    this.ap = ap;\r
+  {\r
     String fonts[] = Toolkit.getDefaultToolkit().getFontList();\r
     for (int i = 0; i < fonts.length; i++)\r
     {\r
@@ -71,11 +88,30 @@ public class FontChooser
     Frame frame = new Frame();\r
     this.frame = frame;\r
     frame.add(this);\r
-    jalview.bin.JalviewLite.addFrame(frame, "Change Font", 440, 100);\r
+    jalview.bin.JalviewLite.addFrame(frame, "Change Font", 440, 115);\r
 \r
     init = false;\r
   }\r
 \r
+  public void actionPerformed(ActionEvent evt)\r
+  {\r
+    if(evt.getSource()==ok)\r
+      ok_actionPerformed();\r
+    else if(evt.getSource()==cancel)\r
+      cancel_actionPerformed();\r
+  }\r
+\r
+  public void itemStateChanged(ItemEvent evt)\r
+  {\r
+    if(evt.getSource()==fontName)\r
+      fontName_actionPerformed();\r
+    else if(evt.getSource()==fontSize)\r
+      fontSize_actionPerformed();\r
+    else if(evt.getSource()==fontStyle)\r
+      fontStyle_actionPerformed();\r
+  }\r
+\r
+\r
   protected void ok_actionPerformed()\r
   {\r
     frame.setVisible(false);\r
@@ -153,5 +189,70 @@ public class FontChooser
     }\r
     changeFont();\r
   }\r
+  Label label1 = new Label();\r
+  protected Choice fontSize = new Choice();\r
+  protected Choice fontStyle = new Choice();\r
+  Label label2 = new Label();\r
+  Label label3 = new Label();\r
+  protected Choice fontName = new Choice();\r
+  Button ok = new Button();\r
+  Button cancel = new Button();\r
+  Panel panel1 = new Panel();\r
+  Panel panel2 = new Panel();\r
+  Panel panel3 = new Panel();\r
+  BorderLayout borderLayout1 = new BorderLayout();\r
+  BorderLayout borderLayout2 = new BorderLayout();\r
+  BorderLayout borderLayout3 = new BorderLayout();\r
+  Panel panel4 = new Panel();\r
+  Panel panel5 = new Panel();\r
+  BorderLayout borderLayout4 = new BorderLayout();\r
+\r
+\r
+  private void jbInit() throws Exception {\r
+      label1.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      label1.setAlignment(Label.RIGHT);\r
+      label1.setText("Font: ");\r
+      this.setLayout(borderLayout4);\r
+      fontSize.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      fontSize.addItemListener(this);\r
+      fontStyle.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      fontStyle.addItemListener(this);\r
+      label2.setAlignment(Label.RIGHT);\r
+      label2.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      label2.setText("Size: ");\r
+      label3.setAlignment(Label.RIGHT);\r
+      label3.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      label3.setText("Style: ");\r
+      fontName.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      fontName.addItemListener(this);\r
+      ok.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      ok.setLabel("OK");\r
+      ok.addActionListener(this);\r
+      cancel.setFont(new java.awt.Font("Verdana", 0, 11));\r
+      cancel.setLabel("Cancel");\r
+      cancel.addActionListener(this);\r
+      this.setBackground(Color.white);\r
+      panel1.setLayout(borderLayout1);\r
+      panel2.setLayout(borderLayout3);\r
+      panel3.setLayout(borderLayout2);\r
+      panel5.setBackground(Color.white);\r
+      panel4.setBackground(Color.white);\r
+      panel1.setBackground(Color.white);\r
+      panel2.setBackground(Color.white);\r
+      panel3.setBackground(Color.white);\r
+      panel1.add(label1, BorderLayout.WEST);\r
+      panel1.add(fontName, BorderLayout.CENTER);\r
+      panel5.add(panel1, null);\r
+      panel5.add(panel3, null);\r
+      panel5.add(panel2, null);\r
+      panel2.add(label3, BorderLayout.WEST);\r
+      panel2.add(fontStyle, BorderLayout.CENTER);\r
+      panel3.add(label2, BorderLayout.WEST);\r
+      panel3.add(fontSize, BorderLayout.CENTER);\r
+      this.add(panel4, BorderLayout.SOUTH);\r
+      panel4.add(ok, null);\r
+      panel4.add(cancel, null);\r
+      this.add(panel5, BorderLayout.CENTER);\r
+  }\r
 \r
 }\r