Emitting a custom signal using lambdas
The remove task is straightforward to implement, but we'll study some new concepts along the way. The Task
has to notify its owner and parent (MainWindow
) that the removeTaskButton
QPushButton
has been clicked. We'll implement this by defining a custom signal removed
in Task.h
files:
class Task : public QWidget { ... public slots: void rename(); signals: void removed(Task* task); ... };
Like we did for the slots, we have to add the Qt keyword signals in our header. Since a signal
is used only to notify another class, the public
keyword is not needed (it even raises a compilation error). A signal
is simply a notification sent to the receiver (the connected slot
); it implies that there is no function body for ...
Get Mastering Qt 5 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.