JAL-1563 Further increased swing timer for search textfield to 2500ms, removed 1200ms...
[jalview.git] / src / jalview / fts / core / GFTSPanel.java
index a35e827..c9ee297 100644 (file)
@@ -99,6 +99,10 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
 
   private String lastSearchTerm = "";
 
+  protected JButton btn_next_page = new JButton();
+
+  protected JButton btn_prev_page = new JButton();
+
   private JTable tbl_summary = new JTable()
   {
     private boolean inLayout;
@@ -322,6 +326,63 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
       }
     });
 
+    btn_next_page.setEnabled(false);
+    btn_next_page.setFont(new java.awt.Font("Verdana", 0, 12));
+    btn_next_page.setText(MessageManager.getString("action.next_page"));
+    btn_next_page.addActionListener(new java.awt.event.ActionListener()
+    {
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        nextPageAction();
+      }
+    });
+    btn_next_page.addKeyListener(new KeyAdapter()
+    {
+      @Override
+      public void keyPressed(KeyEvent evt)
+      {
+        if (evt.getKeyCode() == KeyEvent.VK_ENTER)
+        {
+          nextPageAction();
+        }
+      }
+    });
+
+    btn_prev_page.setEnabled(false);
+    btn_prev_page.setFont(new java.awt.Font("Verdana", 0, 12));
+    btn_prev_page.setText(MessageManager.getString("action.prev_page"));
+    btn_prev_page.addActionListener(new java.awt.event.ActionListener()
+    {
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        prevPageAction();
+      }
+    });
+    btn_prev_page.addKeyListener(new KeyAdapter()
+    {
+      @Override
+      public void keyPressed(KeyEvent evt)
+      {
+        if (evt.getKeyCode() == KeyEvent.VK_ENTER)
+        {
+          prevPageAction();
+        }
+      }
+    });
+
+    if (isPaginationEnabled())
+    {
+      btn_prev_page.setVisible(true);
+      btn_next_page.setVisible(true);
+    }
+    else
+    {
+      btn_prev_page.setVisible(false);
+      btn_next_page.setVisible(false);
+    }
+
     btn_cancel.setFont(new java.awt.Font("Verdana", 0, 12));
     btn_cancel.setText(MessageManager.getString("action.cancel"));
     btn_cancel.addActionListener(new java.awt.event.ActionListener()
@@ -404,7 +465,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
     });
 
     final DeferredTextInputListener listener = new DeferredTextInputListener(
-            500,
+            2500,
             new ActionListener()
             {
               @Override
@@ -491,6 +552,8 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
     pnl_inputs.add(txt_search);
     pnl_inputs.add(lbl_loading);
     pnl_inputs.add(lbl_warning);
+    pnl_inputs.add(btn_prev_page);
+    pnl_inputs.add(btn_next_page);
 
     this.setLayout(mainLayout);
     this.add(pnl_inputs, java.awt.BorderLayout.NORTH);