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

Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
cogitantdisplay::Panel Class Reference

Affichage d'un dessin dans un composant graphique (indépendant de la bibliothèque graphique utilisée). More...

#include "cogitant/display/display.h"

Inheritance diagram for cogitantdisplay::Panel:
cogitantdisplay::Panel_Java cogitantdisplay::Panel_Wx

Classes

struct  KbdState
 État des touches spéciales du clavier. More...
 

Public Types

typedef unsigned char KbdKey
 Touche du clavier. More...
 

Public Member Functions

 Panel (Drawing *drawing, DisplayHandler *displayhandler, Output *out, PanelEventHandler *eh=NULL)
 Constructeur. More...
 
virtual ~Panel ()
 Destructeur. More...
 
virtual bool onRedraw ()
 Réponse à l'évènement de redessin. More...
 
virtual bool onRedraw (Clipping const &cl)
 Réponse à l'évènement de redessin. More...
 
virtual bool onMouseButton (int button, Point const &p, bool down, KbdState ks)
 Réponse à l'évènement clic-souris. More...
 
virtual bool onMouseMove (Point const &p)
 Réponse à l'évènement déplacement curseur souris. More...
 
virtual bool onKey (KbdState ks, KbdKey kk)
 Réponse à l'évènement appui touche. More...
 
virtual void redraw (Clipping const &cl)
 Forcer le redessin. More...
 
virtual void redraw ()
 Forcer le redessin complet. More...
 
void setDrawing (Drawing *d)
 Sélection du dessin. More...
 
void setDisplayHandler (DisplayHandler *d)
 Sélection du gestionnaire d'affichage. More...
 
void setOutput (Output *o)
 Sélection du format de sortie. More...
 
void setEventHandler (PanelEventHandler *e)
 Sélection du gestionnaire d'évènements. More...
 
Contextcontext ()
 Contexte d'affichage. More...
 
Drawingdrawing ()
 Dessin. More...
 
DisplayHandlerdisplayHandler ()
 Gestionnaire d'affichage. More...
 
void resizePanel ()
 Redimensionnement du composant d'affichage pour afficher le dessin. More...
 

Static Public Attributes

static const KbdKey KEY_DELETE
 Touche spéciale "delete" (valeur 1).
 
static const KbdKey KEY_RETURN
 Touche spéciale "return" (valeur 2).
 
static const KbdKey KEY_ESCAPE
 Touche spéciale "escape" (valeur 3).
 

Protected Member Functions

virtual void resizeComponent (Size const &s)
 Redimensionnement du composant d'affichage. More...
 
virtual Size componentSize () const
 Accès à la taille (virtuelle) du composant. More...
 

Protected Attributes

Drawingm_drawing
 Dessin utilisé. More...
 
DisplayHandlerm_displayhandler
 Gestionnaire de dessin utilisé. More...
 
Outputm_out
 Primitives de bas niveau utilisées. More...
 
PanelEventHandlerm_eventhandler
 Gestionnaire d'évenements. More...
 

Detailed Description

Affichage d'un dessin dans un composant graphique (indépendant de la bibliothèque graphique utilisée).

Les méthodes onxxx doivent être appelées quand les évènements correspondants sont reçus. L'exécution de ces méthode appelle les traitements correspondants de la classe Editor.

Member Typedef Documentation

◆ KbdKey

typedef unsigned char cogitantdisplay::Panel::KbdKey

Touche du clavier.

Constructor & Destructor Documentation

◆ Panel()

cogitantdisplay::Panel::Panel ( Drawing drawing,
DisplayHandler displayhandler,
Output out,
PanelEventHandler eh = NULL 
)

Constructeur.

◆ ~Panel()

virtual cogitantdisplay::Panel::~Panel ( )
virtual

Destructeur.

Member Function Documentation

◆ componentSize()

virtual Size cogitantdisplay::Panel::componentSize ( ) const
protectedvirtual

Accès à la taille (virtuelle) du composant.

Cette méthode doit retourner la taille actuelle virtuelle du composant. Attention, il ne s'agit pas de la taille visible.

Reimplemented in cogitantdisplay::Panel_Wx.

◆ context()

Context* cogitantdisplay::Panel::context ( )
inline

Contexte d'affichage.

References cogitantdisplay::DisplayHandler::context().

◆ displayHandler()

DisplayHandler* cogitantdisplay::Panel::displayHandler ( )
inline

Gestionnaire d'affichage.

◆ drawing()

Drawing* cogitantdisplay::Panel::drawing ( )
inline

Dessin.

◆ onKey()

virtual bool cogitantdisplay::Panel::onKey ( KbdState  ks,
KbdKey  kk 
)
virtual

Réponse à l'évènement appui touche.

Cette méthode appelle la méthode Editor::onKey.

◆ onMouseButton()

virtual bool cogitantdisplay::Panel::onMouseButton ( int  button,
Point const &  p,
bool  down,
KbdState  ks 
)
virtual

Réponse à l'évènement clic-souris.

Cette méthode appelle la méthode Editor::onMouseButton.

◆ onMouseMove()

virtual bool cogitantdisplay::Panel::onMouseMove ( Point const &  p)
virtual

Réponse à l'évènement déplacement curseur souris.

Cette méthode appelle la méthode Editor::onMouseMove.

◆ onRedraw() [1/2]

virtual bool cogitantdisplay::Panel::onRedraw ( )
virtual

Réponse à l'évènement de redessin.

Cette méthode appelle DisplayHandler::runDraw().

◆ onRedraw() [2/2]

virtual bool cogitantdisplay::Panel::onRedraw ( Clipping const &  cl)
virtual

Réponse à l'évènement de redessin.

Cette méthode appelle DisplayHandler::runDraw().

◆ redraw() [1/2]

virtual void cogitantdisplay::Panel::redraw ( Clipping const &  cl)
virtual

Forcer le redessin.

Habituellement, cette méthode fait appel à la bibliothèque GUI utilisée pour invalider la zone. Ainsi, un évènement de redessin est généré, qui suit le parcours habituel, et appelle onRedraw().

Reimplemented in cogitantdisplay::Panel_Java, and cogitantdisplay::Panel_Wx.

◆ redraw() [2/2]

virtual void cogitantdisplay::Panel::redraw ( )
virtual

Forcer le redessin complet.

Reimplemented in cogitantdisplay::Panel_Java, and cogitantdisplay::Panel_Wx.

◆ resizeComponent()

virtual void cogitantdisplay::Panel::resizeComponent ( Size const &  s)
protectedvirtual

Redimensionnement du composant d'affichage.

Cette méthode est appelée par resizePanel() pour redimensionner effectivement le composant. Elle doit être redéfinie dans les sous-classes pour redimensionner effectivement le composant en fonction des méthodes de la bibliothèque GUI utilisée.

Reimplemented in cogitantdisplay::Panel_Java, and cogitantdisplay::Panel_Wx.

◆ resizePanel()

void cogitantdisplay::Panel::resizePanel ( )

Redimensionnement du composant d'affichage pour afficher le dessin.

Cette méthode se charge de changer la taille du composant d'affichage afin qu'il puisse contenir la totalité du dessin. Elle est appelée par setDrawing()et devrait être appelée après toute construction de Panel.

◆ setDisplayHandler()

void cogitantdisplay::Panel::setDisplayHandler ( DisplayHandler d)
inline

Sélection du gestionnaire d'affichage.

◆ setDrawing()

void cogitantdisplay::Panel::setDrawing ( Drawing d)

Sélection du dessin.

◆ setEventHandler()

void cogitantdisplay::Panel::setEventHandler ( PanelEventHandler e)
inline

Sélection du gestionnaire d'évènements.

◆ setOutput()

void cogitantdisplay::Panel::setOutput ( Output o)
inline

Sélection du format de sortie.

Member Data Documentation

◆ m_displayhandler

DisplayHandler* cogitantdisplay::Panel::m_displayhandler
protected

Gestionnaire de dessin utilisé.

◆ m_drawing

Drawing* cogitantdisplay::Panel::m_drawing
protected

Dessin utilisé.

◆ m_eventhandler

PanelEventHandler* cogitantdisplay::Panel::m_eventhandler
protected

Gestionnaire d'évenements.

◆ m_out

Output* cogitantdisplay::Panel::m_out
protected

Primitives de bas niveau utilisées.