00001
00002
00003 #ifndef DATADIALOG_H
00004 #define DATADIALOG_H
00005
00006 #include <qtoolbutton.h>
00007 #include <qcheckbox.h>
00008 #include "Dialog.h"
00009 #include "GraphListDialog.h"
00010 #include "RichTextWidget.h"
00011 #include "FilterNETCDF.h"
00012 #include "FilterCDF.h"
00013 #include "FilterAUDIOFILE.h"
00014
00016 class DataDialog: public Dialog
00017 {
00018 Q_OBJECT
00019 public:
00020 DataDialog(MainWin *mw, const char *name,class ListDialog *l,int item,PType newtype);
00021 public slots:
00022 void applyStyle();
00023 void setDataFile(QString name=0) {
00024 if(name!=0) filele->setText(name);
00025 updateLabel();
00026 }
00027 void setLabel(QString name=0) { setDataFile(name); }
00028 void updateLabel() { rtw->getLabel()->setTitle(filele->text()); rtw->update(); }
00029 void setReadAs(int i) { cbi->setCurrentItem(i); }
00030 void setX(QString i) { readxle->setText(i); }
00031 void setX(int i) { readxle->setText(QString::number(i)); }
00032 void setY(QString i) { readyle->setText(i); }
00033 void setY(int i) { readyle->setText(QString::number(i)); }
00034 void setZ(QString i) { readzle->setText(i); }
00035 void setZ(int i) { readzle->setText(QString::number(i)); }
00036 void setT(QString i) { readtle->setText(i); }
00037 void setT(int i) { readtle->setText(QString::number(i)); }
00038 void setInterpretX(int i) { interpretxcb->setCurrentItem(i); }
00039 void setInterpretY(int i) { interpretycb->setCurrentItem(i); }
00040 void setInterpretZ(int i) { interpretzcb->setCurrentItem(i); }
00041 void setInterpretT(int i) { interprettcb->setCurrentItem(i); }
00042 int Apply() { return apply_clicked(); }
00043 private slots :
00044 void checkData();
00045 void updateRead();
00046 int addData();
00047 int addDataIMAGEXY(QImage image, QString filename);
00048 int addDataIMAGEXYZ(QImage image, QString filename);
00049 int addDataIMAGEMATRIX(QImage image, QString filename);
00050 int addDataIMAGEIMAGE(QImage image, QPixmap pm, QString filename);
00051 int addDataXY(QIODevice *file, QTextStream *t, QDataStream *d, QString filename,int startRow,int endRow);
00052 int addDataXYZ(QIODevice *file, QTextStream *t, QDataStream *d, QString filename,int startRow,int endRow);
00053 int addDataXYZT(QIODevice *file, QTextStream *t, QDataStream *d, QString filename,int startRow,int endRow);
00054 int addDataMATRIX(QIODevice *file, QTextStream *t, QDataStream *d, QString filename,int startRow,int endRow);
00055 void ok_clicked() { if (!apply_clicked()) accept(); }
00056 int apply_clicked();
00057 void saveSettings();
00058 private:
00059 void findPlot();
00060 double getValue(FilterAUDIOFILE auf,int var, int i,double *data, int startRow);
00061 PType type;
00062 QLabel *readx, *ready, *readz, *readt;
00063 KLineEdit *readxle, *readyle, *readzle, *readtle;
00064 KComboBox *interpretxcb, *interpretycb, *interpretzcb, *interprettcb;
00065 KComboBox *cbi;
00066 QCheckBox *reread;
00067 ListDialog *l;
00068 int item;
00069 Graph *graph;
00070 RichTextWidget *rtw;
00071 };
00072 #endif //DATADIALOG_H