H3D API  2.4.1
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
H3D::StringSensor Class Reference

A StringSensor node generates events as the user presses keys on the keyboard. More...

#include <H3D/StringSensor.h>

Inheritance diagram for H3D::StringSensor:
Inheritance graph

Public Member Functions

 StringSensor (Inst< SFBool > _deletionAllowed=0, Inst< SFBool > _enabled=0, Inst< SFNode > _metadata=0, Inst< SFString > _enteredText=0, Inst< SFString > _finalText=0, Inst< SFBool > _isActive=0)
 Constructor.
 
virtual void keyboardDown (int key, bool special_key)
 Function called when key is pressed.
 
virtual void keyboardUp (int key, bool special_key)
 Function called when key is released.
 
- Public Member Functions inherited from H3D::X3DKeyDeviceSensorNode
 X3DKeyDeviceSensorNode (Inst< SFBool > _enabled=0, Inst< SFNode > _metadata=0, Inst< SFBool > _isActive=0)
 Constructor.
 
 ~X3DKeyDeviceSensorNode ()
 Destructor.
 
- Public Member Functions inherited from H3D::X3DSensorNode
 X3DSensorNode (Inst< SFBool > _enabled=0, Inst< SFNode > _metadata=0, Inst< SFBool > _isActive=0)
 Constructor.
 
- Public Member Functions inherited from H3D::X3DChildNode
 X3DChildNode (Inst< SFNode > _metadata=0)
 Constructor.
 
- Public Member Functions inherited from H3D::X3DNode
 X3DNode (Inst< SFNode > _metadata=0)
 Constructor.
 
X3DMetadataObjectgetMetadataByName (const string &_name)
 Given a name, the first X3DMetadataObject in the metadata field that matches that name is returned. More...
 
- Public Member Functions inherited from H3D::Node
 Node ()
 Constructor.
 
virtual Nodeclone (bool deepCopy=true, DeepCopyMap *deepCopyMap=NULL)
 Returns a new instance of this node type with the same state as this one. More...
 
virtual ~Node ()
 Destructor.
 
X3DPrototypeInstancegetProtoInstanceParent ()
 If this node is the root node in the proto body of a X3DPrototypeInstance then this will return that node. More...
 
void setProtoInstanceParent (X3DPrototypeInstance *p)
 Set the X3DPrototypeInstance this node is the the root node if applicaple.
 
virtual void render ()
 the render() function is used for the depth-first rendering traversal of the scene-graph. More...
 
virtual void traverseSG (TraverseInfo &ti)
 traverseSG is called once per scenegraph loop on the scene in order to traverse the scenegraph. More...
 
virtual bool lineIntersect (const Vec3f &from, const Vec3f &to, LineIntersectResult &result)
 Detect intersection between a line segment and the Node. More...
 
virtual void closestPoint (const Vec3f &p, NodeIntersectResult &result)
 Find closest point on Node to p. More...
 
virtual bool movingSphereIntersect (H3DFloat radius, const Vec3f &from, const Vec3f &to, NodeIntersectResult &result)
 Detect collision between a moving sphere and the Node. More...
 
virtual string defaultXMLContainerField ()
 Returns the default xml containerField attribute value. More...
 
virtual FieldgetField (const string &_name) const
 return a pointer to the field specified by name within this instance
 
int addDestructCallback (void(*func)(Node *, void *), void *args)
 Add a callback function to be run on destruction of node. More...
 
int removeDestructCallback (void(*func)(Node *, void *), void *args)
 Add a callback function to be run on destruction of node. More...
 

Public Attributes

H3DUniquePtr< SFBooldeletionAllowed
 If a deletionAllowed has value TRUE, the previously entered character in the enteredText is removed when the backspace key is entered. More...
 
H3DUniquePtr< SFStringenteredText
 enteredText events are generated as keys which produce characters are pressed on the keyboard. More...
 
H3DUniquePtr< SFStringfinalText
 The finalText event is generated whenever the browser-recognized value for terminating a string is entered. More...
 
- Public Attributes inherited from H3D::X3DSensorNode
H3DUniquePtr< SFBoolenabled
 If enabled is true the sensor node is enabled otherwise it is disabled and will not generate any output. More...
 
H3DUniquePtr< SFBoolisActive
 A sensor is active when some special conditions are fulfilled and it will then generate extra output. More...
 
- Public Attributes inherited from H3D::X3DNode
H3DUniquePtr< SFNodemetadata
 Meta data about the node. More...
 

Static Public Attributes

static H3DNodeDatabase database
 The H3DNodeDatabase for this node.
 
- Static Public Attributes inherited from H3D::X3DSensorNode
static H3DNodeDatabase database
 The H3DNodeDatabase for this node.
 
- Static Public Attributes inherited from H3D::X3DNode
static H3DNodeDatabase database
 The H3DNodeDatabase for this node.
 

Additional Inherited Members

- Public Types inherited from H3D::Node
typedef std::map< Node *, Node * > DeepCopyMap
 A map type used during a deep copy clone() to map from original nodes to cloned nodes.
 
- Static Public Member Functions inherited from H3D::X3DKeyDeviceSensorNode
static void keyboardDownCallback (unsigned char key)
 Call this function from a window whenever the window get a character event.
 
static void keyboardSpecialDownCallback (int key)
 Call this function from a window whenever the window get a key event.
 
static void keyboardUpCallback (unsigned char key)
 Call this function from a window whenever the window get a character event.
 
static void keyboardSpecialUpCallback (int key)
 Call this function from a window whenever the window get a key event.
 
- Static Public Member Functions inherited from H3D::Node
static unsigned int nrNodesAlive ()
 Returns the nr of nodes currently alive, i.e. nodes created but not destructed.
 
static int nrNodesCreated ()
 Returns the number of nodes created in total since the start of the program.
 
- Protected Member Functions inherited from H3D::Node
void cloneFieldValue (Field &_from, Field &_to, bool deepCopy, DeepCopyMap &deepCopyMap)
 A helper function for the clone() method. More...
 
- Static Protected Member Functions inherited from H3D::Node
static NodegetClonedInstance (Node *original, bool deepCopy, DeepCopyMap &deepCopyMap)
 A helper function for nodes that implement clone() More...
 

Detailed Description

A StringSensor node generates events as the user presses keys on the keyboard.

A StringSensor node can be enabled or disabled by sending it an enabled event with a value of TRUE or FALSE. If the StringSensor node is disabled, it does not track keyboard input or send events.

enteredText events are generated as keys which produce characters are pressed on the keyboard. The value of this event is the UTF-8 string entered including the latest character struck. The set of UTF-8 characters that can be generated will vary between different keyboards and different implementations.

If a deletionAllowed has value TRUE, the previously entered character in the enteredText is removed when the backspace key is entered. If deletionAllowed has value FALSE, characters may only be added to the string; deletion of characters shall not be allowed. Should the browser-recognized value for deleting the preceding character is entered, it shall be ignored.

The finalText event is generated whenever the browser-recognized value for terminating a string is entered; in H3D this is the enter key. When this recognition occurs, the finalText field generates an event with value equal to that of enteredText. After the finalText field event has been generated, the enteredText field is set to the empty string but no event is generated.

When the user begins typing, the StringSensor sends an isActive event with value TRUE. When the string is terminated, the StringSensor sends an isActive event with value FALSE.

The StringSensor is not affected by its position in the transformation hierarchy.

Examples:

Member Data Documentation

◆ deletionAllowed

H3DUniquePtr< SFBool> H3D::StringSensor::deletionAllowed

If a deletionAllowed has value TRUE, the previously entered character in the enteredText is removed when the backspace key is entered.

Access type: inputOutput Default value: SFBool = TRUE

Referenced by keyboardDown(), and StringSensor().

◆ enteredText

H3DUniquePtr< SFString> H3D::StringSensor::enteredText

enteredText events are generated as keys which produce characters are pressed on the keyboard.

Access type: outputOnly

Referenced by keyboardDown().

◆ finalText

H3DUniquePtr< SFString> H3D::StringSensor::finalText

The finalText event is generated whenever the browser-recognized value for terminating a string is entered.

Access type: outputOnly

Referenced by keyboardDown().


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