00001 #ifndef MAINWIINDOW_H
00002 #define MAINWIINDOW_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include <vector>
00013 #include <QComboBox>
00014 #include <QString>
00015 #include <QLabel>
00016 #include <QSize>
00017 #include <QResizeEvent>
00018 #include "ui_mainwindow.h"
00019 #include "skyviewer.h"
00020 #include "healpixmap.h"
00021 #include "selectedpixelmodel.h"
00022
00023 class ControlDialog;
00024 class RangeControl;
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 class mainWindow : public QMainWindow, private Ui::MainWindow
00036 {
00037 Q_OBJECT
00038 public slots:
00039 virtual void undefined ();
00040 virtual void fileLoad ();
00041 virtual void fileNew ();
00042 virtual void fileReload ();
00043 virtual void fileSnapshot ();
00044 virtual void fileClose ();
00045 virtual void fileExit ();
00046
00047 virtual void proj3Dsphere ();
00048 virtual void projMollweide ();
00049
00050 virtual void mapTemperature ();
00051 virtual void mapQPolarization ();
00052 virtual void mapUPolarization ();
00053 virtual void mapPPolarization ();
00054 virtual void mapNumObs ();
00055
00056 virtual void mapPolVectM ();
00057 virtual void mapPolVectTB ();
00058
00059 virtual void reTexture();
00060 virtual void newRigging(void);
00061 virtual void newField();
00062 virtual void newPolVect();
00063
00064 virtual void unselectPixels(std::vector<int>);
00065 virtual void recenterOnPixel(int pixnum);
00066
00067 private:
00068 HealpixMap *map;
00069 SkyTexture *texture;
00070 Rigging *rigging;
00071 Rigging *whiterig;
00072 Rigging *blackrig;
00073 PolarArgLineSet *polarsphere;
00074
00075 bool viewmoll;
00076
00077 SkyViewer *viewer;
00078 ControlDialog *ctl;
00079 RangeControl *rngctl;
00080
00081 QSize delta;
00082
00083 QLabel *filelabel;
00084 QString filename;
00085 QLabel *projlabel;
00086 QLabel *maplabel;
00087
00088 void setFieldEnables();
00089
00090 void fileFileInfo (bool b);
00091
00092 protected:
00093 virtual void resizeEvent(QResizeEvent *event);
00094 public:
00095 mainWindow(QWidget *parent = 0);
00096 virtual ~mainWindow (void);
00097 void readFile (const char *file);
00098 void readFile (const QString file);
00099 void readFile (void);
00100
00101 bool currentMollweide (void) const { return viewmoll; }
00102
00103 int selectPixel (int pix);
00104 int selectPixel (double phi, double lambda);
00105 void highlightPixels (double hlite);
00106 };
00107 #endif