view settings.h @ 9:0d7875c26974

layout designer: hints on widget placement during drag and drop
author Goffi <goffi@goffi.org>
date Fri, 26 Aug 2011 12:15:21 +0200
parents c63d67895cbe
children
line wrap: on
line source

/*
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"
#include "session.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::SettingsUI
{
    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;
        Session* m_session;

};



#endif