Quick links: Tutorial - Examples - Files - Symbols.
Classes: Hierarchy - Index - List - Members.
Namespaces: Index - base - cs - display.

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cogitantdisplay::DisplayHandler Class Reference

Fonctionnalités d'affichage de haut niveau. More...

#include "cogitant/display/display.h"

Inheritance diagram for cogitantdisplay::DisplayHandler:
cogitantdisplay::DisplayHandler_Java cogitantdisplay::DisplayHandler_Wx

Public Member Functions

 DisplayHandler ()
 Constructeur par défaut. More...
 
 ~DisplayHandler ()
 Destructeur. More...
 
DrawHandler const * drawHandler () const
 Accès au gestionnaire de dessin. More...
 
LayoutHandler const * layoutHandler () const
 Accès au gestionnaire de placement. More...
 
DialogHandler const * dialogHandler () const
 Accès au gestionnaire de boîtes de dialogue. More...
 
DialogHandlerdialogHandler ()
 Accès au gestionnaire de boîtes de dialogue. More...
 
Clipboard const * clipboard () const
 Accès au presse-papiers. More...
 
Clipboardclipboard ()
 Accès au presse-papiers. More...
 
Context const * context () const
 Accès au contexte. More...
 
Contextcontext ()
 Accès au contexte. More...
 
Output const * output () const
 Accès à l'affichage. More...
 
void output (Output *ou)
 Modification de l'objet d'affichage. More...
 
void clipboard (Clipboard *ou)
 Modification du presse-papiers. More...
 
void dialogHandler (DialogHandler *dh)
 Modification du gestionnaire de dialogues. More...
 
void addOperation (OperationDraw *ope)
 Ajout d'une opération de dessin. More...
 
void addOperation (OperationLayout *ope)
 Ajout d'une opération de placement. More...
 
void addOperation (OperationPropertyDialog *ope)
 Ajout d'une opération de gestion de propriétés. More...
 
void runLayout (Drawing const &drawing, bool forcesize=false, bool forcepos=false) const
 Rangement d'un dessin. More...
 
void runLayout (Drawing const &drawing, Drawing::Element const &el, bool forcesize=false, bool forcepos=false) const
 Rangement d'un élément de dessin. More...
 
bool runLayoutCrop (Drawing &drawing, Drawing::Element const *el=NULL) const
 Mise en page pour que les objets soient exactement contenus dans la racine. More...
 
void runDraw (Drawing const &drawing, Output *out=NULL) const
 Affichage d'un dessin. More...
 
void runDrawNoOutput (Drawing const &drawing) const
 Affichage d'un dessin sans sortie. More...
 
void runDraw (Drawing const &drawing, Drawing::Element const &el) const
 Affichage de certains éléments d'un dessin. More...
 
void runDraw (Drawing const &drawing, Clipping const &cl) const
 Affichage des éléments du dessin ayant une intersection non vide avec le clipping. More...
 
void runOutput (Output *out=NULL) const
 Sortie du dessin en attente dans le contexte sur la classe de sortie. More...
 
EditornewEditor (int type, Panel *panel, std::string const &nf, cogitant::iSet igraph)
 Création d'un éditeur. More...
 
void addFormats (cogitant::Environment &env)
 Ajout des formats d'exportation à un environnement. More...
 

Protected Member Functions

void init ()
 Initialise le gestionnaire avec les opérations par défaut. More...
 

Protected Attributes

DrawHandlerm_drawhandler
 Gestionnaire d'affichage.
 
LayoutHandlerm_layouthandler
 Gestionnaire de mise en page.
 
DialogHandlerm_dialoghandler
 Gestionnaire de boîtes de dialogue.
 
Clipboardm_clipboard
 Presse-papiers.
 
Contextm_context
 Contexte commun.
 
Outputm_output
 Opérations de sortie communes.
 

Detailed Description

Fonctionnalités d'affichage de haut niveau.

Toutes les méthodes runxxx() prennent un paramètre Output* optionnel. Si le paramètre n'est pas précisé, ou si NULL est passé, la méthode utilise l'Output par défaut (c'est à dire m_output) sinon, la méthode utilise l'Output passé en paramètre.

Examples:
converter.cpp.

Constructor & Destructor Documentation

◆ DisplayHandler()

cogitantdisplay::DisplayHandler::DisplayHandler ( )

Constructeur par défaut.

Ce constructeur crée un DrawHandler et l'initialise avec les opérations standards, idem pour le LayoutHandler. Un contexte est lui aussi créé, ainsi qu'un Clipboard. Par contre aucun Output n'est créé car Output est une classe abstraite et il est donc nécessaire d'utiliser la méthode output(Output*) pour initialiser l'Output utilisé par défaut, ou passer un Output* à chaque méthode qui en réclame un. De même, aucun DialogHandler n'est créé car il s'agit d'une classe abstraite qui doit être concrétisée de différentes façons, selon la bibliothèque GUI utilisée.

◆ ~DisplayHandler()

cogitantdisplay::DisplayHandler::~DisplayHandler ( )

Destructeur.

Member Function Documentation

◆ addFormats()

void cogitantdisplay::DisplayHandler::addFormats ( cogitant::Environment env)

Ajout des formats d'exportation à un environnement.

Habituellement, les objets de la classe cogitant::Environment ne sont capables d'exporter des objets que dans des formats "texte". Certaines classes de l'espace de nom cogitantdisplay permettent de générer des fichiers qui contiennent des formes graphiques des objets manipulés en mémoire. Par exemple, OutputFig permet d'exporter au format fig. En appelant cette méthode sur l'environnement utilisé, de nouvelles opérations de sorties sont rajoutées au gestionnaire d'entrées sorties et permettent d'utiliser les fonctions d'export graphique directement à partir de l'environnement. Pour l'instant, seul l'export FIG est ajouté.

Parameters
envenvironnement devant recevoir les nouvelles opérations de sortie.
Warning
Le DisplayHandler ne doit pas être détruit avant l'Environment sous peine de plantage lors d'un export sous forme graphique à partir de l'environnement, puisque l'opération de sortie de l'environnement utilisera le DisplayHandler.
Examples:
converter.cpp.

◆ addOperation() [1/3]

void cogitantdisplay::DisplayHandler::addOperation ( OperationDraw ope)

Ajout d'une opération de dessin.

◆ addOperation() [2/3]

void cogitantdisplay::DisplayHandler::addOperation ( OperationLayout ope)

Ajout d'une opération de placement.

◆ addOperation() [3/3]

void cogitantdisplay::DisplayHandler::addOperation ( OperationPropertyDialog ope)

Ajout d'une opération de gestion de propriétés.

◆ clipboard() [1/3]

Clipboard const* cogitantdisplay::DisplayHandler::clipboard ( ) const

Accès au presse-papiers.

◆ clipboard() [2/3]

Clipboard* cogitantdisplay::DisplayHandler::clipboard ( )

Accès au presse-papiers.

◆ clipboard() [3/3]

void cogitantdisplay::DisplayHandler::clipboard ( Clipboard ou)

Modification du presse-papiers.

Warning
Cette méthode ne doit pas être appelée après avoir créé des Editor, car le presse-papiers "précédent" écrasé par l'appel à cette méthode est utilisé par les Editor en question.

◆ context() [1/2]

Context const* cogitantdisplay::DisplayHandler::context ( ) const

Accès au contexte.

Referenced by cogitantdisplay::Panel::context().

◆ context() [2/2]

Context* cogitantdisplay::DisplayHandler::context ( )

Accès au contexte.

◆ dialogHandler() [1/3]

DialogHandler const* cogitantdisplay::DisplayHandler::dialogHandler ( ) const

Accès au gestionnaire de boîtes de dialogue.

◆ dialogHandler() [2/3]

DialogHandler* cogitantdisplay::DisplayHandler::dialogHandler ( )

Accès au gestionnaire de boîtes de dialogue.

◆ dialogHandler() [3/3]

void cogitantdisplay::DisplayHandler::dialogHandler ( DialogHandler dh)

Modification du gestionnaire de dialogues.

◆ drawHandler()

DrawHandler const* cogitantdisplay::DisplayHandler::drawHandler ( ) const

Accès au gestionnaire de dessin.

◆ init()

void cogitantdisplay::DisplayHandler::init ( )
protected

Initialise le gestionnaire avec les opérations par défaut.

◆ layoutHandler()

LayoutHandler const* cogitantdisplay::DisplayHandler::layoutHandler ( ) const

Accès au gestionnaire de placement.

Examples:
converter.cpp.

◆ newEditor()

Editor* cogitantdisplay::DisplayHandler::newEditor ( int  type,
Panel panel,
std::string const &  nf,
cogitant::iSet  igraph 
)

Création d'un éditeur.

Parameters
type0: Editor, 1: EditorGraph.
panelPanel géré par l'Editor créé.
nfNom du fichier affiché dans le Panel ou chaîne de caractères vide si le dessin est nouveau et ne correspond à aucun fichier.
igraphIdentificateur du graphe édité. L'utilisateur pourra éventuellement détruire ce graphe et charger un nouveau graphe (qui aura un nouvel identificateur).
Returns
Un pointeur sur un éditeur créé pour gérer le Panel, qui utilise le Clipboard courant, et le DialogHandler courant.
Examples:
wxdisplay.cpp.

◆ output() [1/2]

Output const* cogitantdisplay::DisplayHandler::output ( ) const

Accès à l'affichage.

◆ output() [2/2]

void cogitantdisplay::DisplayHandler::output ( Output ou)

Modification de l'objet d'affichage.

◆ runDraw() [1/3]

void cogitantdisplay::DisplayHandler::runDraw ( Drawing const &  drawing,
Output out = NULL 
) const

Affichage d'un dessin.

◆ runDraw() [2/3]

void cogitantdisplay::DisplayHandler::runDraw ( Drawing const &  drawing,
Drawing::Element const &  el 
) const

Affichage de certains éléments d'un dessin.

◆ runDraw() [3/3]

void cogitantdisplay::DisplayHandler::runDraw ( Drawing const &  drawing,
Clipping const &  cl 
) const

Affichage des éléments du dessin ayant une intersection non vide avec le clipping.

◆ runDrawNoOutput()

void cogitantdisplay::DisplayHandler::runDrawNoOutput ( Drawing const &  drawing) const

Affichage d'un dessin sans sortie.

Seules des figures sont ajoutées au Context, mais aucune sortie sur un Output n'est effectué.

◆ runLayout() [1/2]

void cogitantdisplay::DisplayHandler::runLayout ( Drawing const &  drawing,
bool  forcesize = false,
bool  forcepos = false 
) const

Rangement d'un dessin.

Examples:
wxdisplay.cpp.

◆ runLayout() [2/2]

void cogitantdisplay::DisplayHandler::runLayout ( Drawing const &  drawing,
Drawing::Element const &  el,
bool  forcesize = false,
bool  forcepos = false 
) const

Rangement d'un élément de dessin.

◆ runLayoutCrop()

bool cogitantdisplay::DisplayHandler::runLayoutCrop ( Drawing drawing,
Drawing::Element const *  el = NULL 
) const

Mise en page pour que les objets soient exactement contenus dans la racine.

See also
OperationLayoutCrop.

◆ runOutput()

void cogitantdisplay::DisplayHandler::runOutput ( Output out = NULL) const

Sortie du dessin en attente dans le contexte sur la classe de sortie.