Make string coercible into ButtonHandle

This commit is contained in:
rdb 2014-03-09 17:32:59 +00:00
parent 31a192f27b
commit 98ffa974ac
2 changed files with 17 additions and 0 deletions

View File

@ -20,6 +20,22 @@ ButtonHandle ButtonHandle::_none;
TypeHandle ButtonHandle::_type_handle;
////////////////////////////////////////////////////////////////////
// Function: ButtonHandle::Constructor
// Access: Published
// Description: Constructs a ButtonHandle with the corresponding
// name, which is looked up in the ButtonRegistry.
// This exists for the purpose of being able to
// automatically coerce a string into a ButtonHandle;
// for most purposes, you should use either the static
// KeyboardButton/MouseButton getters or
// ButtonRegistry::register_button().
////////////////////////////////////////////////////////////////////
ButtonHandle::
ButtonHandle(const string &name) {
_index = ButtonRegistry::ptr()->get_button(name)._index;
}
////////////////////////////////////////////////////////////////////
// Function: ButtonHandle::get_name
// Access: Public

View File

@ -29,6 +29,7 @@ class EXPCL_PANDA_PUTIL ButtonHandle {
PUBLISHED:
INLINE ButtonHandle();
INLINE ButtonHandle(int index);
ButtonHandle(const string &name);
public:
INLINE ButtonHandle(const ButtonHandle &copy);