/*
- * Jalview - A Sequence Alignment Editor and Viewer
- * Copyright (C) 2007 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
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ 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.
- *
- * 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.
- *
+ *
+ * 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 this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
*/
package jalview.jbgui;
+import jalview.gui.JvSwingUtils;
+import jalview.util.MessageManager;
import jalview.util.UrlLink;
-import java.awt.*;
-import java.awt.event.*;
-import javax.swing.*;
+import java.awt.Font;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.Insets;
+import java.awt.Panel;
+import java.awt.Rectangle;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
-public class GSequenceLink
- extends Panel
+import javax.swing.BorderFactory;
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.SwingConstants;
+
+public class GSequenceLink extends Panel
{
public GSequenceLink()
{
try
{
jbInit();
- }
- catch (Exception ex)
+ } catch (Exception ex)
{
ex.printStackTrace();
}
}
- private void jbInit()
- throws Exception
+ private void jbInit() throws Exception
{
this.setLayout(gridBagLayout1);
- nameTB.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
+ nameTB.setFont(JvSwingUtils.getLabelFont());
nameTB.setBounds(new Rectangle(77, 10, 310, 23));
nameTB.addKeyListener(new KeyAdapter()
{
nameTB_keyTyped(e);
}
});
- urlTB.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
+ urlTB.setFont(JvSwingUtils.getLabelFont());
urlTB.setText("http://www.");
urlTB.setBounds(new Rectangle(78, 40, 309, 23));
urlTB.addKeyListener(new KeyAdapter()
urlTB_keyTyped(e);
}
});
- jLabel1.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
+ jLabel1.setFont(JvSwingUtils.getLabelFont());
jLabel1.setHorizontalAlignment(SwingConstants.TRAILING);
- jLabel1.setText("Link Name");
+ jLabel1.setText(MessageManager.getString("label.link_name"));
jLabel1.setBounds(new Rectangle(4, 10, 71, 24));
- jLabel2.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
+ jLabel2.setFont(JvSwingUtils.getLabelFont());
jLabel2.setHorizontalAlignment(SwingConstants.TRAILING);
- jLabel2.setText("URL");
+ jLabel2.setText(MessageManager.getString("label.url"));
jLabel2.setBounds(new Rectangle(17, 37, 54, 27));
jLabel3.setFont(new java.awt.Font("Verdana", Font.ITALIC, 11));
- jLabel3.setText("Use $SEQUENCE_ID$ to specify where sequence id is in URL");
+ jLabel3.setText(MessageManager.getString("label.use_sequence_id_1"));
jLabel3.setBounds(new Rectangle(21, 72, 351, 15));
+ jLabel4.setFont(new java.awt.Font("Verdana", Font.ITALIC, 11));
+ jLabel4.setText(MessageManager.getString("label.use_sequence_id_2"));
+ jLabel4.setBounds(new Rectangle(21, 93, 351, 15));
jPanel1.setBorder(BorderFactory.createEtchedBorder());
jPanel1.setLayout(null);
jPanel1.add(jLabel1);
jPanel1.add(urlTB);
jPanel1.add(jLabel2);
jPanel1.add(jLabel3);
- this.add(jPanel1, new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0
- , GridBagConstraints.CENTER,
- GridBagConstraints.BOTH,
- new Insets(5, 4, 6, 5), 390, 100));
+ jPanel1.add(jLabel4);
+ this.add(jPanel1, new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0,
+ GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(
+ 5, 4, 6, 5), 390, 130));
}
public void setName(String name)
public boolean checkValid()
{
- UrlLink ul = new UrlLink("foo|"+urlTB.getText().trim());
- if (ul.isValid()&&ul.isDynamic())
+ UrlLink ul = new UrlLink("foo|" + urlTB.getText().trim());
+ if (ul.isValid() && ul.isDynamic())
{
return true;
}
-
+
JOptionPane.showInternalMessageDialog(jalview.gui.Desktop.desktop,
- "Sequence URL must contain $SEQUENCE_ID$ or a regex $SEQUENCE_ID=/<regex>/=$",
- "URL not valid",
+ MessageManager.getString("warn.url_must_contain"),
+ MessageManager.getString("label.invalid_url"),
JOptionPane.WARNING_MESSAGE);
return false;
}
JTextField nameTB = new JTextField();
+
JTextField urlTB = new JTextField();
+
JLabel jLabel1 = new JLabel();
+
JLabel jLabel2 = new JLabel();
+
JLabel jLabel3 = new JLabel();
+
+ JLabel jLabel4 = new JLabel();
+
JPanel jPanel1 = new JPanel();
+
GridBagLayout gridBagLayout1 = new GridBagLayout();
+
public void nameTB_keyTyped(KeyEvent e)
{
if (e.getKeyChar() == '|')
public void urlTB_keyTyped(KeyEvent e)
{
- if (e.getKeyChar() == '|' || e.getKeyChar() == ' ')
- {
- e.consume();
- }
+ // URLLink object validation takes care of incorrect regexes.
+ // if (e.getKeyChar() == '|' || e.getKeyChar() == ' ')
+ // {
+ // e.consume();
+ // }
}
}