Mercurial > bellaciao
diff settings.h @ 2:fee291c8d42a
settings: profiles management first draft
author | Goffi <goffi@goffi.org> |
---|---|
date | Mon, 08 Aug 2011 10:30:23 +0200 |
parents | parameters.h@22b44846b04b |
children | 220e5619bf87 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/settings.h Mon Aug 08 10:30:23 2011 +0200 @@ -0,0 +1,65 @@ +/* +Bellaciao: a Salut à Toi frontend +Copyright (C) 2011 Jérôme Poisson (goffi@goffi.org) + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as published by +the Free Software Foundation, either version 3 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 Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#ifndef SETTINGS_H +#define SETTINGS_H + + +#include <QtGui> +#include "ui_settings.h" +#include "bridge.h" + +class ProfileListWidgetItem : public QListWidgetItem +{ + + public: + ProfileListWidgetItem(const QString & profile, QListWidget * parent, bool isDefault=false); + const QString& getProfile(); + private: + QString m_profile; +}; + +class Settings : public QWidget, private Ui::SettingsDlg +{ + Q_OBJECT + + public: + ~Settings(); + static Settings* getDialog(); + + + private slots: + void profileChanged(QListWidgetItem* item); + void profileCurrentChanged(QListWidgetItem* current, QListWidgetItem* previous); + void on_buttonNew_clicked(); + void on_buttonDelete_clicked(); + void saveSettings(); + void cancelSettings(); + + protected: + Settings(QWidget *parent = 0); + + private: + static Settings* _instance; + Bridge* m_bridge; + +}; + + + +#endif