X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Ffts%2Fcore%2FGFTSPanel.java;h=47716016cae16e3d5aca19a33bd1e257408046f2;hb=549bb4b879f02e42105b1c4b70397a042627723e;hp=7a98fcaf89e7860c17e98f46c6937d55d5ae6473;hpb=44db4288c5102d925c67e5b15ff80dc5e8c27b41;p=jalview.git diff --git a/src/jalview/fts/core/GFTSPanel.java b/src/jalview/fts/core/GFTSPanel.java index 7a98fca..4771601 100644 --- a/src/jalview/fts/core/GFTSPanel.java +++ b/src/jalview/fts/core/GFTSPanel.java @@ -73,7 +73,6 @@ import javax.swing.event.DocumentListener; import javax.swing.event.InternalFrameEvent; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableColumn; -import javax.swing.text.JTextComponent; /** * This class provides the swing GUI layout for FTS Panel and implements most of @@ -89,10 +88,11 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI protected JInternalFrame mainFrame = new JInternalFrame( getFTSFrameTitle()); - protected JTabbedPane mainFramTabs = new JTabbedPane(); + protected JTabbedPane tabs = jalview.jbgui.GDesktop.createTabbedPane(); + protected IProgressIndicator progressIndicator; - protected JComboBox cmb_searchTarget = new JComboBox(); + protected JComboBox cmb_searchTarget = new JComboBox<>(); protected JButton btn_ok = new JButton(); @@ -131,7 +131,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI protected JLabel lbl_blank = new JLabel(balnkPlaceholderImage); - private JTabbedPane tabbedPane = new JTabbedPane(); + JTabbedPane tabbedPane = jalview.jbgui.GDesktop.createTabbedPane(); private JPanel pnl_actions = new JPanel(); @@ -151,7 +151,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI protected int pageLimit; - protected HashSet paginatorCart = new HashSet(); + protected HashSet paginatorCart = new HashSet<>(); private static final int MIN_WIDTH = 670; @@ -252,13 +252,14 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI { if (fetcher == null) { - mainFramTabs = null; + tabs = null; } jbInit(); if (fetcher != null) { - mainFramTabs.addTab("Retrieve IDs", fetcher); - fetcher.setDatabaseChooserVisible(false); + tabs.addTab(MessageManager.getString("label.retrieve_ids"), + fetcher); + fetcher.embedIn(this); } mainFrame.setMinimumSize(new Dimension(MIN_WIDTH, MIN_HEIGHT)); final JPanel ftsPanel = this; @@ -268,10 +269,10 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI public void focusGained(FocusEvent e) { // TODO: make selected tab gain focus in correct widget - if (mainFramTabs != null - && mainFramTabs.getSelectedComponent() == ftsPanel) + if (tabs != null + && tabs.getSelectedComponent() == ftsPanel) { - txt_search.requestFocusInWindow(); + txt_search.getComponent().requestFocusInWindow(); } } }); @@ -291,7 +292,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI private void jbInit() throws Exception { - txt_search = new JvCacheableInputBox(getCacheKey()); + txt_search = new JvCacheableInputBox<>(getCacheKey()); populateCmbSearchTargetOptions(); Integer width = getTempUserPrefs().get("FTSPanel.width") == null ? 800 : getTempUserPrefs().get("FTSPanel.width"); @@ -355,9 +356,20 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI } }); - btn_autosearch.setText(""); + btn_autosearch.setText(MessageManager.getString("option.autosearch")); btn_autosearch.setToolTipText( MessageManager.getString("option.enable_disable_autosearch")); + btn_autosearch.setSelected( + jalview.bin.Cache.getDefault(getAutosearchPreference(), true)); + btn_autosearch.addActionListener(new java.awt.event.ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + jalview.bin.Cache.setProperty(getAutosearchPreference(), + Boolean.toString(btn_autosearch.isSelected())); + } + }); btn_back.setFont(new java.awt.Font("Verdana", 0, 12)); btn_back.setText(MessageManager.getString("action.back")); btn_back.addActionListener(new java.awt.event.ActionListener() @@ -512,17 +524,16 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI "label.separate_multiple_query_values", new Object[] { getCmbSearchTarget().getSelectedItem().toString() }); } - txt_search.setToolTipText( + txt_search.getComponent().setToolTipText( JvSwingUtils.wrapTooltip(true, tooltipText)); searchAction(true); } } }); - txt_search.setFont(new java.awt.Font("Verdana", 0, 12)); + txt_search.getComponent().setFont(new java.awt.Font("Verdana", 0, 12)); - txt_search.getEditor().getEditorComponent() - .addKeyListener(new KeyAdapter() + txt_search.addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) @@ -562,8 +573,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI } } }, false); - ((JTextComponent) txt_search.getEditor().getEditorComponent()) - .getDocument().addDocumentListener(listener); + txt_search.addDocumentListener(listener); txt_search.addFocusListener(new FocusListener() { @@ -582,7 +592,6 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI txt_search.addActionListener(new ActionListener() { - @Override public void actionPerformed(ActionEvent e) { @@ -615,7 +624,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI btn_ok.setEnabled(false); btn_next_page.setEnabled(false); btn_prev_page.setEnabled(false); - txt_search.setEnabled(false); + txt_search.getComponent().setEnabled(false); cmb_searchTarget.setEnabled(false); previousWantedFields = getFTSRestClient() .getAllDefaultDisplayedFTSDataColumns() @@ -626,7 +635,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI btn_back.setEnabled(true); btn_cancel.setEnabled(true); refreshPaginatorState(); - txt_search.setEnabled(true); + txt_search.getComponent().setEnabled(true); cmb_searchTarget.setEnabled(true); if (wantedFieldsUpdated()) { @@ -652,7 +661,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI pnl_results.add(tabbedPane); pnl_inputs.add(cmb_searchTarget); - pnl_inputs.add(txt_search); + pnl_inputs.add(txt_search.getComponent()); pnl_inputs.add(btn_autosearch); pnl_inputs.add(lbl_loading); pnl_inputs.add(lbl_warning); @@ -665,12 +674,13 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI this.add(pnl_results, java.awt.BorderLayout.CENTER); this.add(pnl_actions, java.awt.BorderLayout.SOUTH); mainFrame.setVisible(true); - if (mainFramTabs != null) + if (tabs != null) { - mainFramTabs.setOpaque(true); - mainFramTabs.insertTab("Free Text Search", null, this, "", 0); - mainFrame.setContentPane(mainFramTabs); - mainFramTabs.setVisible(true); + tabs.setOpaque(true); + tabs.insertTab(MessageManager.getString("label.free_text_search"), + null, this, "", 0); + mainFrame.setContentPane(tabs); + tabs.setVisible(true); } else { @@ -790,11 +800,6 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI return cmb_searchTarget; } - public JComboBox getTxtSearch() - { - return txt_search; - } - public JInternalFrame getMainFrame() { return mainFrame; @@ -835,7 +840,11 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI } } - protected void btn_back_ActionPerformed() + /** + * Action on Back button is to close this panel and open a new Sequence + * Fetcher panel + */ + public void btn_back_ActionPerformed() { closeAction(); new SequenceFetcher(progressIndicator); @@ -848,7 +857,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI btn_cancel.setEnabled(false); } - protected void btn_cancel_ActionPerformed() + public void btn_cancel_ActionPerformed() { closeAction(); } @@ -858,7 +867,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI */ public void populateCmbSearchTargetOptions() { - List searchableTargets = new ArrayList(); + List searchableTargets = new ArrayList<>(); try { Collection foundFTSTargets = getFTSRestClient() @@ -886,7 +895,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI public void transferToSequenceFetcher(String ids) { - seqFetcher.getTextArea().setText(ids); + seqFetcher.setQuery(ids); Thread worker = new Thread(seqFetcher); worker.start(); } @@ -911,7 +920,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI lbl_blank.setVisible(true); btn_ok.setEnabled(false); mainFrame.setTitle(getFTSFrameTitle()); - referesh(); + refresh(); tbl_summary.setModel(new DefaultTableModel()); tbl_summary.setVisible(false); } @@ -1048,9 +1057,11 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI } } - public void referesh() + public void refresh() { mainFrame.setTitle(getFTSFrameTitle()); } + @Override + public abstract void okAction(); }