ezEngine  Release 25.03
ezStandardInputDevice Class Reference

Android standard input device. More...

#include <InputDevice_Platform.h>

Inheritance diagram for ezStandardInputDevice:

Public Member Functions

 ezStandardInputDevice (ezUInt32 uiWindowNumber)
 
virtual void SetShowMouseCursor (bool bShow) override
 Shows or hides the mouse cursor inside the application window.
 
virtual bool GetShowMouseCursor () const override
 Returns whether the mouse cursor is shown.
 
virtual void SetClipMouseCursor (ezMouseCursorClipMode::Enum mode) override
 Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches. More...
 
virtual ezMouseCursorClipMode::Enum GetClipMouseCursor () const override
 Returns whether the mouse is confined to the application window or not.
 
 ezStandardInputDevice (ezUInt32 uiWindowNumber)
 
virtual void SetShowMouseCursor (bool bShow) override
 Shows or hides the mouse cursor inside the application window.
 
virtual bool GetShowMouseCursor () const override
 Returns whether the mouse cursor is shown.
 
virtual void SetClipMouseCursor (ezMouseCursorClipMode::Enum mode) override
 Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches. More...
 
virtual ezMouseCursorClipMode::Enum GetClipMouseCursor () const override
 Returns whether the mouse is confined to the application window or not.
 
 ezStandardInputDevice (ABI::Windows::UI::Core::ICoreWindow *coreWindow)
 
virtual void SetClipMouseCursor (ezMouseCursorClipMode::Enum mode) override
 Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches. More...
 
virtual ezMouseCursorClipMode::Enum GetClipMouseCursor () const override
 Returns whether the mouse is confined to the application window or not.
 
virtual void SetShowMouseCursor (bool bShow) override
 Shows or hides the mouse cursor inside the application window.
 
virtual bool GetShowMouseCursor () const override
 Returns whether the mouse cursor is shown.
 
 ezStandardInputDevice (ezUInt32 uiWindowNumber)
 
void WindowMessage (ezMinWindows::HWND hWnd, ezMinWindows::UINT msg, ezMinWindows::WPARAM wparam, ezMinWindows::LPARAM lparam)
 This function needs to be called by all Windows functions, to pass the input information through to this input device.
 
virtual void SetClipMouseCursor (ezMouseCursorClipMode::Enum mode) override
 Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches. More...
 
virtual ezMouseCursorClipMode::Enum GetClipMouseCursor () const override
 Returns whether the mouse is confined to the application window or not.
 
virtual void SetShowMouseCursor (bool bShow) override
 Shows or hides the mouse cursor inside the application window.
 
virtual bool GetShowMouseCursor () const override
 Returns whether the mouse cursor is shown.
 
- Public Member Functions inherited from ezInputDeviceMouseKeyboard
virtual void SetMouseSpeed (const ezVec2 &vScale)
 Sets the scaling factor that is applied on all (relative) mouse input.
 
ezVec2 GetMouseSpeed () const
 Returns the scaling factor that is applied on all (relative) mouse input.
 
bool IsFocused ()
 Returns if the associated ezWindow has focus.
 
- Public Member Functions inherited from ezInputDevice
 ezInputDevice ()
 Default Constructor.
 
float GetInputSlotState (ezStringView sSlot) const
 Allows to query current input values for the given slot.
 
bool HasDeviceBeenUsedLastFrame () const
 Returns true, if the device was 'used' during the last frame, ie. when it generated input due to some user interaction. More...
 
- Public Member Functions inherited from ezReflectedClass
virtual const ezRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const ezRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T >
EZ_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
 

Static Public Member Functions

static void LocalizeButtonDisplayNames ()
 Calling this function will 'translate' most key names from English to the OS language, by querying that information from the OS. More...
 
- Static Public Member Functions inherited from ezInputDeviceMouseKeyboard
static ezInt32 GetWindowNumberMouseIsOver ()
 Returns the number of the ezWindow over which the mouse moved last.
 
- Static Public Member Functions inherited from ezNoBase
static const ezRTTIGetStaticRTTI ()
 

Protected Member Functions

virtual void InitializeDevice () override
 Override this if you need to do device specific initialization before the first use.
 
virtual void RegisterInputSlots () override
 Override this to register all the input slots that this device exposes. More...
 
virtual void ResetInputSlotValues () override
 Override this, if you need to reset certain input slot values to zero, after the ezInputManager is finished with the current frame update.
 
virtual void UpdateInputSlotValues () override
 Override this, if you need to query the state of the hardware to update the input slots. More...
 
- Protected Member Functions inherited from ezInputDevice
virtual void UpdateHardwareState (ezTime tTimeDifference)
 This function is called once after ezInputManager::Update with the same time delta value. It allows to update hardware state, such as the vibration of gamepad motors.
 

Private Member Functions

virtual void InitializeDevice () override
 Override this if you need to do device specific initialization before the first use.
 
virtual void RegisterInputSlots () override
 Override this to register all the input slots that this device exposes. More...
 
virtual void ResetInputSlotValues () override
 Override this, if you need to reset certain input slot values to zero, after the ezInputManager is finished with the current frame update.
 
virtual void InitializeDevice () override
 Override this if you need to do device specific initialization before the first use.
 
virtual void RegisterInputSlots () override
 Override this to register all the input slots that this device exposes. More...
 
virtual void InitializeDevice () override
 Override this if you need to do device specific initialization before the first use.
 
virtual void RegisterInputSlots () override
 Override this to register all the input slots that this device exposes. More...
 
virtual void ResetInputSlotValues () override
 Override this, if you need to reset certain input slot values to zero, after the ezInputManager is finished with the current frame update.
 

Additional Inherited Members

- Static Protected Member Functions inherited from ezInputDevice
static void RegisterInputSlot (ezStringView sName, ezStringView sDefaultDisplayName, ezBitflags< ezInputSlotFlags > SlotFlags)
 Calls RegisterInputSlot() on the ezInputManager and passes the parameters through.
 
- Protected Attributes inherited from ezInputDeviceMouseKeyboard
ezTime m_DoubleClickTime = ezTime::MakeFromMilliseconds(500)
 
- Protected Attributes inherited from ezInputDevice
ezMap< ezString, float > m_InputSlotValues
 Stores all the values for all input slots that this device handles. More...
 
ezUInt32 m_uiLastCharacter
 If this input device type handles character input, it should write the last typed character into this variable. The ezInputManager calls RetrieveLastCharacter() to query what the user typed last.
 
- Protected Attributes inherited from ezEnumerable< ezInputDevice, ezReflectedClass >
ezEnumerablem_pNextInstance
 
- Static Protected Attributes inherited from ezInputDeviceMouseKeyboard
static ezInt32 s_iMouseIsOverWindowNumber = -1
 

Detailed Description

Android standard input device.

Member Function Documentation

◆ LocalizeButtonDisplayNames()

static void ezStandardInputDevice::LocalizeButtonDisplayNames ( )
static

Calling this function will 'translate' most key names from English to the OS language, by querying that information from the OS.

The OS translation might not always be perfect for all keys. The translation can change when the user changes the keyboard layout. So if he switches from an English layout to a German layout, LocalizeButtonDisplayNames() should be called again, to update the display names, if that is required.

◆ RegisterInputSlots() [1/4]

virtual void ezStandardInputDevice::RegisterInputSlots ( )
overrideprivatevirtual

Override this to register all the input slots that this device exposes.

This is called once during initialization. It needs to call RegisterInputSlot() once for every input slot that this device exposes to the system.

Implements ezInputDevice.

◆ RegisterInputSlots() [2/4]

void ezStandardInputDevice::RegisterInputSlots ( )
overrideprivatevirtual

Override this to register all the input slots that this device exposes.

This is called once during initialization. It needs to call RegisterInputSlot() once for every input slot that this device exposes to the system.

Implements ezInputDevice.

◆ RegisterInputSlots() [3/4]

virtual void ezStandardInputDevice::RegisterInputSlots ( )
overrideprotectedvirtual

Override this to register all the input slots that this device exposes.

This is called once during initialization. It needs to call RegisterInputSlot() once for every input slot that this device exposes to the system.

Implements ezInputDevice.

◆ RegisterInputSlots() [4/4]

virtual void ezStandardInputDevice::RegisterInputSlots ( )
overrideprivatevirtual

Override this to register all the input slots that this device exposes.

This is called once during initialization. It needs to call RegisterInputSlot() once for every input slot that this device exposes to the system.

Implements ezInputDevice.

◆ SetClipMouseCursor() [1/4]

virtual void ezStandardInputDevice::SetClipMouseCursor ( ezMouseCursorClipMode::Enum  mode)
overridevirtual

Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches.

Especially on multi-monitor systems, the mouse can easily leave the application window (even in fullscreen mode). Do NOT use this function when you have multiple windows and require absolute mouse positions.

See also
ezMouseCursorClipMode

Implements ezInputDeviceMouseKeyboard.

◆ SetClipMouseCursor() [2/4]

virtual void ezStandardInputDevice::SetClipMouseCursor ( ezMouseCursorClipMode::Enum  mode)
overridevirtual

Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches.

Especially on multi-monitor systems, the mouse can easily leave the application window (even in fullscreen mode). Do NOT use this function when you have multiple windows and require absolute mouse positions.

See also
ezMouseCursorClipMode

Implements ezInputDeviceMouseKeyboard.

◆ SetClipMouseCursor() [3/4]

void ezStandardInputDevice::SetClipMouseCursor ( ezMouseCursorClipMode::Enum  mode)
overridevirtual

Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches.

Especially on multi-monitor systems, the mouse can easily leave the application window (even in fullscreen mode). Do NOT use this function when you have multiple windows and require absolute mouse positions.

See also
ezMouseCursorClipMode

Implements ezInputDeviceMouseKeyboard.

◆ SetClipMouseCursor() [4/4]

virtual void ezStandardInputDevice::SetClipMouseCursor ( ezMouseCursorClipMode::Enum  mode)
overridevirtual

Will trap the mouse inside the application window. Should usually be enabled, to prevent accidental task switches.

Especially on multi-monitor systems, the mouse can easily leave the application window (even in fullscreen mode). Do NOT use this function when you have multiple windows and require absolute mouse positions.

See also
ezMouseCursorClipMode

Implements ezInputDeviceMouseKeyboard.

◆ UpdateInputSlotValues()

virtual void ezStandardInputDevice::UpdateInputSlotValues ( )
overrideprotectedvirtual

Override this, if you need to query the state of the hardware to update the input slots.

Note
This function might be called multiple times before ResetInputSlotValues() is called. This will be the case when ezInputManager::PollHardware is used to make more frequent hardware updates than input is actually processed. Just make sure to always accumulate delta values (such as mouse move values) and don't expect ResetInputSlotValues() to be called in tandem with this function and it will be fine.

Reimplemented from ezInputDeviceMouseKeyboard.


The documentation for this class was generated from the following files: