00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef EXPORTTAB_H
00021 #define EXPORTTAB_H
00022
00023 #include <qframe.h>
00024 #include <qpushbutton.h>
00025 #include <qgroupbox.h>
00026 #include <qtable.h>
00027 #include <qlineedit.h>
00028 #include <qradiobutton.h>
00029 #include <qlabel.h>
00030 #include <vector>
00031
00036 class ExportTab : public QFrame
00037 {
00038 Q_OBJECT
00039 public:
00040
00045 ExportTab(QWidget *parent = 0);
00046
00050 void apply();
00051
00055 void initialize();
00056
00057 private slots:
00058 void addEncoder();
00059 void removeEncoder();
00060 void valueChanged(int row, int column);
00061 void activeRowChanged(int row);
00062 void editSettings();
00063 void closeSettings();
00064 void updateStartString(const QString &txt);
00065 void updateStopString(const QString &txt);
00066 void setDefaultOutput(const QString &txt);
00067 void setYesButtonOn();
00068 void setNoButtonOn();
00069 void browseFiles();
00070
00071 private:
00072 std::vector<QString>startEncoderStrings;
00073 std::vector<QString>stopEncoderStrings;
00074 std::vector<QString>outputFiles;
00075
00076 QPushButton *addButton;
00077 QPushButton *removeButton;
00078 QPushButton *editButton;
00079 QPushButton *browseButton;
00080 QPushButton *closeButton;
00081 QRadioButton *yesButton;
00082 QRadioButton *noButton;
00083 QGroupBox *encoderPrefs;
00084 QTable *encoderTable;
00085 QLineEdit *startEncoder;
00086 QLineEdit *stopEncoder;
00087 QLabel *startEncoderLabel;
00088 QLabel *stopEncoderLabel;
00089 QLineEdit *defaultOutput;
00090 QLabel *defaultOutputLabel;
00091 QGridLayout *mainGrid;
00092 QGridLayout *settingsGrid;
00093 QSpacerItem *space3;
00094 QSpacerItem *rightSpace;
00095 QSpacerItem *leftSpace;
00096 QLabel *askForOutput;
00097 QLabel *infoText;
00098
00099 int selectedEncoder;
00100 int numEncoders;
00101
00102 void makeGUI();
00103 };
00104
00105 #endif