X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fnotificationssettingspage.h;h=744a10e14afeaac19a5d4bf2866e26c5ba7ebb94;hp=d155914103ab2d40559e38a4f481890bc723f77c;hb=9188f1a4880dc7f4c26612a265c1d874f6df5a8c;hpb=9d32e4eb35cecd82d936d2de7da7e7e7dc606667 diff --git a/src/qtui/settingspages/notificationssettingspage.h b/src/qtui/settingspages/notificationssettingspage.h index d1559141..744a10e1 100644 --- a/src/qtui/settingspages/notificationssettingspage.h +++ b/src/qtui/settingspages/notificationssettingspage.h @@ -1,11 +1,11 @@ /*************************************************************************** - * Copyright (C) 2005-08 by the Quassel IRC Team * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * + * (at your option) version 3. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * @@ -15,38 +15,38 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef NOTIFICATIONSSETTINGSPAGE_H_ -#define NOTIFICATIONSSETTINGSPAGE_H_ +#pragma once #include #include "settingspage.h" -#include "ui_notificationssettingspage.h" -class NotificationsSettingsPage : public SettingsPage { - Q_OBJECT +//! A settings page for configuring notifications +/** This class just vertically stacks the ConfigWidgets of the registered notification backends. + * \NOTE: When this is called, all backends need to be already registered. No dynamic changes + * are tracked or reacted to! + */ +class NotificationsSettingsPage : public SettingsPage +{ + Q_OBJECT - public: - NotificationsSettingsPage(QWidget *parent = 0); +public: + NotificationsSettingsPage(QWidget* parent = nullptr); - bool hasDefaults() const; + bool hasDefaults() const override; - public slots: - void save(); - void load(); - void defaults(); +public slots: + void save() final override; + void load() final override; + void defaults() final override; - private slots: +private slots: void widgetHasChanged(); - private: - Ui::NotificationsSettingsPage ui; - QHash settings; - - bool testHasChanged(); +private: + QList _configWidgets; + bool _hasDefaults{false}; }; - -#endif