--- a/src/qtgui/reslist.h
+++ b/src/qtgui/reslist.h
@@ -1,6 +1,6 @@
 #ifndef _RESLIST_H_INCLUDED_
 #define _RESLIST_H_INCLUDED_
-/* @(#$Id: reslist.h,v 1.16 2008-09-29 07:13:47 dockes Exp $  (C) 2005 J.F.Dockes */
+/* @(#$Id: reslist.h,v 1.17 2008-12-16 14:20:10 dockes Exp $  (C) 2005 J.F.Dockes */
 
 #include <list>
 
@@ -25,6 +25,27 @@
 #include "filtseq.h"
 #include "refcntr.h"
 #include "rcldoc.h"
+#include "reslistpager.h"
+
+class ResList;
+
+class QtGuiResListPager : public ResListPager {
+public:
+    QtGuiResListPager(ResList *p, int ps) 
+	: ResListPager(ps), m_parent(p) 
+    {}
+    virtual bool append(const string& data);
+    virtual bool append(const string& data, int idx, const Rcl::Doc& doc);
+    virtual string trans(const string& in);
+    virtual string detailsLink();
+    virtual const string &parFormat();
+    virtual string nextUrl();
+    virtual string prevUrl();
+    virtual string pageTop();
+    virtual string iconPath(const string& mt);
+private:
+    ResList *m_parent;
+};
 
 /**
  * Display a list of document records. The data can be out of the history 
@@ -39,6 +60,7 @@
 {
     Q_OBJECT;
 
+    friend class QtGuiResListPager;
  public:
     ResList(QWidget* parent = 0, const char* name = 0);
     virtual ~ResList();
@@ -63,9 +85,10 @@
     virtual void doubleClicked(int, int);
     virtual void resPageUpOrBack(); // Page up pressed
     virtual void resPageDownOrNext(); // Page down pressed
-    virtual void resultPageBack(); // Display previous page of results
-    virtual void resultPageFirst(); // Display first page of results
-    virtual void resultPageNext(); // Display next (or first) page of results
+    virtual void resultPageBack(); // Previous page of results
+    virtual void resultPageFirst(); // First page of results
+    virtual void resultPageNext(); // Next (or first) page of results
+    virtual void displayPage(); // Display current page
     virtual void menuPreview();
     virtual void menuEdit();
     virtual void menuCopyFN();
@@ -102,6 +125,7 @@
     virtual void showQueryDetails();
 
  private:
+    QtGuiResListPager           *m_pager;
     // Raw doc source
     RefCntr<DocSequence>  m_baseDocSource;
     // Possibly filtered/sorted docsource (the one displayed)
@@ -111,8 +135,7 @@
     DocSeqFiltSpec        m_filtspecs;
     // Docs for current page
     std::vector<Rcl::Doc> m_curDocs;
-    // First docnum (in m_docSource sequence) for current page
-    int                m_winfirst;
+
     // Translate from textedit paragraph number to relative
     // docnum. Built while we insert text into the qtextedit
     std::map<int,int>  m_pageParaToReldocnums;
@@ -122,6 +145,7 @@
     list<int>          m_selDocs;
     int                m_listId;
 
+    
     virtual int docnumfromparnum(int);
     virtual int parnumfromdocnum(int);