diff options
Diffstat (limited to 'programconfigurator.h')
| -rw-r--r-- | programconfigurator.h | 60 | 
1 files changed, 60 insertions, 0 deletions
| diff --git a/programconfigurator.h b/programconfigurator.h new file mode 100644 index 0000000..03fb047 --- /dev/null +++ b/programconfigurator.h @@ -0,0 +1,60 @@ +/* +  This program is free software; you can redistribute it and/or +  modify it under the terms of the GNU General Public License +  as published by the Free Software Foundation; either version +  2 of the License, or (at your option) any later version. +*/ + +#ifndef PROGRAMCONFIGURATOR_H +#define PROGRAMCONFIGURATOR_H + +#include <QWidget> +#include <QString> +#include <QHash> +#include <QVariant> + +class QLineEdit; +class QPushButton; +class QComboBox; +class QStringList; +class QLabel; +class QStringList; + +class ProgramConfigurator : public QWidget { +	Q_OBJECT +	public: +		ProgramConfigurator(const QString &prefix, const QString &description, QWidget *parent = 0); +		~ProgramConfigurator() {} + +	public slots: +		void writeSettings(); + +	private slots: +		void programChanged(const QString &program); +		void addProgram(); +		void removeProgram(); +		void updateProgram(); +		void setDefault(); + +	private: +		void readSettings(); +		bool isValid(const QString &program); +		QStringList args(const QString &argString); + +	private: +		QComboBox *mProgramSelector; +		QLineEdit *mNameEdit; +		QLineEdit *mPathEdit; +		QLineEdit *mArgumentsEdit; +		QPushButton *mAdd; +		QPushButton *mRemove; +		QPushButton *mUpdate; +		QPushButton *mDefault; +		QLabel *mDefaultLabel; +		QHash<QString, QVariant> mData; +		QString mDefautProg; +		const QString mPrefix; +		const QString mDescription; +}; + +#endif | 
