00001
00002 #include <qwt_knob.h>
00003 #include <qwt_slider.h>
00004 #include <qgroupbox.h>
00005 #include <qlcdnumber.h>
00006
00007 class QToolButton;
00008 class QRadioButton;
00009 class QLabel;
00010 class QPushButton;
00011 class QCheckBox;
00012 class QSpinBox;
00013 class QComboBox;
00014
00015 void attention(QString message);
00016
00017 class Channel : public QGroupBox
00018 {
00019 Q_OBJECT
00020
00021 public:
00022 Channel(QString title, int x, int y, QWidget* parent=0, const char *name=0);
00023 ~Channel();
00024 void On();
00025 void Off();
00026 bool activeChannel();
00027 void setPowerEnable(bool enabled);
00028
00029 public slots:
00030 void switchPower();
00031
00032 signals:
00033 void AcPressed();
00034 void DcPressed();
00035 void GndPressed();
00036 void valueSliderChanged(double value);
00037 void valueKnobChanged(double value);
00038 void activated();
00039 void deactivated();
00040
00041 private:
00042 QToolButton *powerCh;
00043 QwtKnob *pomCh;
00044 QRadioButton *radio_Ac,*radio_Dc,*radio_Gnd;
00045 QwtSlider *sld;
00046 QLabel *text_pos,*text_volt;
00047 void loadDefaults();
00048
00049 private slots:
00050 void changeRadio();
00051 void pomChChanged(double);
00052 void sldChanged(double);
00053
00054 };
00055
00056 class Trigger : public QGroupBox
00057 {
00058 Q_OBJECT
00059
00060 public:
00061 Trigger(QString title, int x, int y, QWidget* parent=0, const char *name=0);
00062 ~Trigger() {}
00063 void On();
00064 void Off();
00065 void extTrig(bool present);
00066 void setCh1Trig(bool present);
00067 void setCh2Trig(bool present);
00068 void loadDefaults();
00069
00070 public slots:
00071 void switchPower();
00072
00073 private:
00074 QToolButton *powerTr;
00075 QwtSlider *sld;
00076 QCheckBox *cb_repeat,*cb_single,*cb_auto,*cb_pre;
00077 QPushButton *button_chn,*button_front;
00078 QLabel *label1,*label2,*label3;
00079 QString t1,t2,t3;
00080 QSpinBox *sb1;
00081 QComboBox *cb1;
00082
00083 bool triggerExtPresent, frontUp, ch1Trig, ch2Trig;
00084
00085 private slots:
00086 void changeChannel();
00087 void changeFront();
00088 void funcTrig();
00089 void preButtonChecked();
00090 void autoButtonChecked();
00091 void sldChanged(double);
00092 void sb1Changed(int);
00093 void cb1Changed(const QString&);
00094 void enableTrigger(bool enable);
00095 };
00096
00097 class DisplayLCD : public QLCDNumber
00098 {
00099
00100 public:
00101 DisplayLCD(int x, int y, QWidget *parent=0, const char* name=0);
00102 ~DisplayLCD() {}
00103
00104 };