X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGPDBSearchPanel.java;h=29a0014248bedb72c1d13742869f80eaa65536ac;hb=5dc62d509b6d0f90f3545bf40b272390410eda45;hp=b350a0f27d49e58a1d723a286b313b330e594a8f;hpb=2cbc2e45a74eb8cf8040f9a71636289ca2db5241;p=jalview.git diff --git a/src/jalview/jbgui/GPDBSearchPanel.java b/src/jalview/jbgui/GPDBSearchPanel.java index b350a0f..29a0014 100644 --- a/src/jalview/jbgui/GPDBSearchPanel.java +++ b/src/jalview/jbgui/GPDBSearchPanel.java @@ -22,6 +22,7 @@ package jalview.jbgui; import jalview.gui.Desktop; +import jalview.jbgui.PDBDocFieldPreferences.PreferenceSource; import jalview.util.MessageManager; import jalview.ws.dbsources.PDBRestClient.PDBDocField; @@ -36,8 +37,11 @@ import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; +import javax.swing.JTabbedPane; import javax.swing.JTable; import javax.swing.JTextField; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; @@ -65,17 +69,16 @@ public abstract class GPDBSearchPanel extends JPanel protected JTextField txt_search = new JTextField(20); - // protected JList lst_searchResult = new - // JList(); - - // protected JScrollPane scrl_searchResult = new JScrollPane( - // lst_searchResult); - protected JTable tbl_summary = new JTable(); protected JScrollPane scrl_searchResult = new JScrollPane( tbl_summary); + private JTabbedPane tabbedPane = new JTabbedPane(); + + private PDBDocFieldPreferences pdbDocFieldPrefs = new PDBDocFieldPreferences( + PreferenceSource.SEARCH_SUMMARY); + private JPanel pnl_actions = new JPanel(); private JPanel pnl_results = new JPanel(); @@ -104,6 +107,7 @@ tbl_summary); */ private void jbInit() throws Exception { + tbl_summary.setAutoCreateRowSorter(true); 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() @@ -131,19 +135,10 @@ tbl_summary); btn_cancel_ActionPerformed(); } }); - pnl_actions.add(btn_back); - pnl_actions.add(btn_ok); - pnl_actions.add(btn_cancel); - - // lst_searchResult - // .setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); - // lst_searchResult.setLayoutOrientation(JList.VERTICAL); - // lst_searchResult.setVisibleRowCount(-1); scrl_searchResult.setPreferredSize(new Dimension(500, 300)); scrl_searchResult .setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); - pnl_results.add(scrl_searchResult); cmb_searchTarget.setFont(new java.awt.Font("Verdana", 0, 12)); cmb_searchTarget.addActionListener(new ActionListener() @@ -179,6 +174,33 @@ tbl_summary); } }); + final String searchTabTitle = MessageManager + .getString("label.search_result"); + ChangeListener changeListener = new ChangeListener() + { + public void stateChanged(ChangeEvent changeEvent) + { + JTabbedPane sourceTabbedPane = (JTabbedPane) changeEvent + .getSource(); + int index = sourceTabbedPane.getSelectedIndex(); + if (sourceTabbedPane.getTitleAt(index).equals(searchTabTitle)) + { + txt_search_ActionPerformed(); + } + } + }; + tabbedPane.addChangeListener(changeListener); + tabbedPane.setPreferredSize(new Dimension(500, 300)); + tabbedPane.add(searchTabTitle, scrl_searchResult); + tabbedPane.add( + MessageManager.getString("label.configure_displayed_columns"), + pdbDocFieldPrefs); + + pnl_actions.add(btn_back); + pnl_actions.add(btn_ok); + pnl_actions.add(btn_cancel); + + pnl_results.add(tabbedPane); pnl_inputs.add(cmb_searchTarget); pnl_inputs.add(txt_search);