Add a slot to mainwindow but amend to use Q_SLOTS

For some reason, 'private slots:' causes a build error but private
Q_SLOTS: works.

The error was that 'slots' did not name a type and it appeared to be
insensitive to whether the Makefile rule for .moc was in its current
place or preceeded the rule for .cpp.

Add a slot using the connectByName idiom e.g. actionNew connects to slot
on_actionNew_triggered(). Use qDebug to show this fires if the menu
option is selected.

Above to demonstrate how to begin to link menu to code paths.

Signed-off-by: Amit Chaudhuri <amit.k.chaudhuri@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Amit Chaudhuri 2013-04-09 09:35:44 +01:00 committed by Dirk Hohndel
parent e865aed478
commit a94e09ad5c
2 changed files with 16 additions and 3 deletions

View file

@ -2,10 +2,16 @@
#include "ui_mainwindow.h"
#include <QVBoxLayout>
#include <QtDebug>
MainWindow::MainWindow() : ui(new Ui::MainWindow())
{
ui->setupUi(this);
}
void MainWindow::on_actionNew_triggered()
{
qDebug() << "actionNew";
}
#include "mainwindow.moc"

View file

@ -3,6 +3,7 @@
#include <QMainWindow>
namespace Ui
{
class MainWindow;
@ -13,12 +14,18 @@ class DiveNotes;
class Stats;
class Equipment;
class MainWindow : public QMainWindow{
Q_OBJECT
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow();
private Q_SLOTS:
void on_actionNew_triggered();
private:
Ui::MainWindow *ui;
};
#endif
#endif