mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Dynamically generate recent files actions
Instead of using four recent files actions defined in mainwindow.ui, generate these actions dynamically depending on the macro NUM_RECENT_FILES. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
1208bc8428
commit
4296ca11a6
3 changed files with 8 additions and 31 deletions
|
@ -201,11 +201,12 @@ MainWindow::MainWindow() : QMainWindow(),
|
||||||
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), divePlannerWidget(), SLOT(settingsChanged()));
|
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), divePlannerWidget(), SLOT(settingsChanged()));
|
||||||
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), divePlannerSettingsWidget(), SLOT(settingsChanged()));
|
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), divePlannerSettingsWidget(), SLOT(settingsChanged()));
|
||||||
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), TankInfoModel::instance(), SLOT(update()));
|
connect(PreferencesDialog::instance(), SIGNAL(settingsChanged()), TankInfoModel::instance(), SLOT(update()));
|
||||||
// TODO: Make the number of actions depend on NUM_RECENT_FILES
|
for (int i = 0; i < NUM_RECENT_FILES; i++) {
|
||||||
connect(ui.actionRecent1, SIGNAL(triggered(bool)), this, SLOT(recentFileTriggered(bool)));
|
actionsRecent[i] = new QAction(this);
|
||||||
connect(ui.actionRecent2, SIGNAL(triggered(bool)), this, SLOT(recentFileTriggered(bool)));
|
ui.menuFile->insertAction(ui.actionQuit, actionsRecent[i]);
|
||||||
connect(ui.actionRecent3, SIGNAL(triggered(bool)), this, SLOT(recentFileTriggered(bool)));
|
connect(actionsRecent[i], SIGNAL(triggered(bool)), this, SLOT(recentFileTriggered(bool)));
|
||||||
connect(ui.actionRecent4, SIGNAL(triggered(bool)), this, SLOT(recentFileTriggered(bool)));
|
}
|
||||||
|
ui.menuFile->insertSeparator(ui.actionQuit);
|
||||||
connect(information(), SIGNAL(addDiveFinished()), graphics(), SLOT(setProfileState()));
|
connect(information(), SIGNAL(addDiveFinished()), graphics(), SLOT(setProfileState()));
|
||||||
connect(information(), SIGNAL(dateTimeChanged()), graphics(), SLOT(dateTimeChanged()));
|
connect(information(), SIGNAL(dateTimeChanged()), graphics(), SLOT(dateTimeChanged()));
|
||||||
connect(DivePlannerPointsModel::instance(), SIGNAL(planCreated()), this, SLOT(planCreated()));
|
connect(DivePlannerPointsModel::instance(), SIGNAL(planCreated()), this, SLOT(planCreated()));
|
||||||
|
@ -1543,7 +1544,7 @@ void MainWindow::loadRecentFiles()
|
||||||
void MainWindow::updateRecentFilesMenu()
|
void MainWindow::updateRecentFilesMenu()
|
||||||
{
|
{
|
||||||
for (int c = 0; c < NUM_RECENT_FILES; c++) {
|
for (int c = 0; c < NUM_RECENT_FILES; c++) {
|
||||||
QAction *action = this->findChild<QAction *>(QString("actionRecent%1").arg(c + 1));
|
QAction *action = actionsRecent[c];
|
||||||
|
|
||||||
if (recentFiles.count() > c) {
|
if (recentFiles.count() > c) {
|
||||||
QFileInfo fi(recentFiles.at(c));
|
QFileInfo fi(recentFiles.at(c));
|
||||||
|
|
|
@ -222,6 +222,7 @@ private:
|
||||||
struct dive_components what;
|
struct dive_components what;
|
||||||
QList<QAction *> profileToolbarActions;
|
QList<QAction *> profileToolbarActions;
|
||||||
QStringList recentFiles;
|
QStringList recentFiles;
|
||||||
|
QAction *actionsRecent[NUM_RECENT_FILES];
|
||||||
|
|
||||||
struct WidgetForQuadrant {
|
struct WidgetForQuadrant {
|
||||||
WidgetForQuadrant(QWidget *tl = 0, QWidget *tr = 0, QWidget *bl = 0, QWidget *br = 0) :
|
WidgetForQuadrant(QWidget *tl = 0, QWidget *tr = 0, QWidget *bl = 0, QWidget *br = 0) :
|
||||||
|
|
|
@ -75,11 +75,6 @@
|
||||||
<addaction name="separator"/>
|
<addaction name="separator"/>
|
||||||
<addaction name="actionHash_images"/>
|
<addaction name="actionHash_images"/>
|
||||||
<addaction name="actionConfigure_Dive_Computer"/>
|
<addaction name="actionConfigure_Dive_Computer"/>
|
||||||
<addaction name="actionRecent1"/>
|
|
||||||
<addaction name="actionRecent2"/>
|
|
||||||
<addaction name="actionRecent3"/>
|
|
||||||
<addaction name="actionRecent4"/>
|
|
||||||
<addaction name="separator"/>
|
|
||||||
<addaction name="actionQuit"/>
|
<addaction name="actionQuit"/>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QMenu" name="menuLog">
|
<widget class="QMenu" name="menuLog">
|
||||||
|
@ -421,26 +416,6 @@
|
||||||
<string notr="true">F11</string>
|
<string notr="true">F11</string>
|
||||||
</property>
|
</property>
|
||||||
</action>
|
</action>
|
||||||
<action name="actionRecent1">
|
|
||||||
<property name="visible">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionRecent2">
|
|
||||||
<property name="visible">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionRecent3">
|
|
||||||
<property name="visible">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionRecent4">
|
|
||||||
<property name="visible">
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="action_Check_for_Updates">
|
<action name="action_Check_for_Updates">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>&Check for updates</string>
|
<string>&Check for updates</string>
|
||||||
|
|
Loading…
Add table
Reference in a new issue