/* * Copyright (C) by Daniel Molkentin * * 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. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * for more details. */ #ifndef MIRALL_GENERALSETTINGS_H #define MIRALL_GENERALSETTINGS_H #include #include #include namespace OCC { class IgnoreListEditor; class SyncLogDialog; namespace Ui { class GeneralSettings; } /** * @brief The GeneralSettings class * @ingroup gui */ class GeneralSettings : public QWidget { Q_OBJECT public: explicit GeneralSettings(QWidget *parent = nullptr); ~GeneralSettings() override; signals: void showAbout(); private slots: void saveMiscSettings(); void slotToggleLaunchOnStartup(bool); void slotToggleOptionalDesktopNotifications(bool); #ifdef Q_OS_WIN void slotShowInExplorerNavigationPane(bool); #endif void slotUpdateInfo(); void slotUpdateChannelChanged(int index); void slotIgnoreFilesEditor(); void loadMiscSettings(); protected: void showEvent(QShowEvent *event) override; private: void reloadConfig(); void loadLanguageNamesIntoDropdown(); Ui::GeneralSettings *_ui; QPointer _ignoreEditor; bool _currentlyLoading; }; } // namespace OCC #endif // MIRALL_GENERALSETTINGS_H