src/qvgui/qvparamwidget.h

Go to the documentation of this file.
00001 /*
00002  *      Copyright (C) 2007. PARP Research Group.
00003  *      <http://perception.inf.um.es>
00004  *      University of Murcia, Spain.
00005  *
00006  *      This file is part of the QVision library.
00007  *
00008  *      QVision is free software: you can redistribute it and/or modify
00009  *      it under the terms of the GNU Lesser General Public License as
00010  *      published by the Free Software Foundation, version 3 of the License.
00011  *
00012  *      QVision is distributed in the hope that it will be useful,
00013  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015  *      GNU Lesser General Public License for more details.
00016  *
00017  *      You should have received a copy of the GNU Lesser General Public
00018  *      License along with QVision. If not, see <http://www.gnu.org/licenses/>.
00019  */
00020 
00024 
00025 #ifndef QVPARAMWIDGET_H
00026 #define QVPARAMWIDGET_H
00027 
00028 #include <QWidget>
00029 #include <QToolButton>
00030 #include <QComboBox>
00031 #include <QLineEdit>
00032 
00033 #include <qvcore/qvpropertycontainer.h>
00034 #include <qvcore/qvworker.h>
00035 #include <qvdta/qvindexedstringlist.h>
00036 
00037 class QLineEdit;
00038 class QSlider;
00039 class QwtSlider;
00040 class QCheckBox;
00041 
00042 #ifndef DOXYGEN_IGNORE_THIS
00043 
00051 class QVIntParamWidget: public QWidget
00052         {
00053         Q_OBJECT
00054         public:
00065                 QVIntParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00066 
00067         signals:
00070                 void valueChanged(int);
00071 
00072         private slots:
00073                 void setValue();
00074 
00075         private:
00076                 int value,min,max;
00077                 QVPropertyContainer *orig_holder,*gui_holder;
00078                 QString property;
00079                 QLineEdit *lineedit;
00080                 QSlider *slider;
00081         };
00082 
00090 class QVDoubleParamWidget: public QWidget
00091         {
00092         Q_OBJECT
00093         public:
00104                 QVDoubleParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00105 
00106         signals:
00109                 void valueChanged(double);
00110 
00111         private slots:
00112                 void setValue();
00113 
00114         private:
00115                 double value,min,max;
00116                 QVPropertyContainer *orig_holder,*gui_holder;
00117                 QString property;
00118                 QLineEdit *lineedit;
00119                 QwtSlider *qwtslider;
00120         };
00121 
00122 
00130 class QVBoolParamWidget: public QWidget
00131         {
00132                 Q_OBJECT
00133         public: 
00144                 QVBoolParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00145         
00146         signals:
00149                 void valueChanged(bool);
00150 
00151         private slots:
00152                 void setValue();
00153         
00154         private:
00155                 bool value;
00156                 QVPropertyContainer *orig_holder,*gui_holder;
00157                 QString property;
00158                 QCheckBox *checkbox;
00159         };
00160 
00168 class QVStringParamWidget: public QWidget
00169         {
00170         Q_OBJECT
00171         public:
00182                 QVStringParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00183 
00184         signals:
00187                 void valueChanged(QString);
00188 
00189         private slots:
00190                 void setValue();
00191 
00192         private:
00193                 QString value;
00194                 QVPropertyContainer *orig_holder,*gui_holder;
00195                 QString property;
00196                 QLineEdit *lineedit;
00197         };
00198 
00206 class QVStringListParamWidget: public QWidget
00207         {
00208         Q_OBJECT
00209         public:
00220                 QVStringListParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00221 
00222         signals:
00225                 void valueChanged(QVIndexedStringList);
00226 
00227         private slots:
00228                 void setValue();
00229 
00230         private:
00231                 QVIndexedStringList value;
00232                 QVPropertyContainer *orig_holder,*gui_holder;
00233                 QString property;
00234                 QComboBox *combobox;
00235         };
00236 
00237 
00245 class QVWorkerTriggerWidget: public QWidget
00246         {
00247         Q_OBJECT
00248 
00249         public:
00254                 QVWorkerTriggerWidget(QVWorker *worker, const QString triggername, QWidget *parent = 0);
00255 
00256         signals:
00259                 void valueChanged(QString);
00260 
00261         private slots:
00262                 void setValue();
00263 
00264         private:
00265                 QVWorker *worker;
00266                 QString triggername;
00267                 QToolButton *toolbutton;
00268         };
00269 
00270 #endif
00271 #endif
00272 

Generated on Thu Jul 17 17:23:28 2008 for QVision by  doxygen 1.5.3