Blender  V3.3
GHOST_EventManager.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later
2  * Copyright 2001-2002 NaN Holding BV. All rights reserved. */
3 
9 #pragma once
10 
11 #include <deque>
12 #include <vector>
13 
14 #include "GHOST_IEventConsumer.h"
15 
25  public:
30 
35 
41 
48 
56 
60  void dispatchEvent(GHOST_IEvent *event);
61 
66  void dispatchEvent();
67 
72  void dispatchEvents();
73 
80 
87 
92  void removeWindowEvents(GHOST_IWindow *window);
93 
102 
103  protected:
107  void disposeEvents();
108 
110  typedef std::deque<GHOST_IEvent *> TEventStack;
111 
113  std::deque<GHOST_IEvent *> m_events;
114  std::deque<GHOST_IEvent *> m_handled_events;
115 
117  typedef std::vector<GHOST_IEventConsumer *> TConsumerVector;
118 
121 
122 #ifdef WITH_CXX_GUARDEDALLOC
123  MEM_CXX_CLASS_ALLOC_FUNCS("GHOST:GHOST_EventManager")
124 #endif
125 };
GHOST_TEventType
Definition: GHOST_Types.h:169
GHOST_TSuccess
Definition: GHOST_Types.h:74
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
void removeWindowEvents(GHOST_IWindow *window)
GHOST_TSuccess addConsumer(GHOST_IEventConsumer *consumer)
GHOST_TSuccess removeConsumer(GHOST_IEventConsumer *consumer)
std::deque< GHOST_IEvent * > m_handled_events
std::deque< GHOST_IEvent * > m_events
TConsumerVector m_consumers
GHOST_TSuccess pushEvent(GHOST_IEvent *event)
std::vector< GHOST_IEventConsumer * > TConsumerVector
std::deque< GHOST_IEvent * > TEventStack
void removeTypeEvents(GHOST_TEventType type, GHOST_IWindow *window=NULL)
unsigned int uint32_t
Definition: stdint.h:80