00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _STELMAINGRAPHICSVIEW_HPP_
00021 #define _STELMAINGRAPHICSVIEW_HPP_
00022
00023 #include <QGraphicsView>
00024
00025 class QGLWidget;
00026 class QResizeEvent;
00027
00031 class StelMainGraphicsView : public QGraphicsView
00032 {
00033 Q_OBJECT
00034 public:
00035 StelMainGraphicsView(QWidget* parent, int argc, char** argv);
00036 virtual ~StelMainGraphicsView();
00037
00039 void init();
00040
00042 static StelMainGraphicsView& getInstance() {Q_ASSERT(singleton); return *singleton;}
00043
00046 QGLWidget* getOpenGLWin() {return glWidget;}
00047
00049 void deinitGL();
00050
00054 class QProgressBar* addProgressBar();
00055
00057 void activateKeyActions(bool b);
00058
00059 public slots:
00060
00062
00069 void saveScreenShot(const QString& filePrefix="stellarium-", const QString& saveDir="");
00070
00072 bool getFlagInvertScreenShotColors() const {return flagInvertScreenShotColors;}
00074 void setFlagInvertScreenShotColors(bool b) {flagInvertScreenShotColors=b;}
00075
00076 protected:
00077 virtual void resizeEvent(QResizeEvent* event);
00078
00079 signals:
00083 void screenshotRequested(void);
00084
00085 private slots:
00086
00087 void doScreenshot(void);
00088
00089 private:
00091 static StelMainGraphicsView* singleton;
00092
00094 QGLWidget* glWidget;
00095 class StelApp* stelApp;
00096
00097 bool wasDeinit;
00098
00099 bool flagInvertScreenShotColors;
00100
00101 QString screenShotPrefix;
00102 QString screenShotDir;
00103
00104 };
00105
00106
00107 #endif // _STELMAINGRAPHICSVIEW_HPP_