C++ swig class => ruby class

Hi. everyone

For example I have these class

class CallbackIF{
        ...
    virtual void onMouseClick();
    ...
};
class EventDispatcher{
    CallbackIF* lpCallback;
        void fun(){
                ...
        lpCallback->onMouseClick();
                ...
        }
};

so I want to generate CallbackIF a ruby wrapper, exceed it, rewrite the onMouseClick function, and set it into EventDispatcher. so that I can implement click callback in ruby code.
is that possible?
If not, how can I have callback-like access?

thanks