Guiliani  Version 2.4 revision 5970 (build 3)
CGUIKeyboardBehaviour Class Reference

This behaviour sends a UTF16 keycode to the Keyboard in reaction to a ButtonUp-Event. More...

#include <GUIKeyboardBehaviour.h>

Inheritance diagram for CGUIKeyboardBehaviour:

Public Member Functions

 CGUIKeyboardBehaviour (const eC_UInt uiKeyCode=0, ObjectHandle_t eTargetObject=NO_HANDLE)
 
virtual eC_Bool DoButtonUp (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoClick (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
void HandleKey (const eC_UInt uiKeyCode)
 
virtual void ReadFromStream ()
 
virtual void WriteToStream (const eC_Bool bWriteClassID=false)
 
- Public Member Functions inherited from CGUIBehaviourDecorator
virtual ~CGUIBehaviourDecorator ()
 
virtual CGUIBehaviourDecoratorClone () const
 
virtual eC_Bool IsCompositeBehaviour () const
 
- Public Member Functions inherited from CGUIBehaviour
virtual eC_Bool DoUserEvent (CGUIEvent *const pEvent)
 
virtual void OnCreate ()
 
virtual void OnDelete ()
 
virtual void OnHide ()
 
virtual void OnShow ()
 
virtual eC_Bool DoLongClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDoubleClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoButtonDown (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDrag (const eC_Value &vDeltaX=eC_FromInt(-1), const eC_Value &vDeltaY=eC_FromInt(-1), const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDragEnd (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseEnter (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseLeave (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseMove (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool FocusPrevious (CGUIObject *const pRefObj=NULL, const eC_Bool &bSubTreeOfRefObjDone=false)
 
virtual eC_Bool FocusNext (CGUIObject *const pRefObj=NULL, const eC_Bool &bSubTreeOfRefObjDone=false)
 
virtual void GetFocus ()
 
virtual void LoseFocus ()
 
virtual eC_Bool Decrease ()
 
virtual eC_Bool Increase ()
 
virtual eC_Bool DoKeyDown (const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoKeyUp (const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoChar (const eC_UInt &uiKey, const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoScrollUp (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollDown (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollLeft (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollRight (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
- Public Member Functions inherited from CGUIStreamableObject
const eC_String & GetXMLTag () const
 
void SetXMLTag (const eC_String &kXMLTag)
 

Protected Attributes

ObjectHandle_t m_eTargetObject
 ID of CGUIEdit which shall receive the keyboard's output.
 
eC_UInt m_uiKeyCode
 Unicode of key which shall be sent to the keyboard (e.g 0x0041 for 'A')
 

Additional Inherited Members

- Static Public Attributes inherited from CGUIBehaviour
static const eC_Char XMLTAG_BEHAVIOURCLASSID [] = "BehaviourClassID"
 XML tag to be used when writing a behaviour class ID into a stream.
 
- Static Public Attributes inherited from CGUIStreamableObject
static const eC_Char XMLTAG_CLASSVERSION [] = "ClassVersion"
 
- Protected Member Functions inherited from CGUIBehaviourDecorator
 CGUIBehaviourDecorator (CGUIObject *const pObject=NULL)
 
 CGUIBehaviourDecorator (const CGUIBehaviourDecorator &kSource)
 
virtual void AssociatedObjectChanges (CGUIObject *const pNewAssociatedObject)
 
CGUIObjectGetAssociatedObject () const
 
- Protected Member Functions inherited from CGUIStreamableObject
eC_UInt ReadStreamingHeader (const eC_UInt &uiClassVersion, const eC_UInt &uiClassMinVersion=0) const
 
void WriteStreamingFooter (const eC_Bool &bWriteClassID) const
 
void WriteStreamingHeader (const eC_Bool &bWriteClassID, const eC_Char *const pkClassIDTag, const eC_Int &iClassID, const eC_UInt &uiClassVersion) const
 

Detailed Description

This behaviour sends a UTF16 keycode to the Keyboard in reaction to a ButtonUp-Event.

Behaviour for use within an OnScreen-Keyboard / Virtual Keyboard.

Constructor & Destructor Documentation

◆ CGUIKeyboardBehaviour()

CGUIKeyboardBehaviour::CGUIKeyboardBehaviour ( const eC_UInt  uiKeyCode = 0,
ObjectHandle_t  eTargetObject = NO_HANDLE 
)

Constructor.

Parameters
uiKeyCodeUTF16 KeyCode (e.g 0x0041 for 'A') which will be sent when this behaviour gets triggered.
eTargetObjecttarget-object to receive key

Member Function Documentation

◆ DoButtonUp()

eC_Bool CGUIKeyboardBehaviour::DoButtonUp ( const eC_Value &  vAbsX,
const eC_Value &  vAbsY 
)
virtual

Called when the mouse button or finger is released. The object under the mouse at the time of releasing will receive this event.

Note
DoButtonUp() should work on the absolute positions of this object, that were set at the time of the passed redraw, as the user expects to click on what he sees and not to click on an object in a newer and probably intermediate state that he currently does not see in this state. Thus, to calculate the relative position (where the button was released relative to the origin of this object) from the vAbsY argument you must do it like this: vMyRelYPos = vAbsY - GetAbsYPos().
Parameters
vAbsXX-position in screen coordinates where the mouse was released.
vAbsYY-position in screen coordinates where the mouse was released.
Returns
True The event has been handled.
False The event has not been handled. In this base implementation always returns False.

Reimplemented from CGUIBehaviour.

◆ DoClick()

eC_Bool CGUIKeyboardBehaviour::DoClick ( const eC_Value &  vAbsX,
const eC_Value &  vAbsY 
)
virtual

Called when the object receives a click event. A click can e.g., be the result of a mouse click, a finger press/release sequence on touchscreens, or be triggered by a GK_ACTION keyboard event.

Note
DoClick() should work on the absolute positions of this object, that were set at the time of the passed redraw, as the user expects to click on what he sees and not to click on an object in a newer and probably intermediate state that he currently does not see. Thus, to calculate the relative position (where the mouse button was pressed and released at the same position for in a certain time span, relative to the origin of this object) from the vAbsY argument you must do it like this: vMyRelYPos = vAbsY - GetAbsYPos().
Parameters
vAbsXX-position in screen coordinates where the click occurred
vAbsYY-position in screen coordinates where the click occurred
Returns
True The event has been handled.
False The event has not been handled. In this base implementation it always returns False.

Reimplemented from CGUIBehaviour.

◆ HandleKey()

void CGUIKeyboardBehaviour::HandleKey ( const eC_UInt  uiKeyCode)

Handle the given key and pass it to the target-object

Parameters
uiKeyCodekey-code to handle

Additional sanity check if RTTI is active. We HAVE an object, but it is of WRONG TYPE.

◆ ReadFromStream()

void CGUIKeyboardBehaviour::ReadFromStream ( )
virtual

Reads attributes from the streaming file. Only for use with GUIFactoryManager.

See also
CGUIObject::ReadFromStream()

Reimplemented from CGUIStreamableObject.

◆ WriteToStream()

void CGUIKeyboardBehaviour::WriteToStream ( const eC_Bool  bWriteClassID = false)
virtual

Writes attributes to the streaming file. A CGUIStreamWriter has to be initialized.

Parameters
bWriteClassIDThis flag is used to switch writing of the class ID, leading and trailing tags. When implementing a new streamable object, check this flag. If it is true, first write the class ID, then continue with this object's attributes, and finally call the base class implementation with this flag set to false (this is the default).

Reimplemented from CGUIStreamableObject.


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