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

Références m_mouseSlots, et m_mouseSlotsConnections.

Référencé par connect(), et castor3d::NonClientEventHandler< Derived >::connectNC().

+ Voici le graphe des appelants de cette fonction :

◆ connect() [2/3]

void castor3d::EventHandler::connect ( KeyboardEventType  p_event,
ClientKeyboardFunction  p_function 
)
inline

Références connect(), m_keyboardSlots, et m_keyboardSlotsConnections.

+ Voici le graphe d'appel pour cette fonction :

◆ connect() [3/3]

void castor3d::EventHandler::connect ( HandlerEventType  p_event,
ClientHandlerFunction  p_function 
)
inline

Références connect(), m_handlerSlots, et m_handlerSlotsConnections.

+ Voici le graphe d'appel pour cette fonction :

◆ 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 :