+ .bases<NasalEvent>()
+ .member("screenX", &sc::MouseEvent::getScreenX)
+ .member("screenY", &sc::MouseEvent::getScreenY)
+ .member("clientX", &sc::MouseEvent::getClientX)
+ .member("clientY", &sc::MouseEvent::getClientY)
+ .member("localX", &sc::MouseEvent::getLocalX)
+ .member("localY", &sc::MouseEvent::getLocalY)
+ .member("deltaX", &sc::MouseEvent::getDeltaX)
+ .member("deltaY", &sc::MouseEvent::getDeltaY)
+ .member("button", &sc::MouseEvent::getButton)
+ .member("buttons", &sc::MouseEvent::getButtonMask)
+ .member("modifiers", &sc::MouseEvent::getModifiers)
+ .member("ctrlKey", &f_eventGetModifier<GUIEventAdapter::MODKEY_CTRL>)
+ .member("shiftKey", &f_eventGetModifier<GUIEventAdapter::MODKEY_SHIFT>)
+ .member("altKey", &f_eventGetModifier<GUIEventAdapter::MODKEY_ALT>)
+ .member("metaKey", &f_eventGetModifier<GUIEventAdapter::MODKEY_META>)
+ .member("click_count", &sc::MouseEvent::getCurrentClickCount);