Castor3D 0.15.0
Multiplatform 3D engine
Fonctions membres publiques | Amis | Liste de tous les membres
Référence de la classe castor3d::ControlsManager

#include <ControlsManager.hpp>

Graphe d'héritage de castor3d::ControlsManager:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::ControlsManager:
Collaboration graph
[légende]

Fonctions membres publiques

void setDefaultFont (castor::FontResPtr font)
 sets the default font used by controls
 
General
C3D_API ControlsManager (Engine &engine)
 
Style management
C3D_API ThemeRPtr createTheme (castor::String const &name, Scene *scene)
 
C3D_API ThemeRPtr getTheme (castor::String const &name) const
 
auto & getThemes () const
 
C3D_API ButtonStyleRPtr getButtonStyle (castor::String const &name) const override
 
C3D_API ComboBoxStyleRPtr getComboBoxStyle (castor::String const &name) const override
 
C3D_API EditStyleRPtr getEditStyle (castor::String const &name) const override
 
C3D_API ExpandablePanelStyleRPtr getExpandablePanelStyle (castor::String const &name) const override
 
C3D_API FrameStyleRPtr getFrameStyle (castor::String const &name) const override
 
C3D_API ListBoxStyleRPtr getListBoxStyle (castor::String const &name) const override
 
C3D_API PanelStyleRPtr getPanelStyle (castor::String const &name) const override
 
C3D_API ProgressStyleRPtr getProgressStyle (castor::String const &name) const override
 
C3D_API ScrollBarStyleRPtr getScrollBarStyle (castor::String const &name) const override
 
C3D_API SliderStyleRPtr getSliderStyle (castor::String const &name) const override
 
C3D_API StaticStyleRPtr getStaticStyle (castor::String const &name) const override
 
- Fonctions membres publiques hérités de castor3d::UserInputListener
C3D_API UserInputListener (Engine &engine, castor::String const &name)
 Constructeur.
 
virtual C3D_API ~UserInputListener ()
 Destructeur.
 
C3D_API bool initialise ()
 Initialise le listener.
 
C3D_API void cleanup ()
 Nettoie le listener.
 
C3D_API void processEvents ()
 Traite tous les évènements.
 
castor::Position const & getMousePosition () const
 
EventHandlerRPtr getActiveControl () const
 
EventHandlerRPtr getFocusedControl () const
 
FrameListenergetFrameListener () const
 
C3D_API void registerMouseMoveAction (castor::String const &handler, OnMouseMoveActionFunction function)
 Enregistre une fonction à appeler lorsqu'un évènement de déplacement de souris est lancé par le handler donné.
 
C3D_API void registerClickAction (castor::String const &handler, OnClickActionFunction function)
 Enregistre une fonction à appeler lorsqu'un évènement de clic de souris est lancé par le handler donné.
 
C3D_API void registerSelectAction (castor::String const &handler, OnSelectActionFunction function)
 Enregistre une fonction à appeler lorsqu'un évènement de sélection est lancé par le handler donné.
 
C3D_API void registerTextAction (castor::String const &handler, OnTextActionFunction function)
 Enregistre une fonction à appeler lorsqu'un évènement de texte est lancé par le handler donné.
 
C3D_API void registerExpandAction (castor::String const &handler, OnExpandActionFunction function)
 Enregistre une fonction à appeler lorsqu'un évènement d'expansion est lancé par le handler donné.
 
C3D_API void registerCursorAction (OnCursorActionFunction function)
 Enregistre une fonction à appeler lorsqu'un évènement de curseur de souris est lancé par le handler donné.
 
C3D_API void registerClipboardTextAction (OnClipboardTextActionFunction function)
 Enregistre une fonction à appeler lorsqu'un évènement de presse-papier est lancé par le handler donné.
 
C3D_API void unregisterMouseMoveAction (castor::String const &handler)
 Désenregistre la fonction à appeler lorsqu'un évènement de déplacement de souris est lancé par le handler donné.
 
C3D_API void unregisterClickAction (castor::String const &handler)
 Désenregistre la fonction à appeler lorsqu'un évènement de clic de souris est lancé par le handler donné.
 
C3D_API void unregisterSelectAction (castor::String const &handler)
 Désenregistre la fonction à appeler lorsqu'un évènement de sélection est lancé par le handler donné.
 
C3D_API void unregisterTextAction (castor::String const &handler)
 Désenregistre la fonction à appeler lorsqu'un évènement de texte est lancé par le handler donné.
 
C3D_API void unregisterExpandAction (castor::String const &handler)
 Désenregistre la fonction à appeler lorsqu'un évènement d'expansion est lancé par le handler donné.
 
C3D_API void unregisterCursorAction ()
 Désenregistre la fonction à appeler lorsqu'un évènement de curseur de souris est lancé par le handler donné.
 
C3D_API void unregisterClipboardTextAction ()
 Désenregistre la fonction à appeler lorsqu'un évènement de presse-papier est lancé par le handler donné.
 
C3D_API void onMouseMoveAction (castor::String const &handler) const
 Evènement lancé par le handler si la souris est déplacée au dessus de sa surface.
 
C3D_API void onClickAction (castor::String const &handler) const
 Evènement lancé par le handler s'il est cliqué et qu'il le supporte.
 
C3D_API void onSelectAction (castor::String const &handler, int index) const
 Evènement lancé par le handler lorsqu'un de ses sous éléments est sélectionné.
 
C3D_API void onTextAction (castor::String const &handler, castor::U32String const &text) const
 Evènement lancé par le handler lorsque son texte a changé.
 
C3D_API void onExpandAction (castor::String const &handler, bool expand) const
 Evènement lancé par le handler lorsque son expansion est changée.
 
C3D_API void onCursorAction (MouseCursor cursor) const
 Evènement lorsque le cureur de souris est changé.
 
C3D_API castor::U32String onClipboardTextAction (bool set, castor::U32String text) const
 Evènement lancé lorsqu'une interaction avec le presse-papier est demandée.
 
C3D_API void enableHandler (castor::String const &handler)
 Active un handler.
 
C3D_API void disableHandler (castor::String const &handler)
 Désactive un handler.
 
C3D_API bool fireMouseMove (castor::Position const &position, bool ctrl, bool alt, bool shift)
 Lance un évènement de déplacement de souris.
 
C3D_API bool fireMouseButtonPushed (MouseButton button, bool ctrl, bool alt, bool shift)
 Lance un évènement de bouton de souris appuyé.
 
C3D_API bool fireMouseButtonReleased (MouseButton button, bool ctrl, bool alt, bool shift)
 Lance un évènement de bouton de souris relâché.
 
C3D_API bool fireMouseWheel (castor::Position const &offsets, bool ctrl, bool alt, bool shift)
 Lance un évènement de molette de souris.
 
C3D_API bool fireKeydown (KeyboardKey key, bool ctrl, bool alt, bool shift)
 Lance un évènement de touche de clavier appuyée.
 
C3D_API bool fireKeyUp (KeyboardKey key, bool ctrl, bool alt, bool shift)
 Lance un évènement de touche de clavier relâchée.
 
C3D_API bool fireChar (KeyboardKey key, castor::String const &c)
 Lance un évènement de caractère imprimable.
 
- Fonctions membres publiques hérités de castor3d::StylesHolder
virtual C3D_API ~StylesHolder () noexcept=default
 
 StylesHolder (castor::String name, Engine &engine)
 
castor::FontResPtr getDefaultFont () const
 Retrieves the default font used by controls.
 
void setDefaultFont (castor::FontResPtr font)
 sets the default font used by controls
 
C3D_API ButtonStyleRPtr createButtonStyle (castor::String name, Scene *scene)
 
C3D_API ComboBoxStyleRPtr createComboBoxStyle (castor::String name, Scene *scene)
 
C3D_API EditStyleRPtr createEditStyle (castor::String name, Scene *scene)
 
C3D_API ExpandablePanelStyleRPtr createExpandablePanelStyle (castor::String name, Scene *scene)
 
C3D_API FrameStyleRPtr createFrameStyle (castor::String name, Scene *scene)
 
C3D_API ListBoxStyleRPtr createListBoxStyle (castor::String name, Scene *scene)
 
C3D_API PanelStyleRPtr createPanelStyle (castor::String name, Scene *scene)
 
C3D_API ProgressStyleRPtr createProgressStyle (castor::String name, Scene *scene)
 
C3D_API ScrollBarStyleRPtr createScrollBarStyle (castor::String name, Scene *scene)
 
C3D_API SliderStyleRPtr createSliderStyle (castor::String name, Scene *scene)
 
C3D_API StaticStyleRPtr createStaticStyle (castor::String name, Scene *scene)
 
virtual C3D_API ButtonStyleRPtr getButtonStyle (castor::String const &name) const
 
virtual C3D_API ComboBoxStyleRPtr getComboBoxStyle (castor::String const &name) const
 
virtual C3D_API EditStyleRPtr getEditStyle (castor::String const &name) const
 
virtual C3D_API ExpandablePanelStyleRPtr getExpandablePanelStyle (castor::String const &name) const
 
virtual C3D_API FrameStyleRPtr getFrameStyle (castor::String const &name) const
 
virtual C3D_API ListBoxStyleRPtr getListBoxStyle (castor::String const &name) const
 
virtual C3D_API PanelStyleRPtr getPanelStyle (castor::String const &name) const
 
virtual C3D_API ProgressStyleRPtr getProgressStyle (castor::String const &name) const
 
virtual C3D_API ScrollBarStyleRPtr getScrollBarStyle (castor::String const &name) const
 
virtual C3D_API SliderStyleRPtr getSliderStyle (castor::String const &name) const
 
virtual C3D_API StaticStyleRPtr getStaticStyle (castor::String const &name) const
 
template<typename StyleT >
StyleT * getStyle (castor::String const &name) const
 
auto & getButtonStyles () const noexcept
 
auto & getComboBoxStyles () const noexcept
 
auto & getEditStyles () const noexcept
 
auto & getExpandablePanelStyles () const noexcept
 
auto & getFrameStyles () const noexcept
 
auto & getListBoxStyles () const noexcept
 
auto & getPanelStyles () const noexcept
 
auto & getProgressStyles () const noexcept
 
auto & getScrollBarStyles () const noexcept
 
auto & getSliderStyles () const noexcept
 
auto & getStaticStyles () const noexcept
 

Amis

class Control
 
class ButtonCtrl
 
class ComboBoxCtrl
 
class EditCtrl
 
class ExpandablePanelCtrl
 
class FrameCtrl
 
class ListBoxCtrl
 
class PanelCtrl
 
class ScrollBarCtrl
 
class SliderCtrl
 

Controls management

static C3D_API castor::String Name
 
C3D_API ControlRPtr registerControl (ControlUPtr control)
 
template<typename ControlT >
ControlT * registerControlT (castor::UniquePtr< ControlT > control)
 
C3D_API void unregisterControl (Control &control)
 
C3D_API void create (ControlRPtr control)
 
C3D_API void destroy (ControlRPtr control)
 
C3D_API void addControl (ControlRPtr control)
 
C3D_API void removeControl (ControlID id)
 
C3D_API ControlRPtr getControl (ControlID id) const
 
C3D_API ControlRPtr findControl (castor::String const &name) const
 
C3D_API std::vector< ControlRPtr > getRootControls () const
 
static C3D_API castor::AttributeParsers createParsers (castor3d::Engine &engine)
 
static C3D_API castor::StrUInt32Map createSections ()
 
static C3D_API void * createContext (castor::FileParserContext &context)
 

Membres hérités additionnels

- Types publics hérités de castor3d::UserInputListener
using OnClickActionFunction = std::function< void() >
 
using OnMouseMoveActionFunction = std::function< void(castor::Position const &) >
 
using OnSelectActionFunction = std::function< void(int) >
 
using OnTextActionFunction = std::function< void(castor::U32String const &) >
 
using OnExpandActionFunction = std::function< void(bool) >
 
using OnClipboardTextActionFunction = std::function< castor::U32String(bool, castor::U32String) >
 
using OnCursorActionFunction = std::function< void(MouseCursor) >
 
- Fonctions membres protégées hérités de castor3d::UserInputListener
std::vector< EventHandlerRPtr > doGetHandlers () const
 
bool doHasHandlers () const
 
EventHandlerRPtr doAddHandler (EventHandlerUPtr handler)
 Supprime un gestionnaire.
 
void doRemoveHandlerNL (EventHandler const &handler)
 Supprime un gestionnaire.
 
void doRemoveHandler (EventHandler const &handler)
 Supprime un gestionnaire.
 
- Fonctions membres protégées hérités de castor3d::StylesHolder
auto & getHolderName () const noexcept
 
void cleanupStyles () noexcept
 
- Attributs protégés hérités de castor3d::UserInputListener
std::mutex m_mutexHandlers
 
std::vector< EventHandlerUPtr > m_handlers
 
FrameListenerRPtr m_frameListener
 

Documentation des constructeurs et destructeur

◆ ControlsManager()

C3D_API castor3d::ControlsManager::ControlsManager ( Engine engine)
explicit

Constructor

Paramètres
[in]engineThe engine

Documentation des fonctions membres

◆ addControl()

C3D_API void castor3d::ControlsManager::addControl ( ControlRPtr  control)

Adds a control that can an event target

Paramètres
[in]controlThe control

◆ create()

C3D_API void castor3d::ControlsManager::create ( ControlRPtr  control)

Creates the given control's overlays and binds its callbacks to appropriate events

Paramètres
[in]controlThe control

◆ createContext()

static C3D_API void * castor3d::ControlsManager::createContext ( castor::FileParserContext &  context)
static

◆ createParsers()

static C3D_API castor::AttributeParsers castor3d::ControlsManager::createParsers ( castor3d::Engine engine)
static

◆ createSections()

static C3D_API castor::StrUInt32Map castor3d::ControlsManager::createSections ( )
static

◆ createTheme()

C3D_API ThemeRPtr castor3d::ControlsManager::createTheme ( castor::String const &  name,
Scene scene 
)

Creates a theme if it doesn't exist, returns the existing one if it exists

Paramètres
[in]nameThe theme name
[in]sceneThe parent scene
Renvoie
The theme.

◆ destroy()

C3D_API void castor3d::ControlsManager::destroy ( ControlRPtr  control)

Destroys the given control's overlays and unbinds its callbacks from appropriate events.

Paramètres
[in]controlThe control.

◆ findControl()

C3D_API ControlRPtr castor3d::ControlsManager::findControl ( castor::String const &  name) const

Retrieves a control.

Paramètres
[in]nameThe control name.
Renvoie
The control.

◆ getButtonStyle()

C3D_API ButtonStyleRPtr castor3d::ControlsManager::getButtonStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The button style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getComboBoxStyle()

C3D_API ComboBoxStyleRPtr castor3d::ControlsManager::getComboBoxStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The combo box style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getControl()

C3D_API ControlRPtr castor3d::ControlsManager::getControl ( ControlID  id) const

Retrieves a control.

Paramètres
[in]idThe control ID.
Renvoie
The control.

◆ getEditStyle()

C3D_API EditStyleRPtr castor3d::ControlsManager::getEditStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The edit style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getExpandablePanelStyle()

C3D_API ExpandablePanelStyleRPtr castor3d::ControlsManager::getExpandablePanelStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The expandable panel style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getFrameStyle()

C3D_API FrameStyleRPtr castor3d::ControlsManager::getFrameStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The frame style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getListBoxStyle()

C3D_API ListBoxStyleRPtr castor3d::ControlsManager::getListBoxStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The list box style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getPanelStyle()

C3D_API PanelStyleRPtr castor3d::ControlsManager::getPanelStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The panel style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getProgressStyle()

C3D_API ProgressStyleRPtr castor3d::ControlsManager::getProgressStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The progress style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getRootControls()

C3D_API std::vector< ControlRPtr > castor3d::ControlsManager::getRootControls ( ) const
Renvoie
The root controls.

◆ getScrollBarStyle()

C3D_API ScrollBarStyleRPtr castor3d::ControlsManager::getScrollBarStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The scrollbar style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getSliderStyle()

C3D_API SliderStyleRPtr castor3d::ControlsManager::getSliderStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The slider style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getStaticStyle()

C3D_API StaticStyleRPtr castor3d::ControlsManager::getStaticStyle ( castor::String const &  name) const
overridevirtual
Renvoie
The static style with given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

Réimplémentée à partir de castor3d::StylesHolder.

◆ getTheme()

C3D_API ThemeRPtr castor3d::ControlsManager::getTheme ( castor::String const &  name) const
Renvoie
The theme for given name (nullptr if it doesn't exist).
Paramètres
[in]nameThe name

◆ getThemes()

auto & castor3d::ControlsManager::getThemes ( ) const
inline

◆ registerControl()

C3D_API ControlRPtr castor3d::ControlsManager::registerControl ( ControlUPtr  control)

Adds a control that still needs to be created.

Paramètres
[in]controlThe control

Référencé par registerControlT().

Voici le graphe des appelants de cette fonction :

◆ registerControlT()

template<typename ControlT >
ControlT * castor3d::ControlsManager::registerControlT ( castor::UniquePtr< ControlT >  control)
inline

Références registerControl().

Voici le graphe d'appel pour cette fonction :

◆ removeControl()

C3D_API void castor3d::ControlsManager::removeControl ( ControlID  id)

Removes a control

Paramètres
[in]idThe control ID

◆ setDefaultFont()

void castor3d::StylesHolder::setDefaultFont ( castor::FontResPtr  font)
inline

sets the default font used by controls

Paramètres
[in]fontThe font

◆ unregisterControl()

C3D_API void castor3d::ControlsManager::unregisterControl ( Control control)

Removes a control that has been destroyed.

Paramètres
[in]controlThe control

Documentation des fonctions amies et associées

◆ ButtonCtrl

friend class ButtonCtrl
friend

◆ ComboBoxCtrl

friend class ComboBoxCtrl
friend

◆ Control

friend class Control
friend

◆ EditCtrl

friend class EditCtrl
friend

◆ ExpandablePanelCtrl

friend class ExpandablePanelCtrl
friend

◆ FrameCtrl

friend class FrameCtrl
friend

◆ ListBoxCtrl

friend class ListBoxCtrl
friend

◆ PanelCtrl

friend class PanelCtrl
friend

◆ ScrollBarCtrl

friend class ScrollBarCtrl
friend

◆ SliderCtrl

friend class SliderCtrl
friend

Documentation des données membres

◆ Name

C3D_API castor::String castor3d::ControlsManager::Name
static

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