Correct way to inject OIS key events

simed

09-06-2012 19:04:02

MyGUI very clearly mirrors OIS keycode enums. But doesn't reuse same actual classes. If I want my OIS key listener to inject key events directly into MyGUI, what is the right/safe way to do this?

I currently I have this:
class MyGUIUtil
{
public:
static MyGUI::MouseButton translateMouseButton(OIS::MouseButtonID mb)
{
return (MyGUI::MouseButton::Enum)mb;
}
static OIS::MouseButtonID translateMouseButton(MyGUI::MouseButton mb)
{
return (OIS::MouseButtonID)mb.toValue();
}

static MyGUI::KeyCode translateKeyCode(OIS::KeyCode key)
{
return (MyGUI::KeyCode::Enum)key;
}
static OIS::KeyCode translateKeyCode(MyGUI::KeyCode key)
{
return (OIS::KeyCode)key.toValue();
}
}
Reasonable? Anyone's welcome to use this if so - sending me a PM to let me know would be appreciated!