Castor3D  ..
Types publics | Types protégés | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe Castor3D::EventHandlerabstract

Description d'un gestionnaire d'évènements, classe pouvant recevoir des évènements. Plus de détails...

+ Graphe d'héritage de Castor3D::EventHandler:
+ Graphe de collaboration de Castor3D::EventHandler:

Types publics

using ClientMouseFunction = std::function< void(MouseEvent const &) >
 
using ClientKeyboardFunction = std::function< void(KeyboardEvent const &) >
 
using ClientHandlerFunction = std::function< void(HandlerEvent const &) >
 
using OnClientMouseEvent = Castor::Signal< ClientMouseFunction >
 
using OnClientKeyboardEvent = Castor::Signal< ClientKeyboardFunction >
 
using OnClientHandlerEvent = Castor::Signal< ClientHandlerFunction >
 
using OnClientMouseEventConnection = OnClientMouseEvent::connection
 
using OnClientKeyboardEventConnection = OnClientKeyboardEvent::connection
 
using OnClientHandlerEventConnection = OnClientHandlerEvent::connection
 

Fonctions membres publiques

General
 EventHandler (bool p_catchMouseEvents)
 
virtual ~EventHandler ()
 
void ProcessEvents ()
 
Mouse events
void PushEvent (MouseEvent const &p_event)
 
void Connect (MouseEventType p_event, ClientMouseFunction p_function)
 
Keyboard events
void PushEvent (KeyboardEvent const &p_event)
 
void Connect (KeyboardEventType p_event, ClientKeyboardFunction p_function)
 
bool CatchesMouseEvents () const
 
void SetCatchesMouseEvents (bool p_value)
 
void PushEvent (HandlerEvent const &p_event)
 
void Connect (HandlerEventType p_event, ClientHandlerFunction p_function)
 
bool CatchesTabKey () const
 
bool CatchesReturnKey () const
 

Types protégés

using EventHandlerFunction = std::function< void() >
 
using EventQueue = std::deque< std::pair< UserInputEventSPtr, EventHandlerFunction > >
 

Fonctions membres protégées

void ProcessMouseEvent (MouseEventSPtr p_event)
 
void ProcessKeyboardEvent (KeyboardEventSPtr p_event)
 
void ProcessHandlerEvent (HandlerEventSPtr p_event)
 

Attributs protégés

std::array< OnClientMouseEvent, size_t(MouseEventType::eCount) > m_mouseSlots
 
std::array< std::vector< OnClientMouseEventConnection >, size_t(MouseEventType::eCount) > m_mouseSlotsConnections
 
std::array< OnClientKeyboardEvent, size_t(KeyboardEventType::eCount) > m_keyboardSlots
 
std::array< std::vector< OnClientKeyboardEventConnection >, size_t(KeyboardEventType::eCount) > m_keyboardSlotsConnections
 
std::array< OnClientHandlerEvent, size_t(HandlerEventType::eCount) > m_handlerSlots
 
std::array< std::vector< OnClientHandlerEventConnection >, size_t(HandlerEventType::eCount) > m_handlerSlotsConnections
 

Description détaillée

Description d'un gestionnaire d'évènements, classe pouvant recevoir des évènements.

Auteur
Sylvain DOREMUS
Date
17/04/2016
Version
0.9.0

Documentation des définitions de type membres

◆ ClientHandlerFunction

using Castor3D::EventHandler::ClientHandlerFunction = std::function< void( HandlerEvent const & ) >

Définition d'une fonction de traitement d'évènement de gestionnaire.

◆ ClientKeyboardFunction

using Castor3D::EventHandler::ClientKeyboardFunction = std::function< void( KeyboardEvent const & ) >

Définition d'une fonction de traitement d'évènement de clavier.

◆ ClientMouseFunction

using Castor3D::EventHandler::ClientMouseFunction = std::function< void( MouseEvent const & ) >

Définition d'une fonction de traitement d'évènement de souris.

◆ EventHandlerFunction

using Castor3D::EventHandler::EventHandlerFunction = std::function< void() >
protected

◆ EventQueue

using Castor3D::EventHandler::EventQueue = std::deque< std::pair< UserInputEventSPtr, EventHandlerFunction > >
protected

◆ OnClientHandlerEvent

Définition d'un signal d'évènement de gestionnaire.

◆ OnClientHandlerEventConnection

using Castor3D::EventHandler::OnClientHandlerEventConnection = OnClientHandlerEvent::connection

Définition d'une connexion au signal d'évènement de gestionnaire.

◆ OnClientKeyboardEvent

Définition d'un signal d'évènement de clavier.

◆ OnClientKeyboardEventConnection

using Castor3D::EventHandler::OnClientKeyboardEventConnection = OnClientKeyboardEvent::connection

Définition d'une connexion au signal d'évènement de clavier.

◆ OnClientMouseEvent

Définition d'un signal d'évènement de souris.

◆ OnClientMouseEventConnection

using Castor3D::EventHandler::OnClientMouseEventConnection = OnClientMouseEvent::connection

Définition d'une connexion au signal d'évènement de souris.

Documentation des constructeurs et destructeur

◆ EventHandler()

Castor3D::EventHandler::EventHandler ( bool  p_catchMouseEvents)
inlineexplicit

◆ ~EventHandler()

virtual Castor3D::EventHandler::~EventHandler ( )
inlinevirtual

Documentation des fonctions membres

◆ CatchesMouseEvents()

bool Castor3D::EventHandler::CatchesMouseEvents ( ) const
inline

◆ CatchesReturnKey()

bool Castor3D::EventHandler::CatchesReturnKey ( ) const
inline

◆ CatchesTabKey()

bool Castor3D::EventHandler::CatchesTabKey ( ) const
inline

◆ Connect() [1/3]

void Castor3D::EventHandler::Connect ( MouseEventType  p_event,
ClientMouseFunction  p_function 
)
inline

◆ Connect() [2/3]

void Castor3D::EventHandler::Connect ( KeyboardEventType  p_event,
ClientKeyboardFunction  p_function 
)
inline

◆ Connect() [3/3]

void Castor3D::EventHandler::Connect ( HandlerEventType  p_event,
ClientHandlerFunction  p_function 
)
inline

◆ ProcessEvents()

void Castor3D::EventHandler::ProcessEvents ( )
inline

◆ ProcessHandlerEvent()

void Castor3D::EventHandler::ProcessHandlerEvent ( HandlerEventSPtr  p_event)
inlineprotected

Références C3D_API, et m_handlerSlots.

Référencé par PushEvent().

+ Voici le graphe des appelants de cette fonction :

◆ ProcessKeyboardEvent()

void Castor3D::EventHandler::ProcessKeyboardEvent ( KeyboardEventSPtr  p_event)
inlineprotected

Références m_keyboardSlots.

Référencé par PushEvent().

+ Voici le graphe des appelants de cette fonction :

◆ ProcessMouseEvent()

void Castor3D::EventHandler::ProcessMouseEvent ( MouseEventSPtr  p_event)
inlineprotected

Références m_mouseSlots.

Référencé par PushEvent().

+ Voici le graphe des appelants de cette fonction :

◆ PushEvent() [1/3]

void Castor3D::EventHandler::PushEvent ( MouseEvent const &  p_event)
inline

Références ProcessMouseEvent().

+ Voici le graphe d'appel pour cette fonction :

◆ PushEvent() [2/3]

void Castor3D::EventHandler::PushEvent ( KeyboardEvent const &  p_event)
inline

Références ProcessKeyboardEvent().

+ Voici le graphe d'appel pour cette fonction :

◆ PushEvent() [3/3]

void Castor3D::EventHandler::PushEvent ( HandlerEvent const &  p_event)
inline

Références ProcessHandlerEvent().

+ Voici le graphe d'appel pour cette fonction :

◆ SetCatchesMouseEvents()

void Castor3D::EventHandler::SetCatchesMouseEvents ( bool  p_value)
inline

Documentation des données membres

◆ m_handlerSlots

std::array< OnClientHandlerEvent, size_t( HandlerEventType::eCount ) > Castor3D::EventHandler::m_handlerSlots
protected

Les slots d'évènements clavier.

Référencé par Connect(), et ProcessHandlerEvent().

◆ m_handlerSlotsConnections

std::array< std::vector< OnClientHandlerEventConnection >, size_t( HandlerEventType::eCount ) > Castor3D::EventHandler::m_handlerSlotsConnections
protected

Les connexions aux slots d'évènements de gestionnaire.

Référencé par Connect().

◆ m_keyboardSlots

std::array< OnClientKeyboardEvent, size_t( KeyboardEventType::eCount ) > Castor3D::EventHandler::m_keyboardSlots
protected

Les slots d'évènements clavier.

Référencé par Connect(), et ProcessKeyboardEvent().

◆ m_keyboardSlotsConnections

std::array< std::vector< OnClientKeyboardEventConnection >, size_t( KeyboardEventType::eCount ) > Castor3D::EventHandler::m_keyboardSlotsConnections
protected

Les connexions aux slots d'évènements de gestionnaire.

Référencé par Connect().

◆ m_mouseSlots

std::array< OnClientMouseEvent, size_t( MouseEventType::eCount ) > Castor3D::EventHandler::m_mouseSlots
protected

Les slots d'évènements souris.

Référencé par Connect(), et ProcessMouseEvent().

◆ m_mouseSlotsConnections

std::array< std::vector< OnClientMouseEventConnection >, size_t( MouseEventType::eCount ) > Castor3D::EventHandler::m_mouseSlotsConnections
protected

Les connexions aux slots d'évènements souris.

Référencé par Connect().


La documentation de cette classe a été générée à partir du fichier suivant :