summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--addon/doxywizard/doxywizard.cpp16
-rw-r--r--addon/doxywizard/doxywizard.h2
2 files changed, 15 insertions, 3 deletions
diff --git a/addon/doxywizard/doxywizard.cpp b/addon/doxywizard/doxywizard.cpp
index e292d0c..8af77c8 100644
--- a/addon/doxywizard/doxywizard.cpp
+++ b/addon/doxywizard/doxywizard.cpp
@@ -368,14 +368,16 @@ void MainWindow::loadSettings()
}
}
- for (int i=0;i<MAX_RECENT_FILES;i++)
+ /* due to prepend use list in reversed order */
+ for (int i=MAX_RECENT_FILES;i>=0;i--)
{
QString entry = m_settings.value(QString().sprintf("recent/config%d",i)).toString();
if (!entry.isEmpty() && QFileInfo(entry).exists())
{
- addRecentFile(entry);
+ addRecentFileList(entry);
}
}
+ updateRecentFile();
}
@@ -402,6 +404,11 @@ void MainWindow::selectRunTab()
void MainWindow::addRecentFile(const QString &fileName)
{
+ addRecentFileList(fileName);
+ updateRecentFile();
+}
+void MainWindow::addRecentFileList(const QString &fileName)
+{
int i=m_recentFiles.indexOf(fileName);
if (i!=-1) m_recentFiles.removeAt(i);
@@ -415,8 +422,11 @@ void MainWindow::addRecentFile(const QString &fileName)
m_recentFiles.removeLast();
m_recentFiles.prepend(fileName);
}
+}
+void MainWindow::updateRecentFile(void)
+{
m_recentMenu->clear();
- i=0;
+ int i=0;
foreach( QString str, m_recentFiles )
{
m_recentMenu->addAction(str);
diff --git a/addon/doxywizard/doxywizard.h b/addon/doxywizard/doxywizard.h
index 189972f..1f6cb72 100644
--- a/addon/doxywizard/doxywizard.h
+++ b/addon/doxywizard/doxywizard.h
@@ -58,6 +58,8 @@ class MainWindow : public QMainWindow
MainWindow();
void saveConfig(const QString &fileName);
void addRecentFile(const QString &fileName);
+ void addRecentFileList(const QString &fileName);
+ void updateRecentFile(void);
void updateConfigFileName(const QString &fileName);
void setWorkingDir(const QString &dirName);
void updateLaunchButtonState();