Classe offrant l'accés aux méthodes de dessin. More...
#include "cogitant/display/operation.h"
Public Member Functions | |
DrawHandler () | |
Constructeur par défaut. More... | |
void | addOperation (OperationDraw *ope) |
Ajout d'une opération aux opérations gérées. More... | |
void | deleteOperation (OperationDraw *ope) |
Suppression d'une opération. More... | |
OperationDraw * | findOperation (Context const &context, Drawing const &drawing, Drawing::Element const *el=NULL) const |
Accès à l'opération pouvant gérer l'élément. More... | |
iFigure | draw (Context &context, Drawing const &drawing, Drawing::Element const *el=NULL, bool recurs=true, iFigure parent=IFIGURE_NULL) const |
Dessin. More... | |
iFigure | draw (Context &context, Drawing const &drawing, Clipping const &cl, Drawing::Element const *el=NULL, iFigure parent=IFIGURE_NULL) const |
Dessin des seuls éléments ayant une intersection non vide avec un clipping donné. More... | |
void | addClipping (Context const &context, Drawing const &drawing, Drawing::Element const &el, bool linked, Clipping &clipping) const |
Ajout au clipping. More... | |
bool | inClipping (Context const &context, Drawing const &drawing, Drawing::Element const &el, Clipping const &clipping) const |
Intersection avec un clipping. More... | |
bool | isUnder (Context const &context, Drawing const &drawing, Drawing::Element const &el, Point const &point) const |
L'élément contient-il le point ? More... | |
bool | under (Context const &context, Drawing const &drawing, Drawing::Element &el, Point const &point) const |
Y a t'il un élément au point donné. More... | |
virtual Point | pos (Context const &context, Drawing const &drawing, Drawing::Element const &el, bool absolute) const |
Accès aux coordonnées d'un objet. More... | |
virtual Point | posClient (Context const &context, Drawing const &drawing, Drawing::Element const &el, bool absolute) const |
Accès aux coordonnées de l'origine de la zone client d'un objet. More... | |
virtual Rect | rect (Context const &context, Drawing const &drawing, Drawing::Element const &el, bool absolute) const |
Accès au rectangle englobant un objet. More... | |
virtual Size | size (Context const &context, Drawing const &drawing, Drawing::Element const &el) const |
Accès à la taille d'un objet. More... | |
virtual Size | sizeClient (Context const &context, Drawing const &drawing, Drawing::Element const &el) const |
Accès à la taille de la zone client d'un objet. More... | |
virtual bool | pos (Context const &context, Drawing const &drawing, Drawing::Element const &el, bool absolute, Point const &point, bool resizeparent, bool usegrid, Clipping *clipping=NULL) const |
Fixer les coordonnées de l'élément. More... | |
virtual bool | size (Context const &context, Drawing const &drawing, Drawing::Element const &el, Size const &size, bool resizeparent, bool usegrid, Clipping *clipping=NULL) const |
Fixer la taille de l'élément. More... | |
virtual bool | sizeClient (Context const &context, Drawing const &drawing, Drawing::Element const &el, Size const &size, bool resizeparent, bool usegrid, Clipping *clipping=NULL) const |
Fixer la taille de la zone client de l'élément. More... | |
virtual bool | calcAutoSize (Context const &context, Drawing const &drawing, Drawing::Element const &el, bool resizeparent, bool usegrid, Clipping *cl=NULL) const |
Calculer et modifier la taille de l'élément pour qu'il contienne exactement sous ses fils. More... | |
bool | posRToA (Point &p, Context const &c, Drawing const &d, Drawing::Element const &el) const |
Transforme des coordonnées relatives en coordonnées absolues. More... | |
bool | posAToR (Point &p, Context const &c, Drawing const &d, Drawing::Element const &el) const |
Transforme des coordonnées absolues en coordonnées relatives. More... | |
Public Member Functions inherited from cogitantdisplay::OperationHandler | |
OperationHandler () | |
Constructeur par défaut. More... | |
virtual | ~OperationHandler () |
Destructeur. More... | |
std::vector< Operation * > const & | operations () const |
Accès aux opérations. More... | |
Protected Member Functions | |
void | clippingRToA (Clipping &cl, Context const &c, Drawing const &d, Drawing::Element const &el) const |
Transforme un clipping relatif en un clipping absolu. More... | |
void | clippingAToR (Clipping &cl, Context const &c, Drawing const &d, Drawing::Element const &el) const |
Transforme un clipping absolu en un clipping relatif. More... | |
Protected Member Functions inherited from cogitantdisplay::OperationHandler | |
Operation * | find (Context const &context, Drawing const &drawing, Drawing::Element const *el=NULL) const |
Accès à l'opération pouvant gérer l'élément. More... | |
void | deleteOp (Operation *op) |
Suppression d'une opération. More... | |
Additional Inherited Members | |
Protected Attributes inherited from cogitantdisplay::OperationHandler | |
std::vector< Operation * > | m_operations |
Les opérations gérées par l'OperationHandler. More... | |
Static Protected Attributes inherited from cogitantdisplay::OperationHandler | |
static unsigned int | s_nb |
Nombre handlers actuellement en mémoire. | |
Classe offrant l'accés aux méthodes de dessin.
cogitantdisplay::DrawHandler::DrawHandler | ( | ) |
Constructeur par défaut.
void cogitantdisplay::DrawHandler::addClipping | ( | Context const & | context, |
Drawing const & | drawing, | ||
Drawing::Element const & | el, | ||
bool | linked, | ||
Clipping & | clipping | ||
) | const |
Ajout au clipping.
context | contexte utilisé. |
drawing | dessin. |
el | élément à rajouter au clipping. |
linked | si true ajoute aussi les éléments liés. |
clipping | clipping exprimé en coordonnées absolues. |
void cogitantdisplay::DrawHandler::addOperation | ( | OperationDraw * | ope | ) |
Ajout d'une opération aux opérations gérées.
ope | Opération à ajouter. Après l'ajout, cette opération ne doit plus être détruite. |
|
virtual |
Calculer et modifier la taille de l'élément pour qu'il contienne exactement sous ses fils.
context | contexte utilisé. |
drawing | dessin. |
el | élément dont la taille doit être recalculée. |
resizeparent | si true , redimensionne (récursivement) les parents de el afin qu'ils contiennent el modifié. |
usegrid | si true , utilise la grille du dessin afin que la nouvelle taille soit conforme à la largeur de la grille. |
cl | si non NULL ajoute au clipping une zone permettant de mettre à jout l'affichage pour montrer le changement de taille de l'élément. |
true
ssi la taille de l'objet a été modifiée.
|
protected |
Transforme un clipping absolu en un clipping relatif.
|
protected |
Transforme un clipping relatif en un clipping absolu.
cl | le clipping (exprimé en entrée en coordonnées relatives à l'origine de la zone client du parent de el). |
c | contexte utilisé. |
d | dessin dont sont issus ce clipping. |
el | élément de dessin correspondant à cl. L'origine (absolue) du repère dans lequel les coordonnées de cl sont exprimées est donc le point origine de la zone client du parent de el. Ce sont les coordonnées de ce point qui sont utilisées pour transformer cl en clipping absolu. |
void cogitantdisplay::DrawHandler::deleteOperation | ( | OperationDraw * | ope | ) |
Suppression d'une opération.
ope | Opération à supprimer. L'opération est supprimée de la liste des opérations gérées, puis elle est détruite. |
iFigure cogitantdisplay::DrawHandler::draw | ( | Context & | context, |
Drawing const & | drawing, | ||
Drawing::Element const * | el = NULL , |
||
bool | recurs = true , |
||
iFigure | parent = IFIGURE_NULL |
||
) | const |
Dessin.
context | contexte utilisé. |
drawing | dessin. |
el | élément de dessin à afficher ou le dessin complet si NULL. |
recurs | si true, dessine aussi récursivement les fils de el. |
parent | identificateur de la figure parent des figures créées pour le dessin de el. |
iFigure cogitantdisplay::DrawHandler::draw | ( | Context & | context, |
Drawing const & | drawing, | ||
Clipping const & | cl, | ||
Drawing::Element const * | el = NULL , |
||
iFigure | parent = IFIGURE_NULL |
||
) | const |
Dessin des seuls éléments ayant une intersection non vide avec un clipping donné.
context | contexte utilisé. |
drawing | dessin. |
cl | clipping. |
el | élément de dessin à afficher ou le dessin complet si NULL. |
parent | identificateur de la figure parent des figures créées pour le dessin de el. |
OperationDraw* cogitantdisplay::DrawHandler::findOperation | ( | Context const & | context, |
Drawing const & | drawing, | ||
Drawing::Element const * | el = NULL |
||
) | const |
Accès à l'opération pouvant gérer l'élément.
context | contexte utilisé. |
drawing | dessin |
el | élément de dessin à gérer. Si NULL l'opération recherchée est celle qui permet de gérer le dessin dans son entier. |
bool cogitantdisplay::DrawHandler::inClipping | ( | Context const & | context, |
Drawing const & | drawing, | ||
Drawing::Element const & | el, | ||
Clipping const & | clipping | ||
) | const |
Intersection avec un clipping.
context | contexte utilisé. |
drawing | dessin. |
el | élément recherché. |
clipping | clipping exprimé en coordonnées absolues. |
bool cogitantdisplay::DrawHandler::isUnder | ( | Context const & | context, |
Drawing const & | drawing, | ||
Drawing::Element const & | el, | ||
Point const & | point | ||
) | const |
L'élément contient-il le point ?
context | contexte utilisé. |
drawing | dessin. |
el | élément interrogé. |
point | point exprimé en coordonnées absolues. |
|
virtual |
Accès aux coordonnées d'un objet.
context | contexte utilisé. |
drawing | dessin. |
el | élément interrogé. |
absolute | si true retourne les coordonnées absolues, sinon retourne les coordonnées relatives à l'origine de la zone client du parent. |
|
virtual |
Fixer les coordonnées de l'élément.
bool cogitantdisplay::DrawHandler::posAToR | ( | Point & | p, |
Context const & | c, | ||
Drawing const & | d, | ||
Drawing::Element const & | el | ||
) | const |
Transforme des coordonnées absolues en coordonnées relatives.
Les coordonnées relatives (dans p) sont exprimées relativement à l'origine de la zone client du parent de el. Attention: les coordonnées retournées peuvent être négatives dans le cas où l'origine de la zone client du parent de el est plus bas, plus à droite que le point p (coordonnées absolue).
|
virtual |
Accès aux coordonnées de l'origine de la zone client d'un objet.
context | contexte utilisé. |
drawing | dessin. |
el | élément interrogé. |
absolute | si true retourne les coordonnées absolues, sinon retourne les coordonnées relatives à l'origine de la zone client du parent. |
bool cogitantdisplay::DrawHandler::posRToA | ( | Point & | p, |
Context const & | c, | ||
Drawing const & | d, | ||
Drawing::Element const & | el | ||
) | const |
Transforme des coordonnées relatives en coordonnées absolues.
Les coordonnées relatives (dans p) sont exprimées relativement à l'origine de la zone client du parent de el. En sortie, p contient les coordonnées absolues.
|
virtual |
Accès au rectangle englobant un objet.
context | contexte utilisé. |
drawing | dessin. |
el | élément interrogé. |
absolute | si true retourne les coordonnées absolues, sinon retourne les coordonnées relatives à l'origine de la zone client du parent. |
|
virtual |
Accès à la taille d'un objet.
|
virtual |
Fixer la taille de l'élément.
|
virtual |
Accès à la taille de la zone client d'un objet.
|
virtual |
Fixer la taille de la zone client de l'élément.
bool cogitantdisplay::DrawHandler::under | ( | Context const & | context, |
Drawing const & | drawing, | ||
Drawing::Element & | el, | ||
Point const & | point | ||
) | const |
Y a t'il un élément au point donné.
context | contexte utilisé. |
drawing | dessin. |
el | (R) l'élément situé sous le point point. |
point | point à interroger. |