diff options
Diffstat (limited to 'utils/themeeditor/configdocument.h')
| -rw-r--r-- | utils/themeeditor/configdocument.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/utils/themeeditor/configdocument.h b/utils/themeeditor/configdocument.h new file mode 100644 index 0000000..2f4c250 --- /dev/null +++ b/utils/themeeditor/configdocument.h @@ -0,0 +1,54 @@ +#ifndef CONFIGDOCUMENT_H +#define CONFIGDOCUMENT_H + +#include <QHBoxLayout> +#include <QLineEdit> +#include <QPushButton> +#include <QWidget> +#include <QMap> + +#include "tabcontent.h" + +namespace Ui { + class ConfigDocument; +} + +class ConfigDocument : public TabContent { + Q_OBJECT +public: + ConfigDocument(QMap<QString, QString>& settings, QString file, + QWidget *parent = 0); + virtual ~ConfigDocument(); + + TabType type() const{ return TabContent::Config; } + QString file() const{ return filePath; } + QString title() const; + + QString toPlainText() const; + + void save(); + void saveAs(); + + bool requestClose(); + +protected: + void changeEvent(QEvent *e); + +private: + Ui::ConfigDocument *ui; + QList<QHBoxLayout*> containers; + QList<QLineEdit*> keys; + QList<QLineEdit*> values; + QList<QPushButton*> deleteButtons; + + QString filePath; + QString saved; + + void addRow(QString key, QString value); + +private slots: + void deleteClicked(); + void addClicked(); +}; + +#endif // CONFIGDOCUMENT_H |