The Battle for Wesnoth  1.17.4+dev
Classes | Namespaces | Functions
dispatcher_private.hpp File Reference
#include "gui/core/event/dispatcher.hpp"
#include "gui/widgets/widget.hpp"
#include "utils/ranges.hpp"
#include <SDL2/SDL_events.h>
#include <cassert>
Include dependency graph for dispatcher_private.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  gui2::event::dispatcher_implementation
 

Namespaces

 gui2::event
 
 gui2::event::implementation
 

Functions

template<event_category C>
std::vector< std::pair< widget *, ui_event > > gui2::event::implementation::build_event_chain (const ui_event event, widget *dispatcher, widget *w)
 Build the event chain. More...
 
template<>
std::vector< std::pair< widget *, ui_event > > gui2::event::implementation::build_event_chain< event_category::notification > (const ui_event event, widget *dispatcher, widget *w)
 Build the event chain for signal_notification. More...
 
template<>
std::vector< std::pair< widget *, ui_event > > gui2::event::implementation::build_event_chain< event_category::message > (const ui_event event, widget *dispatcher, widget *w)
 Build the event chain for signal_message. More...
 
template<event_category C, typename... F>
bool gui2::event::implementation::fire_event (const ui_event event, const std::vector< std::pair< widget *, ui_event >> &event_chain, widget *dispatcher, widget *w, F &&... params)
 Helper function for fire_event. More...
 
template<event_category C, typename... F>
bool gui2::event::fire_event (const ui_event event, dispatcher *d, widget *w, F &&... params)
 Fires an event. More...
 
template<ui_event click, ui_event double_click, bool(event_executor::*)() const wants_double_click, typename... F>
bool gui2::event::fire_event_double_click (dispatcher *dsp, widget *wgt, F &&... params)