From 7aad54262927da7f0223ed9ba970e8bba9f4900d Mon Sep 17 00:00:00 2001 From: Alexander Volkov Date: Wed, 31 Oct 2018 19:50:29 +0300 Subject: Notepad example: Get rid of auto-connection slots MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Their correctness is not checked at compile time and even object renames can break code. Change-Id: I99273a28743a79a76c00e6db0ed4cd6d7eba8bf2 Reviewed-by: Topi Reiniƶ --- examples/widgets/tutorials/gettingstartedqt.qdoc | 14 +++--- examples/widgets/tutorials/notepad/notepad.cpp | 57 +++++++++++++++--------- examples/widgets/tutorials/notepad/notepad.h | 32 ++++++------- 3 files changed, 60 insertions(+), 43 deletions(-) (limited to 'examples') diff --git a/examples/widgets/tutorials/gettingstartedqt.qdoc b/examples/widgets/tutorials/gettingstartedqt.qdoc index bbe1dd1a8d..32e8845c05 100644 --- a/examples/widgets/tutorials/gettingstartedqt.qdoc +++ b/examples/widgets/tutorials/gettingstartedqt.qdoc @@ -390,10 +390,10 @@ action concerned. When the QAction has been dragged to the toolbar, clicking the icon will launch the associated slot. - Complete the method \c on_actionNew_triggered(): + Complete the method \c newDocument(): \quotefromfile tutorials/notepad/notepad.cpp - \skipto on_actionNew_triggered() + \skipto newDocument() \printuntil } \c current_file is a global variable containing the file presently @@ -411,10 +411,10 @@ In \c notepad.ui, right click on \c actionOpen and select \c {Go to slot} - Complete method \c on_actionOpen_triggered(). + Complete method \c open(). \quotefromfile tutorials/notepad/notepad.cpp - \skipto on_actionOpen_triggered() + \skipto open() \printuntil file.close \printuntil } @@ -436,7 +436,7 @@ \l {Opening a file}, by right clicking on \c actionSave, and selecting \c {Go to Slot}. - \skipto Notepad::on_actionSave_triggered + \skipto Notepad::save \printuntil file.close \printuntil } @@ -449,7 +449,7 @@ \section2 Saving a file with \c {Save as} - \skipto Notepad::on_actionSave_as_triggered + \skipto Notepad::saveAs \printuntil file.close \printuntil } @@ -475,7 +475,7 @@ \section2 Select a Font - \skipto Notepad::on_actionFont_triggered + \skipto Notepad::selectFont \printuntil ui->textEdit->setFont \printline } diff --git a/examples/widgets/tutorials/notepad/notepad.cpp b/examples/widgets/tutorials/notepad/notepad.cpp index d0e600e852..2ccd6501a1 100644 --- a/examples/widgets/tutorials/notepad/notepad.cpp +++ b/examples/widgets/tutorials/notepad/notepad.cpp @@ -74,6 +74,23 @@ Notepad::Notepad(QWidget *parent) : ui->setupUi(this); this->setCentralWidget(ui->textEdit); + connect(ui->actionNew, &QAction::triggered, this, &Notepad::newDocument); + connect(ui->actionOpen, &QAction::triggered, this, &Notepad::open); + connect(ui->actionSave, &QAction::triggered, this, &Notepad::save); + connect(ui->actionSave_as, &QAction::triggered, this, &Notepad::saveAs); + connect(ui->actionPrint, &QAction::triggered, this, &Notepad::print); + connect(ui->actionExit, &QAction::triggered, this, &Notepad::exit); + connect(ui->actionCopy, &QAction::triggered, this, &Notepad::copy); + connect(ui->actionCut, &QAction::triggered, this, &Notepad::cut); + connect(ui->actionPaste, &QAction::triggered, this, &Notepad::paste); + connect(ui->actionUndo, &QAction::triggered, this, &Notepad::undo); + connect(ui->actionRedo, &QAction::triggered, this, &Notepad::redo); + connect(ui->actionFont, &QAction::triggered, this, &Notepad::selectFont); + connect(ui->actionBold, &QAction::triggered, this, &Notepad::setFontBold); + connect(ui->actionUnderline, &QAction::triggered, this, &Notepad::setFontUnderline); + connect(ui->actionItalic, &QAction::triggered, this, &Notepad::setFontItalic); + connect(ui->actionAbout, &QAction::triggered, this, &Notepad::about); + // Disable menu actions for unavailable features #if !QT_CONFIG(printer) ui->actionPrint->setEnabled(false); @@ -91,13 +108,13 @@ Notepad::~Notepad() delete ui; } -void Notepad::on_actionNew_triggered() +void Notepad::newDocument() { currentFile.clear(); ui->textEdit->setText(QString()); } -void Notepad::on_actionOpen_triggered() +void Notepad::open() { QString fileName = QFileDialog::getOpenFileName(this, "Open the file"); QFile file(fileName); @@ -113,7 +130,7 @@ void Notepad::on_actionOpen_triggered() file.close(); } -void Notepad::on_actionSave_triggered() +void Notepad::save() { QString fileName; // If we don't have a filename from before, get one. @@ -135,7 +152,7 @@ void Notepad::on_actionSave_triggered() file.close(); } -void Notepad::on_actionSave_as_triggered() +void Notepad::saveAs() { QString fileName = QFileDialog::getSaveFileName(this, "Save as"); QFile file(fileName); @@ -152,7 +169,7 @@ void Notepad::on_actionSave_as_triggered() file.close(); } -void Notepad::on_actionPrint_triggered() +void Notepad::print() { #if QT_CONFIG(printer) QPrinter printDev; @@ -165,43 +182,43 @@ void Notepad::on_actionPrint_triggered() #endif // QT_CONFIG(printer) } -void Notepad::on_actionExit_triggered() +void Notepad::exit() { QCoreApplication::quit(); } -void Notepad::on_actionCopy_triggered() +void Notepad::copy() { #if QT_CONFIG(clipboard) ui->textEdit->copy(); #endif } -void Notepad::on_actionCut_triggered() +void Notepad::cut() { #if QT_CONFIG(clipboard) ui->textEdit->cut(); #endif } -void Notepad::on_actionPaste_triggered() +void Notepad::paste() { #if QT_CONFIG(clipboard) ui->textEdit->paste(); #endif } -void Notepad::on_actionUndo_triggered() +void Notepad::undo() { ui->textEdit->undo(); } -void Notepad::on_actionRedo_triggered() +void Notepad::redo() { ui->textEdit->redo(); } -void Notepad::on_actionFont_triggered() +void Notepad::selectFont() { bool fontSelected; QFont font = QFontDialog::getFont(&fontSelected, this); @@ -209,23 +226,23 @@ void Notepad::on_actionFont_triggered() ui->textEdit->setFont(font); } -void Notepad::on_actionUnderline_triggered() +void Notepad::setFontUnderline(bool underline) { - ui->textEdit->setFontUnderline(ui->actionUnderline->isChecked()); + ui->textEdit->setFontUnderline(underline); } -void Notepad::on_actionItalic_triggered() +void Notepad::setFontItalic(bool italic) { - ui->textEdit->setFontItalic(ui->actionItalic->isChecked()); + ui->textEdit->setFontItalic(italic); } -void Notepad::on_actionBold_triggered() +void Notepad::setFontBold(bool bold) { - ui->actionBold->isChecked() ? ui->textEdit->setFontWeight(QFont::Bold) : - ui->textEdit->setFontWeight(QFont::Normal); + bold ? ui->textEdit->setFontWeight(QFont::Bold) : + ui->textEdit->setFontWeight(QFont::Normal); } -void Notepad::on_actionAbout_triggered() +void Notepad::about() { QMessageBox::about(this, tr("About MDI"), tr("The Notepad example demonstrates how to code a basic " diff --git a/examples/widgets/tutorials/notepad/notepad.h b/examples/widgets/tutorials/notepad/notepad.h index 288ab4e373..9580ab8071 100644 --- a/examples/widgets/tutorials/notepad/notepad.h +++ b/examples/widgets/tutorials/notepad/notepad.h @@ -79,37 +79,37 @@ public: //! [5] private slots: - void on_actionNew_triggered(); + void newDocument(); - void on_actionOpen_triggered(); + void open(); - void on_actionSave_triggered(); + void save(); - void on_actionSave_as_triggered(); + void saveAs(); - void on_actionPrint_triggered(); + void print(); - void on_actionExit_triggered(); + void exit(); - void on_actionCopy_triggered(); + void copy(); - void on_actionCut_triggered(); + void cut(); - void on_actionPaste_triggered(); + void paste(); - void on_actionUndo_triggered(); + void undo(); - void on_actionRedo_triggered(); + void redo(); - void on_actionFont_triggered(); + void selectFont(); - void on_actionBold_triggered(); + void setFontBold(bool bold); - void on_actionUnderline_triggered(); + void setFontUnderline(bool underline); - void on_actionItalic_triggered(); + void setFontItalic(bool italic); - void on_actionAbout_triggered(); + void about(); //! [6] private: -- cgit v1.2.3 From ae0843eca0e7102390ceec43236cfe8c5724d278 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Thu, 25 Oct 2018 13:48:34 +0200 Subject: Tablet example: Fix warning about switch/fallthrough Add Q_FALLTHROUGH(), fixing: tabletcanvas.cpp:222:55: warning: this statement may fall through [-Wimplicit-fallthrough=] Change-Id: I573f4add56774218e28a7c5f1dac09c5402333c0 Reviewed-by: Shawn Rutledge --- examples/widgets/widgets/tablet/tabletcanvas.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'examples') diff --git a/examples/widgets/widgets/tablet/tabletcanvas.cpp b/examples/widgets/widgets/tablet/tabletcanvas.cpp index bfcc84e182..dc56702142 100644 --- a/examples/widgets/widgets/tablet/tabletcanvas.cpp +++ b/examples/widgets/widgets/tablet/tabletcanvas.cpp @@ -224,7 +224,7 @@ void TabletCanvas::paintPixmap(QPainter &painter, QTabletEvent *event) qWarning() << error; #endif } - // FALL-THROUGH + Q_FALLTHROUGH(); case QTabletEvent::Stylus: painter.setPen(m_pen); painter.drawLine(lastPoint.pos, event->posF()); -- cgit v1.2.3