00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
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 <QVWorker>
00034 #include <QVIndexedStringList>
00035
00036 class QLineEdit;
00037 class QSlider;
00038 class QwtSlider;
00039 class QCheckBox;
00040 class QLabel;
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, info;
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, info;
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, info;
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, info;
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, info;
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 #include <QColor>
00271 class QVColorParamWidget: public QWidget
00272 {
00273 Q_OBJECT
00274 public:
00285 QVColorParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00286
00287 signals:
00290 void valueChanged(QColor);
00291
00292 private slots:
00293 void setValue();
00294
00295 private:
00296 QColor value;
00297 QVPropertyContainer *orig_holder,*gui_holder;
00298 QString property, info;
00299 QLineEdit *lineeditR, *lineeditG, *lineeditB;
00300 QSlider *sliderR, *sliderG, *sliderB;
00301 };
00302
00303 #include <QSize>
00304 class QVSizeParamWidget: public QWidget
00305 {
00306 Q_OBJECT
00307 public:
00308 QVSizeParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00309
00310 signals:
00311 void valueChanged(QSize);
00312
00313 private slots:
00314 void setValue();
00315
00316 private:
00317 QSize value;
00318
00319 QVPropertyContainer *orig_holder,*gui_holder;
00320 QString property;
00321 QLineEdit *lineWidth, *lineHeight;
00322
00323 };
00324
00325 #include <QPoint>
00326 class QVPointParamWidget: public QWidget
00327 {
00328 Q_OBJECT
00329 public:
00330 QVPointParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00331
00332 signals:
00333 void valueChanged(QPoint);
00334
00335 private slots:
00336 void setValue();
00337
00338 private:
00339 QPoint value;
00340
00341 QVPropertyContainer *orig_holder,*gui_holder;
00342 QString property;
00343 QLineEdit *lineX, *lineY;
00344
00345 };
00346
00347 #include <ipp.h>
00348 class QVIppiMaskSizeParamWidget: public QWidget
00349 {
00350 Q_OBJECT
00351 public:
00362 QVIppiMaskSizeParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00363
00364 signals:
00367 void valueChanged(IppiMaskSize);
00368
00369 private slots:
00370 void setValue();
00371
00372 private:
00373 IppiMaskSize value;
00374 QVPropertyContainer *orig_holder,*gui_holder;
00375 QString property;
00376 QComboBox *combobox;
00377 };
00378
00379 class QVIppCmpOpParamWidget: public QWidget
00380 {
00381 Q_OBJECT
00382 public:
00393 QVIppCmpOpParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00394
00395 signals:
00398 void valueChanged(IppCmpOp);
00399
00400 private slots:
00401 void setValue();
00402
00403 private:
00404 IppCmpOp value;
00405 QVPropertyContainer *orig_holder,*gui_holder;
00406 QString property;
00407 QComboBox *combobox;
00408 };
00409
00410
00411 class QVIppRoundModeParamWidget: public QWidget
00412 {
00413 Q_OBJECT
00414 public:
00425 QVIppRoundModeParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00426
00427 signals:
00430 void valueChanged(IppRoundMode);
00431
00432 private slots:
00433 void setValue();
00434
00435 private:
00436 IppRoundMode value;
00437 QVPropertyContainer *orig_holder,*gui_holder;
00438 QString property;
00439 QComboBox *combobox;
00440 };
00441
00443
00444
00445
00453 class QVOutputIntParamWidget: public QWidget
00454 {
00455 Q_OBJECT
00456 public:
00467 QVOutputIntParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00468
00469 private slots:
00470 void update();
00471
00472 private:
00473 int value;
00474 QVPropertyContainer *orig_holder,*gui_holder;
00475 QString property, info;
00476 QLabel *label;
00477 };
00478
00486 class QVOutputDoubleParamWidget: public QWidget
00487 {
00488 Q_OBJECT
00489 public:
00500 QVOutputDoubleParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00501
00502 private slots:
00503 void update();
00504
00505 private:
00506 double value;
00507 QVPropertyContainer *orig_holder,*gui_holder;
00508 QString property, info;
00509 QLabel *label;
00510 };
00511
00519 class QVOutputBoolParamWidget: public QWidget
00520 {
00521 Q_OBJECT
00522 public:
00533 QVOutputBoolParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00534
00535 private slots:
00536 void update();
00537
00538 private:
00539 bool value;
00540 QVPropertyContainer *orig_holder,*gui_holder;
00541 QString property, info;
00542 QLabel *label;
00543 };
00544
00552 class QVOutputStringParamWidget: public QWidget
00553 {
00554 Q_OBJECT
00555 public:
00566 QVOutputStringParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00567
00568 private slots:
00569 void update();
00570
00571 private:
00572 QString value;
00573 QVPropertyContainer *orig_holder,*gui_holder;
00574 QString property, info;
00575 QLabel *label;
00576 };
00577
00585 class QVOutputStringListParamWidget: public QWidget
00586 {
00587 Q_OBJECT
00588 public:
00599 QVOutputStringListParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00600
00601 private slots:
00602 void update();
00603
00604 private:
00605 QVIndexedStringList value;
00606 QVPropertyContainer *orig_holder,*gui_holder;
00607 QString property, info;
00608 QLabel *label;
00609 };
00610
00618 class QVOutputColorParamWidget: public QWidget
00619 {
00620 Q_OBJECT
00621 public:
00632 QVOutputColorParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00633
00634 private slots:
00635 void update();
00636
00637 private:
00638 QColor value;
00639 QVPropertyContainer *orig_holder,*gui_holder;
00640 QString property, info;
00641 QLabel *label;
00642 };
00643
00644 #endif
00645 #endif
00646