diff options
Diffstat (limited to 'src/gui/Stage.h')
-rw-r--r-- | src/gui/Stage.h | 40 |
1 files changed, 33 insertions, 7 deletions
diff --git a/src/gui/Stage.h b/src/gui/Stage.h index cb46b7d..b0938af 100644 --- a/src/gui/Stage.h +++ b/src/gui/Stage.h @@ -22,6 +22,7 @@ namespace vhc { +/** Une scene gere la representation graphique d'un accelerateur. */ class Stage: public QGLWidget { Q_OBJECT @@ -31,43 +32,68 @@ public: Stage(QWidget* parent = NULL); virtual ~Stage(); + /** Retourne la camera de cette scene. */ Camera& getCamera(); + /** Retourne le mode de representation. */ void setDisplayMode(util::DisplayMode value); + + /** Affecte le mode de representation. */ util::DisplayMode getDisplayMode() const; + /** Retourne l'etat de la simulation. */ bool isRunning() const; + + /** Affecte l'etat de simulation. */ void setRunning(bool value); - ElementRenderer& getElementRenderer(); - BeamRenderer& getBeamRenderer(); + ElementRenderer* getElementRenderer() const; + void setElementRenderer(ElementRenderer* value); + BeamRenderer* getBeamRenderer() const; + void setBeamRenderer(BeamRenderer* value); - //TODO !!! temporary - Accelerator* accelerator; + + /** Retourne l'accelerateur de cette scene. */ + Accelerator* getAccelerator() const; + + /** Affecte l'accelerateur de cette scene. */ + void setAccelerator(Accelerator* accelerator); + + /** Retourne le pas de temps utilise pour simuler l'accelerateur de cette scene. */ + double getStep() const; + + /** Affecte le pas de temps utilise pour simuler l'accelerateur de cette scene. */ + void setStep(double value); protected: + /** Ecrit du texte sur l'ecran. */ void displayText(QString text[], int size); void initializeGL(); void resizeGL (int width, int height); void paintGL(); - //void mousePressEvent (QMouseEvent* event); + void mousePressEvent (QMouseEvent* event); //void mouseReleaseEvent (QMouseEvent* event); void keyPressEvent (QKeyEvent* event); void keyReleaseEvent (QKeyEvent* event); void mouseMoveEvent(QMouseEvent* event); private: + + Accelerator* accelerator; + //io KeyManager keyManager; //graphics + bool captured; + Camera camera; - ElementRenderer elementRenderer; - BeamRenderer beamRenderer; + ElementRenderer* elementRenderer; + BeamRenderer* beamRenderer; QPoint center; util::DisplayMode displayMode; |