X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGFontChooser.java;h=b3f4242f7411115b253a8135206d2d0732c7e453;hb=c19d2a91ca05e052e3408bf5852d88eb5d0608f1;hp=dda5aebd39a37ec509429f76b70cbe3b4d0dbcc7;hpb=385af41edfa1484a5871dc19e391cb310504ec63;p=jalview.git diff --git a/src/jalview/jbgui/GFontChooser.java b/src/jalview/jbgui/GFontChooser.java index dda5aeb..b3f4242 100755 --- a/src/jalview/jbgui/GFontChooser.java +++ b/src/jalview/jbgui/GFontChooser.java @@ -1,255 +1,323 @@ -/* -* Jalview - A Sequence Alignment Editor and Viewer -* Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle -* -* This program is free software; you can redistribute it and/or -* modify it under the terms of the GNU General Public License -* as published by the Free Software Foundation; either version 2 -* of the License, or (at your option) any later version. -* -* This program is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with this program; if not, write to the Free Software -* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -*/ -package jalview.jbgui; - -import java.awt.*; -import java.awt.event.*; - -import javax.swing.*; -import java.awt.BorderLayout; -import java.awt.Font; -import java.awt.Rectangle; - -/** - * DOCUMENT ME! - * - * @author $author$ - * @version $Revision$ - */ -public class GFontChooser extends JPanel -{ - JLabel jLabel1 = new JLabel(); - protected JComboBox fontSize = new JComboBox(); - protected JComboBox fontStyle = new JComboBox(); - JLabel jLabel2 = new JLabel(); - JLabel jLabel3 = new JLabel(); - protected JComboBox fontName = new JComboBox(); - JButton ok = new JButton(); - JButton cancel = new JButton(); - JPanel jPanel1 = new JPanel(); - JPanel jPanel2 = new JPanel(); - JPanel jPanel3 = new JPanel(); - BorderLayout borderLayout1 = new BorderLayout(); - BorderLayout borderLayout2 = new BorderLayout(); - BorderLayout borderLayout3 = new BorderLayout(); - protected JButton defaultButton = new JButton(); - protected JCheckBox smoothFont = new JCheckBox(); - BorderLayout borderLayout4 = new BorderLayout(); - protected JCheckBox monospaced = new JCheckBox(); - JPanel jPanel4 = new JPanel(); - - /** - * Creates a new GFontChooser object. - */ - public GFontChooser() - { - try - { - jbInit(); - } - catch (Exception e) - { - e.printStackTrace(); - } - } - - /** - * DOCUMENT ME! - * - * @throws Exception DOCUMENT ME! - */ - private void jbInit() throws Exception - { - jLabel1.setFont(new java.awt.Font("Verdana", 0, 11)); - jLabel1.setHorizontalAlignment(SwingConstants.RIGHT); - jLabel1.setText("Font: "); - jLabel1.setVerticalTextPosition(javax.swing.SwingConstants.CENTER); - this.setLayout(null); - fontSize.setFont(new java.awt.Font("Verdana", 0, 11)); - fontSize.setOpaque(false); - fontSize.setPreferredSize(new Dimension(50, 21)); - fontSize.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - fontSize_actionPerformed(e); - } - }); - fontStyle.setFont(new java.awt.Font("Verdana", 0, 11)); - fontStyle.setOpaque(false); - fontStyle.setPreferredSize(new Dimension(90, 21)); - fontStyle.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - fontStyle_actionPerformed(e); - } - }); - jLabel2.setFont(new java.awt.Font("Verdana", 0, 11)); - jLabel2.setHorizontalAlignment(SwingConstants.RIGHT); - jLabel2.setText("Size: "); - jLabel2.setVerticalTextPosition(javax.swing.SwingConstants.CENTER); - jLabel3.setFont(new java.awt.Font("Verdana", 0, 11)); - jLabel3.setHorizontalAlignment(SwingConstants.RIGHT); - jLabel3.setText("Style: "); - jLabel3.setVerticalTextPosition(javax.swing.SwingConstants.CENTER); - fontName.setFont(new java.awt.Font("Verdana", 0, 11)); - fontName.setMaximumSize(new Dimension(32767, 32767)); - fontName.setMinimumSize(new Dimension(300, 21)); - fontName.setOpaque(false); - fontName.setPreferredSize(new Dimension(180, 21)); - fontName.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - fontName_actionPerformed(e); - } - }); - ok.setFont(new java.awt.Font("Verdana", 0, 11)); - ok.setText("OK"); - ok.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - ok_actionPerformed(e); - } - }); - cancel.setFont(new java.awt.Font("Verdana", 0, 11)); - cancel.setText("Cancel"); - cancel.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - cancel_actionPerformed(e); - } - }); - this.setBackground(Color.white); - jPanel1.setOpaque(false); - jPanel1.setBounds(new Rectangle(5, 6, 308, 23)); - jPanel1.setLayout(borderLayout1); - jPanel2.setOpaque(false); - jPanel2.setBounds(new Rectangle(5, 37, 128, 21)); - jPanel2.setLayout(borderLayout3); - jPanel3.setOpaque(false); - jPanel3.setBounds(new Rectangle(174, 38, 134, 21)); - jPanel3.setLayout(borderLayout2); - defaultButton.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); - defaultButton.setText("Set as Default"); - defaultButton.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - defaultButton_actionPerformed(e); - } - }); - smoothFont.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); - smoothFont.setOpaque(false); - smoothFont.setToolTipText(""); - smoothFont.setText("Anti-alias Fonts (Slower to render)"); - smoothFont.setBounds(new Rectangle(41, 65, 223, 23)); - smoothFont.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent e) - { - smoothFont_actionPerformed(e); - } - }); - monospaced.setEnabled(false); - monospaced.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); - monospaced.setOpaque(false); - monospaced.setToolTipText("Monospaced fonts are faster to render"); - monospaced.setText("Monospaced"); - jPanel4.setOpaque(false); - jPanel4.setBounds(new Rectangle(24, 92, 259, 35)); - jPanel1.add(jLabel1, BorderLayout.WEST); - jPanel1.add(fontName, BorderLayout.CENTER); - jPanel1.add(monospaced, java.awt.BorderLayout.EAST); - this.add(jPanel3, null); - this.add(jPanel2, null); - jPanel2.add(fontSize, java.awt.BorderLayout.CENTER); - jPanel2.add(jLabel2, java.awt.BorderLayout.WEST); - jPanel4.add(defaultButton); - jPanel4.add(ok); - jPanel4.add(cancel); - this.add(smoothFont); - this.add(jPanel4); - jPanel3.add(jLabel3, java.awt.BorderLayout.WEST); - jPanel3.add(fontStyle, java.awt.BorderLayout.CENTER); - this.add(jPanel1, null); - } - - /** - * DOCUMENT ME! - * - * @param e DOCUMENT ME! - */ - protected void ok_actionPerformed(ActionEvent e) - { - } - - /** - * DOCUMENT ME! - * - * @param e DOCUMENT ME! - */ - protected void cancel_actionPerformed(ActionEvent e) - { - } - - /** - * DOCUMENT ME! - * - * @param e DOCUMENT ME! - */ - protected void fontName_actionPerformed(ActionEvent e) - { - } - - /** - * DOCUMENT ME! - * - * @param e DOCUMENT ME! - */ - protected void fontSize_actionPerformed(ActionEvent e) - { - } - - /** - * DOCUMENT ME! - * - * @param e DOCUMENT ME! - */ - protected void fontStyle_actionPerformed(ActionEvent e) - { - } - - /** - * DOCUMENT ME! - * - * @param e DOCUMENT ME! - */ - public void defaultButton_actionPerformed(ActionEvent e) - { - } - - public void smoothFont_actionPerformed(ActionEvent e) - { - - } -} +/* + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b2) + * Copyright (C) 2015 The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ +package jalview.jbgui; + +import jalview.gui.JvSwingUtils; +import jalview.util.MessageManager; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Rectangle; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JComboBox; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.SwingConstants; + +/** + * DOCUMENT ME! + * + * @author $author$ + * @version $Revision$ + */ +public class GFontChooser extends JPanel +{ + private static final Font VERDANA_11PT = new java.awt.Font("Verdana", 0, + 11); + + protected JComboBox fontSize = new JComboBox(); + + protected JComboBox fontStyle = new JComboBox(); + + protected JComboBox fontName = new JComboBox(); + + protected JButton defaultButton = new JButton(); + + protected JCheckBox smoothFont = new JCheckBox(); + + protected JCheckBox monospaced = new JCheckBox(); + + protected JCheckBox scaleAsCdna = new JCheckBox(); + + /** + * Creates a new GFontChooser object. + */ + public GFontChooser() + { + try + { + jbInit(); + } catch (Exception e) + { + e.printStackTrace(); + } + } + + /** + * DOCUMENT ME! + * + * @throws Exception + * DOCUMENT ME! + */ + private void jbInit() throws Exception + { + this.setLayout(null); + this.setBackground(Color.white); + + JLabel fontLabel = new JLabel(MessageManager.getString("label.font")); + fontLabel.setFont(VERDANA_11PT); + fontLabel.setHorizontalAlignment(SwingConstants.RIGHT); + fontLabel.setVerticalTextPosition(javax.swing.SwingConstants.CENTER); + + fontSize.setFont(VERDANA_11PT); + fontSize.setOpaque(false); + fontSize.setPreferredSize(new Dimension(50, 21)); + fontSize.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + fontSize_actionPerformed(e); + } + }); + + fontStyle.setFont(VERDANA_11PT); + fontStyle.setOpaque(false); + fontStyle.setPreferredSize(new Dimension(90, 21)); + fontStyle.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + fontStyle_actionPerformed(e); + } + }); + + JLabel sizeLabel = new JLabel(MessageManager.getString("label.size")); + sizeLabel.setFont(VERDANA_11PT); + sizeLabel.setHorizontalAlignment(SwingConstants.RIGHT); + sizeLabel.setVerticalTextPosition(javax.swing.SwingConstants.CENTER); + + JLabel styleLabel = new JLabel(MessageManager.getString("label.style")); + styleLabel.setFont(VERDANA_11PT); + styleLabel.setHorizontalAlignment(SwingConstants.RIGHT); + styleLabel.setVerticalTextPosition(javax.swing.SwingConstants.CENTER); + + fontName.setFont(VERDANA_11PT); + fontName.setMaximumSize(new Dimension(32767, 32767)); + fontName.setMinimumSize(new Dimension(300, 21)); + fontName.setOpaque(false); + fontName.setPreferredSize(new Dimension(180, 21)); + fontName.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + fontName_actionPerformed(e); + } + }); + + JButton ok = new JButton(MessageManager.getString("action.ok")); + ok.setFont(VERDANA_11PT); + ok.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + ok_actionPerformed(e); + } + }); + + JButton cancel = new JButton(MessageManager.getString("action.cancel")); + cancel.setFont(VERDANA_11PT); + cancel.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + cancel_actionPerformed(e); + } + }); + + defaultButton.setFont(JvSwingUtils.getLabelFont()); + defaultButton.setText(MessageManager.getString("label.set_as_default")); + defaultButton.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + defaultButton_actionPerformed(e); + } + }); + + smoothFont.setFont(JvSwingUtils.getLabelFont()); + smoothFont.setOpaque(false); + smoothFont.setText(MessageManager.getString("label.anti_alias_fonts")); + smoothFont.setBounds(new Rectangle(41, 65, 260, 23)); + smoothFont.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + smoothFont_actionPerformed(e); + } + }); + + /* + * Scale protein as cDNA is only visible in SplitFrame protein alignment + */ + scaleAsCdna.setVisible(false); + scaleAsCdna.setFont(JvSwingUtils.getLabelFont()); + scaleAsCdna.setOpaque(false); + scaleAsCdna.setText(MessageManager.getString("label.scale_as_cdna")); + scaleAsCdna.setBounds(new Rectangle(41, 85, 260, 23)); + scaleAsCdna.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + scaleAsCdna_actionPerformed(e); + } + }); + + monospaced.setEnabled(false); + monospaced.setFont(JvSwingUtils.getLabelFont()); + monospaced.setOpaque(false); + monospaced.setToolTipText(MessageManager + .getString("label.monospaced_fonts_faster_to_render")); + monospaced.setText(MessageManager.getString("label.monospaced_font")); + + /* + * jPanel1: Font dropdown, Monospaced checkbox + */ + JPanel jPanel1 = new JPanel(); + jPanel1.setOpaque(false); + jPanel1.setBounds(new Rectangle(5, 6, 308, 23)); + jPanel1.setLayout(new BorderLayout()); + jPanel1.add(fontLabel, BorderLayout.WEST); + jPanel1.add(fontName, BorderLayout.CENTER); + jPanel1.add(monospaced, java.awt.BorderLayout.EAST); + + /* + * jPanel2: font size dropdown + */ + JPanel jPanel2 = new JPanel(); + jPanel2.setOpaque(false); + jPanel2.setBounds(new Rectangle(5, 37, 128, 21)); + jPanel2.setLayout(new BorderLayout()); + jPanel2.add(fontSize, java.awt.BorderLayout.CENTER); + jPanel2.add(sizeLabel, java.awt.BorderLayout.WEST); + + /* + * jPanel3: font style dropdown + */ + JPanel jPanel3 = new JPanel(); + jPanel3.setOpaque(false); + jPanel3.setBounds(new Rectangle(174, 38, 134, 21)); + jPanel3.setLayout(new BorderLayout()); + jPanel3.add(styleLabel, java.awt.BorderLayout.WEST); + jPanel3.add(fontStyle, java.awt.BorderLayout.CENTER); + + /* + * jPanel4: Default and OK buttons + */ + JPanel jPanel4 = new JPanel(); + jPanel4.setOpaque(false); + jPanel4.setBounds(new Rectangle(24, 112, 300, 35)); + jPanel4.add(defaultButton); + jPanel4.add(ok); + jPanel4.add(cancel); + + this.add(smoothFont); + this.add(scaleAsCdna); + this.add(jPanel3, null); + this.add(jPanel2, null); + this.add(jPanel4); + this.add(jPanel1, null); + } + + protected void scaleAsCdna_actionPerformed(ActionEvent e) + { + } + + /** + * DOCUMENT ME! + * + * @param e + * DOCUMENT ME! + */ + protected void ok_actionPerformed(ActionEvent e) + { + } + + /** + * DOCUMENT ME! + * + * @param e + * DOCUMENT ME! + */ + protected void cancel_actionPerformed(ActionEvent e) + { + } + + /** + * DOCUMENT ME! + * + * @param e + * DOCUMENT ME! + */ + protected void fontName_actionPerformed(ActionEvent e) + { + } + + /** + * DOCUMENT ME! + * + * @param e + * DOCUMENT ME! + */ + protected void fontSize_actionPerformed(ActionEvent e) + { + } + + /** + * DOCUMENT ME! + * + * @param e + * DOCUMENT ME! + */ + protected void fontStyle_actionPerformed(ActionEvent e) + { + } + + /** + * DOCUMENT ME! + * + * @param e + * DOCUMENT ME! + */ + public void defaultButton_actionPerformed(ActionEvent e) + { + } + + public void smoothFont_actionPerformed(ActionEvent e) + { + + } +}