diff options
Diffstat (limited to 'Ivy.cxx')
-rw-r--r-- | Ivy.cxx | 30 |
1 files changed, 29 insertions, 1 deletions
@@ -251,7 +251,7 @@ void Ivy::SendDirectMsg(IvyApplication * app, int id, const char *message) # | |____ | | | (_| | \__ \ \__ \ | __/ \__ \ # \_____| |_| \__,_| |___/ |___/ \___| |___/ */ -void Ivy::Classes(int argc, const char **argv ) +void Ivy::SetFilter(int argc, const char **argv ) { IvyC::IvySetFilter( argc, argv); } @@ -355,3 +355,31 @@ void Ivy::MsgCb( IvyC::IvyClientPtr app, void *user_data, int argc, char **argv glfwUnlockMutex (ivyCbmutex); #endif } + + +void Ivy::BindCallbackCb( IvyC::IvyClientPtr app, void *user_data, int id, char *msg, + IvyC::IvyBindEvent event) +{ + IvyBindingCallback *cb = (IvyBindingCallback *)user_data; + IvyApplication *appObj = new IvyApplication( app ); + + switch ( event ) + { + case IvyC::IvyAddBind : + cb->OnAddBind ( appObj, id, msg); + break; + case IvyC::IvyRemoveBind : + cb->OnRemoveBind( appObj, id, msg ); + break; + case IvyC::IvyFilterBind : + cb->OnFilterBind( appObj, id, msg ); + break; + } + delete appObj; +} + + +void Ivy::SetBindCallback(IvyBindingCallback* bind_callback ) +{ + IvySetBindCallback (BindCallbackCb, bind_callback); +} |