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 
00031 #include <qvcore/qvpropertycontainer.h>
00032 #include <qvcore/qvworker.h>
00033 
00034 class QLineEdit;
00035 class QSlider;
00036 class QwtSlider;
00037 class QCheckBox;
00038 
00040 
00048 class QVIntParamWidget: public QWidget
00049         {
00050         Q_OBJECT
00051         public:
00062                 QVIntParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00063 
00064         signals:
00067                 void valueChanged(int);
00068 
00069         private slots:
00070                 void setValue();
00071 
00072         private:
00073                 int value,min,max;
00074                 QVPropertyContainer *orig_holder,*gui_holder;
00075                 QString property;
00076                 QLineEdit *lineedit;
00077                 QSlider *slider;
00078         };
00079 
00087 class QVDoubleParamWidget: public QWidget
00088         {
00089         Q_OBJECT
00090         public:
00101                 QVDoubleParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00102 
00103         signals:
00106                 void valueChanged(double);
00107 
00108         private slots:
00109                 void setValue();
00110 
00111         private:
00112                 double value,min,max;
00113                 QVPropertyContainer *orig_holder,*gui_holder;
00114                 QString property;
00115                 QLineEdit *lineedit;
00116                 QwtSlider *qwtslider;
00117         };
00118 
00119 
00127 class QVBoolParamWidget: public QWidget
00128         {
00129                 Q_OBJECT
00130         public: 
00141                 QVBoolParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00142         
00143         signals:
00146                 void valueChanged(bool);
00147 
00148         private slots:
00149                 void setValue();
00150         
00151         private:
00152                 bool value;
00153                 QVPropertyContainer *orig_holder,*gui_holder;
00154                 QString property;
00155                 QCheckBox *checkbox;
00156         };
00157 
00165 class QVWorkerTriggerWidget: public QWidget
00166         {
00167         Q_OBJECT
00168 
00169         public:
00174                 QVWorkerTriggerWidget(QVWorker *worker, const QString triggername, QWidget *parent = 0);
00175 
00176         signals:
00179                 void valueChanged(QString);
00180 
00181         private slots:
00182                 void setValue();
00183 
00184         private:
00185                 QVWorker *worker;
00186                 QString triggername;
00187                 QToolButton *toolbutton;
00188         };
00189 
00191 #endif
00192 

Generated on Thu Mar 13 19:18:16 2008 for QVision by  doxygen 1.5.3