From 767e4c01c89fcc1610c225a57716d7a77281e0fc Mon Sep 17 00:00:00 2001 From: dockes Date: Thu, 2 Aug 2007 06:33:35 +0000 Subject: [PATCH] added gotofirstpage action --- src/qt4gui/recoll.qrc | 1 + src/qtgui/rclmain.ui | 15 +++++++++++++++ src/qtgui/rclmain_w.cpp | 7 ++++++- src/qtgui/recoll.pro.in | 13 ++++++++----- src/qtgui/reslist.cpp | 9 ++++++++- src/qtgui/reslist.h | 3 ++- 6 files changed, 40 insertions(+), 8 deletions(-) diff --git a/src/qt4gui/recoll.qrc b/src/qt4gui/recoll.qrc index 99efe744..8d96d494 100644 --- a/src/qt4gui/recoll.qrc +++ b/src/qt4gui/recoll.qrc @@ -6,6 +6,7 @@ images/history.png images/nextpage.png images/prevpage.png + images/firstpage.png images/sortparms.png images/spell.png diff --git a/src/qtgui/rclmain.ui b/src/qtgui/rclmain.ui index f0bb6dbc..6508e76d 100644 --- a/src/qtgui/rclmain.ui +++ b/src/qtgui/rclmain.ui @@ -120,6 +120,7 @@ Result list + @@ -259,6 +260,20 @@ Next page of results + + + firstPageAction + + + false + + + First page + + + Go to first page of results + + prevPageAction diff --git a/src/qtgui/rclmain_w.cpp b/src/qtgui/rclmain_w.cpp index b322dabf..c477d902 100644 --- a/src/qtgui/rclmain_w.cpp +++ b/src/qtgui/rclmain_w.cpp @@ -1,5 +1,5 @@ #ifndef lint -static char rcsid[] = "@(#$Id: rclmain_w.cpp,v 1.38 2007-08-01 10:04:53 dockes Exp $ (C) 2005 J.F.Dockes"; +static char rcsid[] = "@(#$Id: rclmain_w.cpp,v 1.39 2007-08-02 06:33:35 dockes Exp $ (C) 2005 J.F.Dockes"; #endif /* * This program is free software; you can redistribute it and/or modify @@ -151,6 +151,8 @@ void RclMain::init() // signals and slots connections connect(sSearch, SIGNAL(clearSearch()), this, SLOT(resetSearch())); + connect(firstPageAction, SIGNAL(activated()), + resList, SLOT(resultPageFirst())); connect(prevPageAction, SIGNAL(activated()), resList, SLOT(resultPageBack())); connect(nextPageAction, SIGNAL(activated()), @@ -202,6 +204,7 @@ void RclMain::init() #if (QT_VERSION < 0x040000) nextPageAction->setIconSet(createIconSet("nextpage.png")); prevPageAction->setIconSet(createIconSet("prevpage.png")); + firstPageAction->setIconSet(createIconSet("firstpage.png")); toolsSpellAction->setIconSet(QPixmap::fromMimeSource("spell.png")); toolsDoc_HistoryAction->setIconSet(QPixmap::fromMimeSource("history.png")); toolsAdvanced_SearchAction->setIconSet(QPixmap::fromMimeSource("asearch.png")); @@ -210,6 +213,7 @@ void RclMain::init() toolsSpellAction->setIcon(QIcon(":/images/spell.png")); nextPageAction->setIcon(QIcon(":/images/nextpage.png")); prevPageAction->setIcon(QIcon(":/images/prevpage.png")); + firstPageAction->setIcon(QIcon(":/images/firstpage.png")); toolsDoc_HistoryAction->setIcon(QIcon(":/images/history.png")); toolsAdvanced_SearchAction->setIcon(QIcon(":/images/asearch.png")); toolsSort_parametersAction->setIcon(QIcon(":/images/sortparms.png")); @@ -950,5 +954,6 @@ void RclMain::enableNextPage(bool yesno) void RclMain::enablePrevPage(bool yesno) { prevPageAction->setEnabled(yesno); + firstPageAction->setEnabled(yesno); } diff --git a/src/qtgui/recoll.pro.in b/src/qtgui/recoll.pro.in index c0251036..681c7039 100644 --- a/src/qtgui/recoll.pro.in +++ b/src/qtgui/recoll.pro.in @@ -42,15 +42,18 @@ FORMS = \ uiprefs.ui \ viewaction.ui -IMAGES = images/asearch.png \ - images/history.png \ +IMAGES = \ + images/asearch.png \ + images/d_firstpage.png \ images/d_nextpage.png \ - images/nextpage.png \ images/d_prevpage.png \ + images/d_spell.png \ + images/firstpage.png \ + images/history.png \ + images/nextpage.png \ images/prevpage.png \ images/sortparms.png \ - images/d_spell.png \ - images/spell.png + images/spell.png unix { UI_DIR = .ui diff --git a/src/qtgui/reslist.cpp b/src/qtgui/reslist.cpp index 0736a1d8..e62e84ef 100644 --- a/src/qtgui/reslist.cpp +++ b/src/qtgui/reslist.cpp @@ -1,5 +1,5 @@ #ifndef lint -static char rcsid[] = "@(#$Id: reslist.cpp,v 1.32 2007-07-20 14:32:55 dockes Exp $ (C) 2005 J.F.Dockes"; +static char rcsid[] = "@(#$Id: reslist.cpp,v 1.33 2007-08-02 06:33:35 dockes Exp $ (C) 2005 J.F.Dockes"; #endif #include @@ -247,6 +247,13 @@ void ResList::resultPageBack() resultPageNext(); } +// Go to the first page +void ResList::resultPageFirst() +{ + m_winfirst = -1; + resultPageNext(); +} + // Convert byte count into unit (KB/MB...) appropriate for display static string displayableBytes(long size) { diff --git a/src/qtgui/reslist.h b/src/qtgui/reslist.h index bebb7bbb..80ca9cf5 100644 --- 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.12 2007-07-20 14:32:55 dockes Exp $ (C) 2005 J.F.Dockes */ +/* @(#$Id: reslist.h,v 1.13 2007-08-02 06:33:35 dockes Exp $ (C) 2005 J.F.Dockes */ #include @@ -47,6 +47,7 @@ class ResList : public QTEXTBROWSER 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 menuPreview(); virtual void menuEdit();