Guiliani  Version 2.5 revision 7293 (documentation build 13)
GUIInputWindows.h
1/*
2* Copyright (C) TES Electronic Solutions GmbH,
3* All Rights Reserved.
4* Contact: info@guiliani.de
5*
6* This file is part of the Guiliani HMI framework
7* for the development of graphical user interfaces on embedded systems.
8*/
9
10#ifndef _GUIINPUTWINDOWS_H_
11#define _GUIINPUTWINDOWS_H_
12
13#include "eC_Types.h"
14#include "GUIInputMedia.h"
16#include <windows.h>
17
18class CGUIEvent;
19
20// Definition similar to windowsx.h GET_X_LPARAM(lp) used for Mousewheel
21// include "windowsx.h" not usable because _WIN32_WINNT is not defined and therefore the function
22// will not be declared
23
26{
27public:
32 static void CreateInstance(
33 const HWND &hWnd,
34 const eC_Bool& bEmulateTouchScreen = false);
35
36 virtual CGUIEvent* GetEvent(eC_UInt uiIdleTime);
37
38 virtual void StopIdle();
39
43 void SetEmulateTouchScreen(const eC_Bool& bEmulateTouchScreen);
44
48 eC_Bool GetEmulateTouchScreen() const;
49
50protected:
55 virtual BOOL ReadMessageFromWindowsQueue(MSG &kMsg, eC_UInt uiIdleTime);
56
61
67 const HWND &hWnd,
68 const eC_Bool& bEmulateTouchScreen = false);
70
77 GUIKeyIdentifier_t GetKeyID(UINT virtualKeyCode, eC_UInt uiModifiers);
78
83 eC_Int GetXPosition(const LPARAM& lParam);
84
89 eC_Int GetYPosition(const LPARAM& lParam);
90
91protected:
93 HWND m_hWnd;
94
97
100
103
106
108 eC_Bool m_bStopIdle;
109
112
113private:
117 CGUIInputWindows(const CGUIInputWindows& kSource);
118
122 CGUIInputWindows& operator=(const CGUIInputWindows& kSource);
123};
124#endif
GUIKeyIdentifier_t
Platform independent key identifiers.
Definition: GUIEventTypeResource.h:205
Base class for Guiliani Events.
Definition: GUIEvent.h:26
Definition: GUIInputMedia.h:29
Standard input Wrapper for systems running a windows OS.
Definition: GUIInputWindows.h:26
static void CreateInstance(const HWND &hWnd, const eC_Bool &bEmulateTouchScreen=false)
eC_Bool GetEmulateTouchScreen() const
virtual CGUIEvent * GetEvent(eC_UInt uiIdleTime)
eC_Int GetXPosition(const LPARAM &lParam)
CGUIInputWindows(const HWND &hWnd, const eC_Bool &bEmulateTouchScreen=false)
eC_Bool m_bRightButtonPressed
Indicate that the right mouse button is currently pressed.
Definition: GUIInputWindows.h:105
virtual BOOL ReadMessageFromWindowsQueue(MSG &kMsg, eC_UInt uiIdleTime)
GUIKeyIdentifier_t GetKeyID(UINT virtualKeyCode, eC_UInt uiModifiers)
virtual void StopIdle()
eC_Int GetYPosition(const LPARAM &lParam)
virtual CGUIEvent * CreateGuilianiEventFromWindowsMessage(MSG &kMsg)
void SetEmulateTouchScreen(const eC_Bool &bEmulateTouchScreen)
eC_Bool m_bStopIdle
Set to True if StopIdle() was called, reset to False by GetEvent()
Definition: GUIInputWindows.h:108
eC_Bool m_bLeftButtonPressed
Indicate that the left mouse button is currently pressed.
Definition: GUIInputWindows.h:102
int m_iLastX
last mouse-position x
Definition: GUIInputWindows.h:96
eC_Bool m_bEmulateTouchScreen
if this is true the moving of mouse will only create ET_MOUSEMOVE while a mouse-button is pressed
Definition: GUIInputWindows.h:111
int m_iLastY
last mouse-position y
Definition: GUIInputWindows.h:99
HWND m_hWnd
Handle to associated window.
Definition: GUIInputWindows.h:93