/* 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 #include #include #include 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 mData; QString mDefautProg; const QString mPrefix; const QString mDescription; }; #endif