Fonctionnalités d'affichage de bas niveau. More...
#include "cogitant/display/output.h"
Public Member Functions | |
Output (Context const *ctx) | |
Constructeur. More... | |
virtual | ~Output () |
Destructeur. More... | |
virtual void | drawFigures (std::vector< Figure > const &vf) |
Dessin de toutes les figures. More... | |
virtual void | drawFigure (std::vector< Figure > const &vf, iFigure i) |
Dessin d'une figure. More... | |
virtual void | drawSimpleFigure (Rect const &r, Brush const &brush, Pen const &pen, Figure::Style fs)=0 |
Dessin d'un rectangle, d'une ellipse ou d'un rectangle arrondi. More... | |
virtual void | drawSimpleLine (Point const &p1, Point const &p2, Pen const &pen)=0 |
Dessin d'une ligne simple. More... | |
virtual void | drawSimpleText (Rect const &r, std::string const &text, Font const &font, Position const &position)=0 |
Dessin d'un texte. More... | |
virtual void | drawText (Rect const &r, Brush const &brush, Pen const &pen, std::string const &text, Font const &font, Position const &position, Figure::Style fs) |
Dessin d'un texte éventuellement dans un rectangle, ellipse ou rectangle arrondi. More... | |
virtual void | drawLine (Point const &p1, Point const &p2, Pen const &pen) |
Dessin d'une ligne, comportant éventuellement des flèches. More... | |
virtual void | begin () |
Début du dessin. More... | |
virtual void | end () |
Fin du dessin. More... | |
Protected Member Functions | |
virtual unsigned int | drawOrder () const |
Le dessin doit il être fait dans l'ordre des parents/fils, des profondeurs, ou dans un ordre quelconque. More... | |
Protected Attributes | |
Context const * | m_context |
Contexte d'affichage utilisé pour la sortie. | |
Fonctionnalités d'affichage de bas niveau.
Cette classe abstraite définit toutes les méthodes offrant des routines d'affichage de bas niveau. Afin de permettre une sortie selon un format donné (à l'écran ou dans un fichier), il est nécessaire de dériver à partir de cette classe pour définir une classe concrète (dont une instance sera passée à cogitantdisplay::Context::drawFigures()) dans laquelle les méthodes correspondant aux primitives d'affichage auront été définies en fonction de l'API d'affichage utilisée.
cogitantdisplay::Output::Output | ( | Context const * | ctx | ) |
Constructeur.
|
virtual |
Destructeur.
|
virtual |
Début du dessin.
Cette méthode est appelée avant le lancement des opérations de dessin. Par défaut, elle ne fait rien, mais il est possible de la redéfinir dans les sous-classes pour effectuer des traitements particuliers selon le format de sortie.
Reimplemented in cogitantdisplay::Output_Wx, and cogitantdisplay::OutputFig.
|
virtual |
Dessin d'une figure.
vf | dessin dont la figure est issue. |
i | identificateur de la figure dans le dessin. |
Reimplemented in cogitantdisplay::OutputFig.
|
virtual |
Dessin de toutes les figures.
Les figures sont dessinées par un simple parcours du tableau de figures (si drawOrder() retourne false) ou elles sont dessinées par un parcours en largeur donné par les relations de parenté entre figures.
vf | les figures à dessiner. |
|
virtual |
Dessin d'une ligne, comportant éventuellement des flèches.
L'implantation par défaut de cette méthode appelle drawSimpleLine pour dessiner la ligne ainsi que les bouts de flèches, mais dans le cas où l'API utilisée par la sous classe d'Output permet de dessiner des flèches par un simple appel, il est préférable de redéfinir cette méthode pour faire une appel à la fonction correspondante de l'API graphique.
Reimplemented in cogitantdisplay::OutputFig.
|
protectedvirtual |
Le dessin doit il être fait dans l'ordre des parents/fils, des profondeurs, ou dans un ordre quelconque.
Par défaut retourne 1 (parcours selon les profondeurs).
|
pure virtual |
Dessin d'un rectangle, d'une ellipse ou d'un rectangle arrondi.
Implemented in cogitantdisplay::Output_Java, cogitantdisplay::Output_Wx, and cogitantdisplay::OutputFig.
|
pure virtual |
Dessin d'une ligne simple.
Implemented in cogitantdisplay::Output_Java, cogitantdisplay::Output_Wx, and cogitantdisplay::OutputFig.
|
pure virtual |
Dessin d'un texte.
Implemented in cogitantdisplay::Output_Java, cogitantdisplay::Output_Wx, and cogitantdisplay::OutputFig.
|
virtual |
Dessin d'un texte éventuellement dans un rectangle, ellipse ou rectangle arrondi.
L'implémentation par défaut dessine la figure (drawSimpleFigure()) puis le texte (drawSimpleText()).
|
virtual |
Fin du dessin.
Cette méthode est appelée après que les opérations de dessin aient été exécutées. Par défaut, elle ne fait rien, mais il est possible de la redéfinir dans les sous-classes pour effectuer des traitements particuliers selon le format de sortie.
Reimplemented in cogitantdisplay::Output_Wx, and cogitantdisplay::OutputFig.