Switch to side-by-side view

--- a/src/query/reslistpager.cpp
+++ b/src/query/reslistpager.cpp
@@ -86,6 +86,32 @@
 	    // No results at all (on first page)
 	    m_winfirst = -1;
 	}
+	return;
+    }
+    m_respage = npage;
+}
+
+void ResListPager::resultPageFor(int docnum)
+{
+    if (m_docSource.isNull()) {
+	LOGDEB(("ResListPager::resultPageFor: null source\n"));
+	return;
+    }
+
+    int resCnt = m_docSource->getResCnt();
+    LOGDEB(("ResListPager::resultPageFor(%d): rescnt %d, winfirst %d\n", 
+	    docnum, resCnt, m_winfirst));
+    m_winfirst = (docnum / m_pagesize) * m_pagesize;
+
+    // Get the next page of results.
+    vector<ResListEntry> npage;
+    int pagelen = m_docSource->getSeqSlice(m_winfirst, m_pagesize, npage);
+
+    // If page was truncated, there is no next
+    m_hasNext = (pagelen == m_pagesize);
+
+    if (pagelen <= 0) {
+	m_winfirst = -1;
 	return;
     }
     m_respage = npage;