Panda3D
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties
Public Member Functions | Static Public Member Functions
ButtonNode Class Reference

This is the primary interface to on/off button devices associated with a ClientBase. More...

Inheritance diagram for ButtonNode:
DataNode PandaNode TypedWritable Namable LinkedListNode ReferenceCount TypedObject

List of all members.

Public Member Functions

 ButtonNode (ClientBase client, string device_name)
ButtonHandle getButtonMap (int index)
 Returns the ButtonHandle that was previously associated with the given index number by a call to set_button_map(), or ButtonHandle::none() if no button was associated.
bool getButtonState (int index)
 Returns true if the indicated button (identified by its index number) is currently known to be down, or false if it is up or unknown.
int getNumButtons ()
 Returns the number of buttons known to the ButtonNode.
bool isButtonKnown (int index)
 Returns true if the state of the indicated button is known, or false if we have never heard anything about this particular button.
bool isValid ()
 Returns true if the ButtonNode is valid and connected to a server, false otherwise.
 setButtonMap (int index, ButtonHandle button)
 Associates the indicated ButtonHandle with the button of the indicated index number.

Static Public Member Functions

static TypeHandle getClassType ()

Detailed Description

This is the primary interface to on/off button devices associated with a ClientBase.

This creates a node that connects to the named button device, if it exists, and provides hooks to the user to read the state of any of the sequentially numbered buttons associated with that device.

It also can associate an arbitrary ButtonHandle with each button; when buttons are associated with ButtonHandles, this node will put appropriate up and down events on the data graph for each button state change.


Constructor & Destructor Documentation

ButtonNode ( ClientBase  client,
string  device_name 
)

Member Function Documentation

Returns the ButtonHandle that was previously associated with the given index number by a call to set_button_map(), or ButtonHandle::none() if no button was associated.

bool getButtonState ( int  index)

Returns true if the indicated button (identified by its index number) is currently known to be down, or false if it is up or unknown.

static TypeHandle getClassType ( ) [static]

Reimplemented from DataNode.

Returns the number of buttons known to the ButtonNode.

This includes those buttons whose state has been seen, as well as buttons that have been associated with a ButtonHandle even if their state is unknown. This number may change as more buttons are discovered.

bool isButtonKnown ( int  index)

Returns true if the state of the indicated button is known, or false if we have never heard anything about this particular button.

bool isValid ( )

Returns true if the ButtonNode is valid and connected to a server, false otherwise.

setButtonMap ( int  index,
ButtonHandle  button 
)

Associates the indicated ButtonHandle with the button of the indicated index number.

When the given button index changes state, a corresponding ButtonEvent will be generated with the given ButtonHandle. Pass ButtonHandle::none() to turn off any association.

It is not necessary to call this if you simply want to query the state of the various buttons by index number; this is only necessary in order to generate ButtonEvents when the buttons change state.

 All Classes Namespaces Functions Variables Enumerations Enumerator Properties