Free Electron
EventContextI.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __window_EventContextI_h__
8 #define __window_EventContextI_h__
9 
10 namespace fe
11 {
12 namespace ext
13 {
14 
15 /**************************************************************************//**
16  @brief Interface for processing queued windowing events
17 
18  @ingroup window
19 *//***************************************************************************/
20 class FE_DL_EXPORT EventContextI:
21  virtual public Component,
22  public CastableAs<EventContextI>
23 {
24  public:
25 virtual void loop(BWORD dropout) =0;
26  /// @brief lock the display for the given thread
27 virtual void threadLock(void) =0;
28  /// @brief unlock the display for the given thread
29 virtual void threadUnlock(void) =0;
30 
31  /** @brief request buttonless mouse motion events
32 
33  This will can substantially increase the
34  number of generated events, so it off
35  by default. */
36 virtual void setPointerMotion(BWORD active) =0;
37 
38  /// @brief check if pointer motion events are on
39 virtual BWORD pointerMotion(void) =0;
40 
41 virtual Real multiplication(void) =0;
42 
43 //~virtual U32 fontBase(void) =0;
44 
45  /// @brief pixel height of the current font
46 //~virtual I32 fontHeight(I32* pAscent=NULL,I32* pDescent=NULL) =0;
47  /// @brief pixel width of string in the current font
48 //~virtual I32 pixelWidth(String string) =0;
49 
50 virtual void registerWindow(WindowI *window) =0;
51 virtual void deregisterWindow(WindowI *window) =0;
52 };
53 
54 } /* namespace ext */
55 } /* namespace fe */
56 
57 #endif /* __window_EventContextI_h__ */
kernel
Definition: namespace.dox:3
General interface to a window.
Definition: WindowI.h:24
Interface for processing queued windowing events.
Definition: EventContextI.h:20
Base for all interfacable components.
Definition: Component.h:20
Per-class participation non-RTTI fallback dynamic casting mechanism.
Definition: Castable.h:192