10#ifndef GUIEVENTHANDLER__H_
11#define GUIEVENTHANDLER__H_
13#include "eC_TList_doubleLinked.h"
18#include "GUIComponentManager.h"
22#define GETEVENTHDL CGUIComponentManager::GetInstance().GetEventHandler()
25const eC_UInt cuiDefaultLongClickTime = 1000;
27const eC_UInt cuiDefaultDoubleClickTime = 300;
285 void HandleLongClick(eC_Bool& bHandled);
295 void HandleChar(
CGUIEvent* pkEvent, eC_Bool& bHandled);
301 void HandleKeyUp(
CGUIEvent* pkEvent, eC_Bool& bHandled);
307 void HandleKeyDown(
CGUIEvent* pkEvent, eC_Bool& bHandled);
313 void HandleMouseWheel(
CGUIEvent* pkEvent, eC_Bool& bHandled);
319 void HandleMouseMove(
CGUIEvent* pkEvent, eC_Bool& bHandled);
325 void HandleRButtonDown(
CGUIEvent* pkEvent, eC_Bool& bHandled);
331 void HandleLButtonDown(
CGUIEvent* pkEvent, eC_Bool& bHandled);
337 void HandleRButtonUp(
CGUIEvent* pkEvent, eC_Bool& bHandled);
343 void HandleLButtonUp(
CGUIEvent* pkEvent, eC_Bool& bHandled);
345#ifdef GUILIANI_GESTURES_ACTIVE
348 void HandleGesture(
CGUIEvent* pkEvent, eC_Bool& bHandled);
382 void SetPressedObject(
CGUIObject* pObj, eC_Bool bOverwriteOriginal =
false);
387 void SetHighlightedObject(
CGUIObject* pHighlightedObject);
447 eC_Bool m_bLeftButtonPressed;
449 eC_Bool m_bRightButtonPressed;
457 eC_Bool m_bMouseUsed;
463 eC_Bool m_bDisableEventHandling;
472 eC_UInt m_uiScrollModifiers;
482 eC_Int m_iDragStartX;
484 eC_Int m_iDragStartY;
487 eC_Int m_iDragThreshold;
502 eC_Bool m_bHighlightingDisabled;
505 eC_Bool m_bIsDragging;
508 eC_UInt m_uiLastClickTime;
511 eC_UInt m_uiDoubleClickTime;
514 eC_UInt m_uiLastButtonDownTime;
518 eC_UInt m_uiLongClickTime;
521 eC_Bool m_bLongClickGenerated;
529 eC_Bool m_bForceDoButtonUpToPressedObject;
535 eC_Bool m_bIgnorePressedObjectRect;
540 eC_Bool m_bDragAndClick;
Helper Macros in Guiliani
ObjectHandle_t
List of object resource ids.
Definition: GUIObjectHandleResource.h:55
central component-manager
Definition: GUIComponentManager.h:62
This is the Guiliani base class for all composite objects.
Definition: GUICompositeObject.h:70
This is the event handler.
Definition: GUIEventHandler.h:44
void SetHighlightingDisabled(const eC_Bool bDisabled)
CGUIObject * GetHighlightedObject() const
const CGUIEvent * GetCurrentEvent() const
void GetDragStart(eC_Int &iDragStartX, eC_Int &iDragStartY)
void SetModalDialog(CGUICompositeObject *pModalDialog)
eC_Bool IsLeftMouseButtonPressed() const
Definition: GUIEventHandler.h:262
void RemoveModalDialogException(CGUICompositeObject *pkException)
CGUIObject * GetFocussedObject() const
CGUIObject * GetObjectUnderMousePointer() const
void SetDisableEventHandling(eC_Bool bDisableEventHandling)
void SetDragThreshold(const eC_Int iDragThreshold)
eC_Bool GetDisableEventHandling() const
void SetScrollModifiers(eC_UInt uiScrollModifiers)
static void CreateInstance()
eC_Bool IsWithinModalDialogIfAny(const CGUIObject *pObj) const
void SetMouseWasUsed(eC_Bool bMouseUsed)
eC_Bool IsObjModalDialog(CGUICompositeObject *const pObj) const
eC_Bool ExecuteClickHandler(CGUIObject *pkObject)
void GetLastMousePos(eC_UInt &uiMouseX, eC_UInt &uiMouseY) const
void AddModalDialogException(CGUICompositeObject *pkException)
void ReleaseModalDialog(CGUICompositeObject *pModalDialog)
CGUIObject * GetDraggedObject() const
eC_UInt GetDoubleClickTime() const
void SetDoubleClickTime(const eC_UInt uiDoubleClickTime)
eC_UInt GetLongClickTime() const
void SetLongClickTime(const eC_UInt uiLongClickTime)
eC_Bool MouseWasUsed() const
CGUIObject * GetPressedObject() const
static void DeleteInstance()
void SetLegacyBehaviour(const eC_Bool bLegacyBehaviour)
eC_Bool IsRightMouseButtonPressed() const
Definition: GUIEventHandler.h:267
CGUIObject * GetFormerlyUnderMouseObject() const
CGUIObject * GetFormerlyFocussedObject() const
CGUICompositeObject * GetCurrentModalDialog() const
eC_Int GetDragThreshold() const
eC_UInt GetLastButtonDownTime()
Base class for Guiliani Events.
Definition: GUIEvent.h:26
GUI base class for any Guiliani application.
Definition: GUI.h:39
Represents platform-independent mouse events.
Definition: GUIEvent.h:177
This is the Guiliani base class all controls are derived from.
Definition: GUIObject.h:81