/* For general Scribus (>=1.3.2) copyright and licensing information please refer to the COPYING file provided with the program. Following this notice may exist a copyright and/or license notice that predates the release of Scribus 1.3.2 for which a new license (GPL+exception) is in place. */ #ifndef PREFSDIALOGBASE_H #define PREFSDIALOGBASE_H #include #include #include class QEvent; class QHBoxLayout; class QLabel; class QListWidgetItem; class QPushButton; class QStackedWidget; class QVBoxLayout; #include "scribusapi.h" class SCRIBUS_API OptionListWidget : public QListWidget { Q_OBJECT public: OptionListWidget(QWidget* parent); ~OptionListWidget() {}; void arrangeIcons(); }; class SCRIBUS_API PrefsDialogBase : public QDialog { Q_OBJECT public: PrefsDialogBase( QWidget* parent = 0 ); ~PrefsDialogBase() {}; virtual void changeEvent(QEvent *e); int addItem(QString name, QPixmap icon, QWidget *tab); // void arrangeIcons(); QStackedWidget* prefsWidgets; QPushButton* backToDefaults; //! \brief Apply changes but don't close the dialog. QPushButton* applyChangesButton; QPushButton* buttonOk; QPushButton* buttonCancel; QPushButton* saveButton; OptionListWidget* prefsSelection; QMap itemMap; int counter; public slots: void itemSelected(QListWidgetItem* ic); void newItemSelected(); signals: void aboutToShow(QWidget *); protected: QVBoxLayout* prefsLayout; QHBoxLayout* layout3; QHBoxLayout* layout4; QVBoxLayout* layout5; QLabel* tabNameLabel; protected slots: virtual void languageChange(); virtual void saveButton_clicked(); }; #endif