VisuTwin Canvas
C++ 3D Engine — Metal Backend
Loading...
Searching...
No Matches
visutwin::canvas::EventHandler Class Reference

#include <core/eventHandler.h>

Inheritance diagram for visutwin::canvas::EventHandler:
[legend]

Public Member Functions

template<typename... Args>
EventHandlerfire (const std::string &name, Args &&... args)
bool hasEvent (const std::string &name) const
void initEventHandler ()
template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandleroff (const std::string &name, Callback &&callback, void *scope=nullptr)
EventHandleroff (const std::string &name="", const HandleEventCallback &callback=HandleEventCallback(), void *scope=nullptr)
EventHandleroffByHandle (EventHandle *handle)
template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandleon (const std::string &name, Callback &&callback, void *scope=nullptr)
EventHandleon (const std::string &name, HandleEventCallback callback, void *scope=nullptr)
template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandleonce (const std::string &name, Callback &&callback, void *scope=nullptr)
EventHandleonce (const std::string &name, HandleEventCallback callback, void *scope=nullptr)
virtual ~EventHandler ()=default

Protected Member Functions

EventHandleaddCallback (const std::string &name, HandleEventCallback callback, void *scope=nullptr, bool once=false)

Detailed Description

Abstract base class that implements functionality for event handling

Definition at line 60 of file eventHandler.h.

Constructor & Destructor Documentation

◆ ~EventHandler()

virtual visutwin::canvas::EventHandler::~EventHandler ( )
virtualdefault

Member Function Documentation

◆ addCallback()

EventHandle * visutwin::canvas::EventHandler::addCallback ( const std::string & name,
HandleEventCallback callback,
void * scope = nullptr,
bool once = false )
protected

Definition at line 65 of file eventHandler.cpp.

References once().

Referenced by on(), and once().

◆ fire()

◆ hasEvent()

bool visutwin::canvas::EventHandler::hasEvent ( const std::string & name) const
nodiscard

Definition at line 214 of file eventHandler.cpp.

References hasEvent().

Referenced by hasEvent().

◆ initEventHandler()

void visutwin::canvas::EventHandler::initEventHandler ( )

Definition at line 220 of file eventHandler.cpp.

References initEventHandler().

Referenced by initEventHandler().

◆ off() [1/2]

template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandler * visutwin::canvas::EventHandler::off ( const std::string & name,
Callback && callback,
void * scope = nullptr )
inline

Definition at line 88 of file eventHandler.h.

References off().

◆ off() [2/2]

EventHandler * visutwin::canvas::EventHandler::off ( const std::string & name = "",
const HandleEventCallback & callback = HandleEventCallback(),
void * scope = nullptr )

Definition at line 89 of file eventHandler.cpp.

Referenced by off().

◆ offByHandle()

EventHandler * visutwin::canvas::EventHandler::offByHandle ( EventHandle * handle)

Definition at line 178 of file eventHandler.cpp.

References offByHandle(), and visutwin::canvas::EventHandle::setRemoved().

Referenced by offByHandle().

◆ on() [1/2]

template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandle * visutwin::canvas::EventHandler::on ( const std::string & name,
Callback && callback,
void * scope = nullptr )
inline

Definition at line 69 of file eventHandler.h.

References on().

◆ on() [2/2]

EventHandle * visutwin::canvas::EventHandler::on ( const std::string & name,
HandleEventCallback callback,
void * scope = nullptr )

Definition at line 55 of file eventHandler.cpp.

References addCallback().

Referenced by on().

◆ once() [1/2]

template<typename Callback>
requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>)
EventHandle * visutwin::canvas::EventHandler::once ( const std::string & name,
Callback && callback,
void * scope = nullptr )
inline

Definition at line 76 of file eventHandler.h.

References once().

◆ once() [2/2]

EventHandle * visutwin::canvas::EventHandler::once ( const std::string & name,
HandleEventCallback callback,
void * scope = nullptr )

Definition at line 60 of file eventHandler.cpp.

References addCallback().

Referenced by addCallback(), and once().


The documentation for this class was generated from the following files: