Classe permettant l'accès aux éléments graphiques utilisés pour déssiner un cogitant::Graph. More...
#include "cogitant/display/graph.h"
Public Member Functions | |
DrawingGraph (cogitant::Environment *env, cogitant::Graph *graph, Style *stylesheet=NULL) | |
Constructeur. More... | |
Iterator | begin (Iterator::Type type, Element const &arg) const |
void | next (Iterator &it) const |
Passage à l'itérateur suivant lors d'un parcours. More... | |
Element | ident (Iterator const &it) const |
Calcul de l'élément correspondant à un itérator. More... | |
Element | root () const |
Élément racine (extérieur). More... | |
Element | global () const |
Élément qui contient les propriétés globales. More... | |
cogitant::CogitantObject const * | getObject (Element const &it) const |
Accès à l'objet correspondant à un élément de dessin. More... | |
bool | isEdge (Element const &it, unsigned int *linked=NULL) const |
Accès à la nature de l'élément. More... | |
bool | isSelectable (Element const &el) const |
L'élément est-il sélectionnable. More... | |
cogitant::iSet | getSubId (Element const &it) const |
Accès à l'identificateur de sous-ensemble de propriétés. More... | |
Style::Id | getStyle (Element const &it) const |
Retourne le style de l'élément de dessin. More... | |
std::string | getLabel (Element const &el) const |
Retourne l'étiquette correspondant à l'élément de dessin. More... | |
bool | getLabelP (Element const &el) const |
Retourne vrai si l'élément de dessin est étiquetté. More... | |
std::string | name () const |
Nom du dessin. More... | |
unsigned int | typeOf (Element const &el) const |
Accès au "type" de l'élément graphique. More... | |
cogitant::iSet | getISet (Element const &el) const |
Retourne l'identificateur de l'objet du graphe correspondant à l'élément. More... | |
Element | getElement (cogitant::iSet i1, cogitant::iSet i2=cogitant::ISET_NULL) |
Retourne l'élément qui représente l'objet du graphe dont l'identificateur est passé. More... | |
cogitant::Edge::Label | getEdgeLabel (Element const &el) const |
Retourne l'étiquette de l'arête correspondant à l'élément. More... | |
cogitant::Graph * | graph () |
Accès au graphe. More... | |
cogitant::Graph const * | graph () const |
Accès au graphe. More... | |
cogitant::Environment * | environment () |
Accès à l'environnement. More... | |
cogitant::Environment const * | environment () const |
Accès à l'environnement. More... | |
void | graph (cogitant::Environment *env, cogitant::Graph *g) |
Modification du graphe. More... | |
Public Member Functions inherited from cogitantdisplay::Drawing | |
Drawing (Style *stylesheet) | |
Constructeur par défaut. More... | |
virtual | ~Drawing () |
Destructeur. More... | |
virtual Iterator | begin (Iterator::Type type, Element const &arg) const =0 |
Itérateur de début pour un parcours des objets liés ou objets fils. More... | |
Iterator | beginChildren (Element const &arg) const |
Itérateur de début pour un parcours des fils. More... | |
Iterator | beginLinked (Element const &arg) const |
Itérateur de début pour un parcours des objets liés. More... | |
Iterator | beginParent (Element const &arg) const |
Itérateur de début pour un parcours des objets parents. More... | |
Iterator | beginAll () const |
Itérateur de début pour un parcours total. More... | |
Iterator | end () const |
Iterateur incorrect de fin de parcours (quelconque). More... | |
virtual cogitant::CogitantObject * | getObjectVar (Element const &it) |
Accès à l'objet correspondant à un élément de dessin. More... | |
virtual unsigned int | edgeSameElements (Element const &el, unsigned int *i=NULL) const |
L'arête a t elle des soeurs. More... | |
virtual Font | getFont (Element const &el) const |
Retourne la fonte correspondant à l'élément de dessin. More... | |
virtual Brush | getBrush (Element const &el) const |
Retourne la brosse correspondant à l'élément de dessin. More... | |
virtual Pen | getPen (Element const &el) const |
Retourne le pinceau correspondant à l'élément de dessin. More... | |
virtual Position | getPosition (Element const &el) const |
Retourne la position des éléments contenus dans un élément de dessin. More... | |
virtual Figure::Style | getFigure (Element const &el) const |
Retourne le type de figure de l'élément de dessin. More... | |
virtual bool | getVisible (Element const &el) const |
L'élément est-il caché ou visible ? Si l'élément n'est pas visible, les fils ne sont pas affichés non plus. More... | |
virtual cogitant::PropertySet const * | getPropertySet (Element const &it) const |
Accès à un ensemble de propriétés pour la lecture/stockage de propriétés d'un élément de dessin. More... | |
virtual cogitant::PropertySet * | getPropertySet (Element const &it) |
Accès à un ensemble de propriétés pour la lecture/stockage de propriétés d'un élément de dessin. More... | |
virtual int | propertyDefined (Element const &el, cogitant::Property::Type tp) const |
La propriété est elle définie pour l'élément ? More... | |
virtual bool | read (Element const &it, std::string const &tp, std::string &value) const |
Accès à la valeur chaîne d'une propriété dont le type est une chaîne. More... | |
virtual bool | read (Element const &it, cogitant::Property::Type tp, unsigned int &value) const |
Accès à la valeur entière d'une propriété. More... | |
virtual bool | read (Element const &it, cogitant::Property::Type tp, std::string &value) const |
Accès à la valeur chaîne d'une propriété. More... | |
virtual bool | read (Element const &it, cogitant::Property::Type tp, std::vector< cogitant::iSet > &value) const |
Accès à la valeur tableau d'entiers d'une propriété. More... | |
virtual void | set (Element const &it, std::string const &tp, std::string const &value) |
Modification de la valeur d'une propriété. More... | |
virtual void | set (Element const &it, cogitant::Property::Type tp, unsigned int value) |
Modification de la valeur d'une propriété. More... | |
virtual void | set (Element const &it, cogitant::Property::Type tp, std::string const &value) |
Modification de la valeur d'une propriété. More... | |
virtual void | set (Element const &it, cogitant::Property::Type tp, std::vector< cogitant::iSet > const &value) |
Modification de la valeur d'une propriété. More... | |
virtual void | remove (Element const &it, cogitant::Property::Type tp) |
Suppression d'une propriété. More... | |
virtual void | remove (Element const &it, std::string const &tp) |
Suppression d'une propriété. More... | |
virtual bool | posDefined (Element const &el) const |
La position de l'objet est elle définie ?. More... | |
virtual bool | sizeDefined (Element const &el) const |
La taille de l'objet est elle définie ?. More... | |
virtual Point | rPos (Element const &el) const |
Accès aux coordonnées de l'objet (relatives au parent). More... | |
virtual Size | size (Element const &el) const |
Accès au rectangle englobant. More... | |
virtual bool | rPos (Element const &el, Point const &p) |
Fixe les coordonnées de l'objet. More... | |
virtual bool | size (Element const &el, Size const &s) |
Fixe la taille de l'objet. More... | |
Style & | styles () |
Accès au gestionnaire de styles du dessin. More... | |
Public Member Functions inherited from cogitant::CogitantObject | |
CogitantObject () | |
Constructeur. More... | |
CogitantObject (CogitantObject const &o) | |
Constructeur par recopie. More... | |
virtual | ~CogitantObject () |
Destructeur. More... | |
PropertySet * | properties () |
Accès à l'ensemble des propriétés. More... | |
virtual std::string | toString () const |
Transformation en chaîne de caractères. More... | |
std::string | className () const |
Nom de la classe. More... | |
PropertySet const * | properties () const |
Accès en lecture seule à l'ensemble des propriétés. More... | |
bool | hasProperties () const |
Existence de propriétés. More... | |
CogitantObject & | operator= (CogitantObject const &ob) |
Affectation. More... | |
Static Public Attributes | |
static Style::Id | SID_ROOT |
Style racine. | |
static Style::Id | SID_NODE |
Style parent pour les noeud (C,R,E). | |
static Style::Id | SID_CONCEPT |
Style des sommets concepts. | |
static Style::Id | SID_CONCEPTNESTING |
Style des sommets concepts ayant des emboitements. | |
static Style::Id | SID_RELATION |
Style des sommets relations. | |
static Style::Id | SID_NESTING |
Style des emboitements. | |
static Style::Id | SID_GRAPH |
Style des graphes internes concepts. | |
static Style::Id | SID_LINK |
Style des arêtes (étiquetées). | |
static Style::Id | SID_LINK1 |
Style des arêtes non étiquetées (SC vers SR, c'est à dire étiquette 1). | |
static Style::Id | SID_LINK2 |
Style des arêtes non étiquetées (SR vers SC, c'est à dire étiquette 2). | |
static Style::Id | SID_LINK_ERROR |
Style des arêtes étiquetées (en erreur). | |
static Style::Id | SID_LINK1_ERROR |
Style des arêtes non étiquetées (étiquette 1) (en erreur). | |
static Style::Id | SID_LINK2_ERROR |
Style des arêtes non étiquetées (étiquette 2) (en erreur). | |
static Style::Id | SID_GRAPHROOT |
Style du graphe racine. | |
static Style::Id | SID_GRAPHGLOBAL |
Style du graphe global. | |
Static Public Attributes inherited from cogitantdisplay::Drawing | |
static Style::Id | SID_HIDDEN |
Identificateur de style "caché". More... | |
Protected Member Functions | |
bool | nextEdge (cogitant::iSet iobj, cogitant::iSet &ilink, bool children) const |
Calcul de l'arête suivante. More... | |
Protected Member Functions inherited from cogitant::CogitantObject | |
virtual PropertySet * | allocProperties () const |
Fonction créant l'instance d'une sous classe de PropertySet pour la représentation des propriétés de l'objet. More... | |
Protected Attributes | |
cogitant::Graph * | m_graph |
Le graphe à dessiner. | |
cogitant::Environment * | m_environment |
L'environnement dont fait partie le graphe. | |
Protected Attributes inherited from cogitantdisplay::Drawing | |
Style | m_styles |
Les styles spécifiques au dessin (+ le lien vers la feuille de style parent). | |
Classe permettant l'accès aux éléments graphiques utilisés pour déssiner un cogitant::Graph.
Cette classe offre un accès aux cogitant::GraphObject composant le graphe ainsi qu'aux arêtes composant le graphs, qui ne sont pas représentées par un cogitant::CogitantObject dans un cogitant::Graph.
Parcours | Élément de départ | Élément courant | Remarques |
ALL | Sans objeti: iSet de GraphObject ou i,i: iSet de Relation, iSet d'arête de cette relation. | Les arêtes sont parcourues après les GraphObject. | |
PARENT | i: iSet de GraphObject ou i,i : iSet de Relation, iSet d'arête de cette relation. | i : iSet de GraphObject | - |
CHILD | i,i : parcours vide ou i : GraphObject (un InternalGraph a pour fils les arêtes des Relation contenues | i : iSet de l'Edge de l'objet de départ ou i,i iSet de l'Edge de l'objet de départ (vers une Relation), iSet de l'Edge du sommet relation | - |
LINKED | i : GraphObject ou i,i Relation, iSet arête de la relation | i iSet de l'arête ou 0/1 origine(SR) / extrémité (SC). |
cogitantdisplay::DrawingGraph::DrawingGraph | ( | cogitant::Environment * | env, |
cogitant::Graph * | graph, | ||
Style * | stylesheet = NULL |
||
) |
Constructeur.
cogitant::Environment* cogitantdisplay::DrawingGraph::environment | ( | ) |
Accès à l'environnement.
cogitant::Environment const* cogitantdisplay::DrawingGraph::environment | ( | ) | const |
Accès à l'environnement.
cogitant::Edge::Label cogitantdisplay::DrawingGraph::getEdgeLabel | ( | Element const & | el | ) | const |
Retourne l'étiquette de l'arête correspondant à l'élément.
Element cogitantdisplay::DrawingGraph::getElement | ( | cogitant::iSet | i1, |
cogitant::iSet | i2 = cogitant::ISET_NULL |
||
) |
Retourne l'élément qui représente l'objet du graphe dont l'identificateur est passé.
i1 | identificateur de sommet concept, relation, emboîtement, graphe interne. |
i2 | indice d'arête. Si ISET_NULL est passé (défaut) retourne un élément qui correspond à un sommet. |
cogitant::iSet cogitantdisplay::DrawingGraph::getISet | ( | Element const & | el | ) | const |
Retourne l'identificateur de l'objet du graphe correspondant à l'élément.
|
virtual |
Retourne l'étiquette correspondant à l'élément de dessin.
Reimplemented from cogitantdisplay::Drawing.
|
virtual |
Retourne vrai si l'élément de dessin est étiquetté.
Cette méthode n'est pas indispensable puisqu'il est possible d'utiliser toujours getLabel(). D'ailleurs, l'implémentation par défaut de cette méthode est justement un appel à getLabel() et une comparaison de la chaine résultat avec la chaine vide. Mais il est possible de redéfinir cette méthode pour un traitement plus rapide, car certaines opérations ont besoin de déterminer si un élément de dessin est étiquetté ou pas, peu importe la valeur de l'étiquette (qui peut être coûteuse à calculer).
Reimplemented from cogitantdisplay::Drawing.
|
virtual |
Accès à l'objet correspondant à un élément de dessin.
Implements cogitantdisplay::Drawing.
Retourne le style de l'élément de dessin.
Le style est utilisé pour déterminer les valeurs par défaut des propriétés de l'élément de dessin (celles qui ne sont pas définies dans l'ensemble de propriétés getPropertySet()). Un style repère en fait un ensemble de propriétés (associé au Drawing pour l'instant), et contient au moins le type de figure (ligne, rectangle, ellipse)).
Reimplemented from cogitantdisplay::Drawing.
|
virtual |
Accès à l'identificateur de sous-ensemble de propriétés.
Cette méthode doit être utilisée conjointement à getObject() pour obtenir le CogitantObject et l'identificateur de sous ensemble de propriétés à utiliser pour les propriétés de l'élément de dessin repéré par it.
Reimplemented from cogitantdisplay::Drawing.
|
virtual |
Élément qui contient les propriétés globales.
Cet élément porte les propriétés globales (grille par exemple), il ne s'agit pas obligatoirement de l'élément racine, même si il s'agit de la racine par défaut. Cet élément ne figure pas obligatoirement dans un parcours de tous les éléments d'un dessin (par begin(), end()).
Reimplemented from cogitantdisplay::Drawing.
cogitant::Graph* cogitantdisplay::DrawingGraph::graph | ( | ) |
Accès au graphe.
cogitant::Graph const* cogitantdisplay::DrawingGraph::graph | ( | ) | const |
Accès au graphe.
void cogitantdisplay::DrawingGraph::graph | ( | cogitant::Environment * | env, |
cogitant::Graph * | g | ||
) |
Modification du graphe.
Calcul de l'élément correspondant à un itérator.
Implements cogitantdisplay::Drawing.
|
virtual |
Accès à la nature de l'élément.
true
ssi l'élément est une arête. Dans ce cas, et si l'élément est lié à deux autres éléments, la modification de la position/taille des éléments liés (les sommets) entraîne la modification de la position de l'élément (arête). Au contraire, si l'élément n'est pas une arête (c'est à dire un sommet), la modification de la position/taille des élément liés (arêtes) n'entraîne pas de modification de la position de l'élément (sommet). it | élément dont la nature est interrogée. |
linked | si un pointeur non NULL est passé et que l'élément est effectivement une arête, alors *linked contient en sortie le nombre d'éléments liés à cette arête. |
Implements cogitantdisplay::Drawing.
|
virtual |
L'élément est-il sélectionnable.
Reimplemented from cogitantdisplay::Drawing.
|
virtual |
Nom du dessin.
Par défaut, cette méthode retourne une chaîne vide. Elle peut être redéfinie dans les sous-classes.
Reimplemented from cogitantdisplay::Drawing.
|
virtual |
Passage à l'itérateur suivant lors d'un parcours.
Implements cogitantdisplay::Drawing.
|
protected |
Calcul de l'arête suivante.
iobj | identificateur d'objet dont les arêtes doivent être parcourues. |
ilink | (D/R) identificateur de l'arête. |
children | recherche des arêtes Edge::CHILD (true) ou des arêtes Edge::isEdge() (false). |
|
virtual |
Élément racine (extérieur).
Cet élément est celui qui sert à démarrer le dessin.
Implements cogitantdisplay::Drawing.
unsigned int cogitantdisplay::DrawingGraph::typeOf | ( | Element const & | el | ) | const |
Accès au "type" de l'élément graphique.
Cette méthode peut être utilisé pour connaitre le type d'un élément graphique. Il est préférable d'utiliser cette méthode que d'analyser le tableau d'entiers contenu dans l'Element.