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 <QVProcessingBlock>
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 QVSIntParamWidget: public QWidget
00052 {
00053 Q_OBJECT
00054 public:
00065 QVSIntParamWidget(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 QVUIntParamWidget: public QWidget
00091 {
00092 Q_OBJECT
00093 public:
00104 QVUIntParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00105
00106 signals:
00109 void valueChanged(unsigned int);
00110
00111 private slots:
00112 void setValue();
00113
00114 private:
00115 int value,min,max;
00116 QVPropertyContainer *orig_holder,*gui_holder;
00117 QString property, info;
00118 QLineEdit *lineedit;
00119 QSlider *slider;
00120 };
00121
00129 class QVSCharParamWidget: public QWidget
00130 {
00131 Q_OBJECT
00132 public:
00143 QVSCharParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00144
00145 signals:
00148 void valueChanged(char);
00149
00150 private slots:
00151 void setValue();
00152
00153 private:
00154 int value,min,max;
00155 QVPropertyContainer *orig_holder,*gui_holder;
00156 QString property, info;
00157 QLineEdit *lineedit;
00158 QSlider *slider;
00159 };
00160
00168 class QVUCharParamWidget: public QWidget
00169 {
00170 Q_OBJECT
00171 public:
00182 QVUCharParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00183
00184 signals:
00187 void valueChanged(unsigned char);
00188
00189 private slots:
00190 void setValue();
00191
00192 private:
00193 int value,min,max;
00194 QVPropertyContainer *orig_holder,*gui_holder;
00195 QString property, info;
00196 QLineEdit *lineedit;
00197 QSlider *slider;
00198 };
00206 class QVDoubleParamWidget: public QWidget
00207 {
00208 Q_OBJECT
00209 public:
00220 QVDoubleParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00221
00222 signals:
00225 void valueChanged(double);
00226
00227 private slots:
00228 void setValue();
00229
00230 private:
00231 double value,min,max;
00232 QVPropertyContainer *orig_holder,*gui_holder;
00233 QString property, info;
00234 QLineEdit *lineedit;
00235 QwtSlider *qwtslider;
00236 };
00237
00245 class QVFloatParamWidget: public QWidget
00246 {
00247 Q_OBJECT
00248 public:
00259 QVFloatParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00260
00261 signals:
00264 void valueChanged(float);
00265
00266 private slots:
00267 void setValue();
00268
00269 private:
00270 double value,min,max;
00271 QVPropertyContainer *orig_holder,*gui_holder;
00272 QString property, info;
00273 QLineEdit *lineedit;
00274 QwtSlider *qwtslider;
00275 };
00276
00277
00285 class QVBoolParamWidget: public QWidget
00286 {
00287 Q_OBJECT
00288 public:
00299 QVBoolParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00300
00301 signals:
00304 void valueChanged(bool);
00305
00306 private slots:
00307 void setValue();
00308
00309 private:
00310 bool value;
00311 QVPropertyContainer *orig_holder,*gui_holder;
00312 QString property, info;
00313 QCheckBox *checkbox;
00314 };
00315
00323 class QVStringParamWidget: public QWidget
00324 {
00325 Q_OBJECT
00326 public:
00337 QVStringParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00338
00339 signals:
00342 void valueChanged(QString);
00343
00344 private slots:
00345 void setValue();
00346
00347 private:
00348 QString value;
00349 QVPropertyContainer *orig_holder,*gui_holder;
00350 QString property, info;
00351 QLineEdit *lineedit;
00352 };
00353
00361 class QVStringListParamWidget: public QWidget
00362 {
00363 Q_OBJECT
00364 public:
00375 QVStringListParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00376
00377 signals:
00380 void valueChanged(QVIndexedStringList);
00381
00382 private slots:
00383 void setValue();
00384
00385 private:
00386 QVIndexedStringList value;
00387 QVPropertyContainer *orig_holder,*gui_holder;
00388 QString property, info;
00389 QComboBox *combobox;
00390 };
00391
00392
00400 class QVProcessingBlockTriggerWidget: public QWidget
00401 {
00402 Q_OBJECT
00403
00404 public:
00409 QVProcessingBlockTriggerWidget(QVProcessingBlock *block, const QString triggername, QWidget *parent = 0);
00410
00411 signals:
00414 void valueChanged(QString);
00415
00416 private slots:
00417 void setValue();
00418
00419 private:
00420 QVProcessingBlock *block;
00421 QString triggername;
00422 QToolButton *toolbutton;
00423 };
00424
00425 #include <QColor>
00426 class QVColorParamWidget: public QWidget
00427 {
00428 Q_OBJECT
00429 public:
00440 QVColorParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00441
00442 signals:
00445 void valueChanged(QColor);
00446
00447 private slots:
00448 void setValue();
00449
00450 private:
00451 QColor value;
00452 QVPropertyContainer *orig_holder,*gui_holder;
00453 QString property, info;
00454 QLineEdit *lineeditR, *lineeditG, *lineeditB;
00455 QSlider *sliderR, *sliderG, *sliderB;
00456 };
00457
00458 #include <QSize>
00459 class QVSizeParamWidget: public QWidget
00460 {
00461 Q_OBJECT
00462 public:
00463 QVSizeParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00464
00465 signals:
00466 void valueChanged(QSize);
00467
00468 private slots:
00469 void setValue();
00470
00471 private:
00472 QSize value;
00473 QVPropertyContainer *orig_holder,*gui_holder;
00474 QString property;
00475 QLineEdit *lineWidth, *lineHeight;
00476 };
00477
00478 #include <QPoint>
00479 class QVPointParamWidget: public QWidget
00480 {
00481 Q_OBJECT
00482 public:
00483 QVPointParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00484
00485 signals:
00486 void valueChanged(QPoint);
00487
00488 private slots:
00489 void setValue();
00490
00491 private:
00492 QPoint value;
00493 QVPropertyContainer *orig_holder,*gui_holder;
00494 QString property;
00495 QLineEdit *lineX, *lineY;
00496 };
00497
00498 #ifdef QVIPP
00499 #include <ipp.h>
00500 class QVIppiMaskSizeParamWidget: public QWidget
00501 {
00502 Q_OBJECT
00503 public:
00504 QVIppiMaskSizeParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00505
00506 signals:
00507 void valueChanged(IppiMaskSize);
00508
00509 private slots:
00510 void setValue();
00511
00512 private:
00513 IppiMaskSize value;
00514 QVPropertyContainer *orig_holder,*gui_holder;
00515 QString property;
00516 QComboBox *combobox;
00517 };
00518
00519 class QVIppCmpOpParamWidget: public QWidget
00520 {
00521 Q_OBJECT
00522 public:
00523
00524 QVIppCmpOpParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00525
00526 signals:
00527 void valueChanged(IppCmpOp);
00528
00529 private slots:
00530 void setValue();
00531
00532 private:
00533 IppCmpOp value;
00534 QVPropertyContainer *orig_holder,*gui_holder;
00535 QString property;
00536 QComboBox *combobox;
00537 };
00538
00539
00540 class QVIppRoundModeParamWidget: public QWidget
00541 {
00542 Q_OBJECT
00543 public:
00544 QVIppRoundModeParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00545 signals:
00546 void valueChanged(IppRoundMode);
00547
00548 private slots:
00549 void setValue();
00550
00551 private:
00552 IppRoundMode value;
00553 QVPropertyContainer *orig_holder,*gui_holder;
00554 QString property;
00555 QComboBox *combobox;
00556 };
00557 #endif
00558
00560
00568 class QVOutputIntParamWidget: public QWidget
00569 {
00570 Q_OBJECT
00571 public:
00582 QVOutputIntParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00583
00584 private slots:
00585 void update();
00586
00587 private:
00588 int value;
00589 QVPropertyContainer *orig_holder,*gui_holder;
00590 QString property, info;
00591 QLabel *label;
00592 };
00593
00601 class QVOutputDoubleParamWidget: public QWidget
00602 {
00603 Q_OBJECT
00604 public:
00615 QVOutputDoubleParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00616
00617 private slots:
00618 void update();
00619
00620 private:
00621 double value;
00622 QVPropertyContainer *orig_holder,*gui_holder;
00623 QString property, info;
00624 QLabel *label;
00625 };
00626
00634 class QVOutputBoolParamWidget: public QWidget
00635 {
00636 Q_OBJECT
00637 public:
00648 QVOutputBoolParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00649
00650 private slots:
00651 void update();
00652
00653 private:
00654 bool value;
00655 QVPropertyContainer *orig_holder,*gui_holder;
00656 QString property, info;
00657 QLabel *label;
00658 };
00659
00667 class QVOutputStringParamWidget: public QWidget
00668 {
00669 Q_OBJECT
00670 public:
00681 QVOutputStringParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00682
00683 private slots:
00684 void update();
00685
00686 private:
00687 QString value;
00688 QVPropertyContainer *orig_holder,*gui_holder;
00689 QString property, info;
00690 QLabel *label;
00691 };
00692
00700 class QVOutputStringListParamWidget: public QWidget
00701 {
00702 Q_OBJECT
00703 public:
00714 QVOutputStringListParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00715
00716 private slots:
00717 void update();
00718
00719 private:
00720 QVIndexedStringList value;
00721 QVPropertyContainer *orig_holder,*gui_holder;
00722 QString property, info;
00723 QLabel *label;
00724 };
00725
00733 class QVOutputColorParamWidget: public QWidget
00734 {
00735 Q_OBJECT
00736 public:
00747 QVOutputColorParamWidget(QVPropertyContainer *orig_holder, QVPropertyContainer *gui_holder, const QString property, QWidget *parent = 0);
00748
00749 private slots:
00750 void update();
00751
00752 private:
00753 QColor value;
00754 QVPropertyContainer *orig_holder,*gui_holder;
00755 QString property, info;
00756 QLabel *label;
00757 };
00758
00759 #endif
00760 #endif
00761