#ifndef SERVICESSETTINGSPAGE_H
#define SERVICESSETTINGSPAGE_H
-#include <settings/settingspagebase.h>
+#include "settings/settingspagebase.h"
-#include <QMap>
#include <QString>
-class QCheckBox;
-class QGroupBox;
class QListView;
+class QSortFilterProxyModel;
+class ServiceModel;
+class QLineEdit;
/**
* @brief Page for the 'Services' settings of the Dolphin settings dialog.
Q_OBJECT
public:
- ServicesSettingsPage(QWidget* parent);
- virtual ~ServicesSettingsPage();
+ explicit ServicesSettingsPage(QWidget* parent);
+ ~ServicesSettingsPage() override;
/** @see SettingsPageBase::applySettings() */
- virtual void applySettings();
+ void applySettings() override;
/** @see SettingsPageBase::restoreDefaults() */
- virtual void restoreDefaults();
+ void restoreDefaults() override;
protected:
- virtual void showEvent(QShowEvent* event);
+ void showEvent(QShowEvent* event) override;
private slots:
/**
*/
void loadVersionControlSystems();
- bool isInServicesList(const QString& service) const;
+ bool isInServicesList(const QString &service) const;
+
+ /**
+ * Adds a row to the model of m_listView.
+ */
+ void addRow(const QString &icon,
+ const QString &text,
+ const QString &value,
+ bool checked);
private:
bool m_initialized;
- QListView *m_listView;
- QGroupBox* m_vcsGroupBox;
- QMap<QString, QCheckBox*> m_vcsPluginsMap;
+ ServiceModel *m_serviceModel;
+ QSortFilterProxyModel *m_sortModel;
+ QListView* m_listView;
+ QLineEdit *m_searchLineEdit;
QStringList m_enabledVcsPlugins;
};