--- 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.30 2007-06-19 16:19:24 dockes Exp $ (C) 2005 J.F.Dockes";
+static char rcsid[] = "@(#$Id: rclmain_w.cpp,v 1.31 2007-06-20 13:15:58 dockes Exp $ (C) 2005 J.F.Dockes";
#endif
/*
* This program is free software; you can redistribute it and/or modify
@@ -139,6 +139,8 @@
connect(fileExitAction, SIGNAL(activated() ), this, SLOT(fileExit() ) );
connect(fileStart_IndexingAction, SIGNAL(activated()),
this, SLOT(startIndexing()));
+ connect(fileEraseDocHistoryAction, SIGNAL(activated()),
+ this, SLOT(eraseDocHistory()));
connect(helpAbout_RecollAction, SIGNAL(activated()),
this, SLOT(showAboutDialog()));
connect(userManualAction, SIGNAL(activated()), this, SLOT(startManual()));
@@ -485,8 +487,6 @@
}
(void)curPreview->addEditorTab();
}
- // Enter document in document history
- g_dynconf->enterDoc(fn, doc.ipath);
if (!curPreview->loadFileInCurrentTab(fn, st.st_size, doc, docnum))
curPreview->closeCurrentTab();
}
@@ -519,7 +519,6 @@
preview->setSId(0, HiliteData());
connect(preview, SIGNAL(wordSelect(QString)),
this, SLOT(ssearchAddTerm(QString)));
- g_dynconf->enterDoc(fn, doc.ipath);
preview->show();
if (!preview->loadFileInCurrentTab(fn, st.st_size, doc, 0))
preview->closeCurrentTab();
@@ -821,6 +820,7 @@
m_searchId++;
+ // If you change the title, also change it in eraseDocHistory()
DocSequenceHistory *src =
new DocSequenceHistory(rcldb, g_dynconf,
string(tr("Document history").utf8()));
@@ -829,6 +829,16 @@
setDocSequence();
}
+void RclMain::eraseDocHistory()
+{
+ g_dynconf->eraseAll(RclHistory::docSubkey);
+ // We want to reset the displayed history if it is currently shown. Using
+ // the title value is an ugly hack
+ if (m_docSource->title() ==
+ string((const char *)tr("Document history").utf8())) {
+ showDocHistory();
+ }
+}
void RclMain::sortDataChanged(DocSeqSortSpec spec)
{