// when scrollbar is present, it catches all of the mouse/touch callbacks // following two methods will simulate the necessary callbacks public void ProcessMouseMovement(MouseEvent mouseEvent) { if (m_Buttons == null) { return; } if (m_HoverButton != null) { if (m_HoverButton.Widget.IsMouseOver(mouseEvent.Position)) { return; } else { m_HoverButton.Callback(GUIBase_Callback.E_CallbackType.E_CT_ON_MOUSEOVER_END, mouseEvent); m_HoverButton = null; } } foreach (GUIBase_Button btn in m_Buttons) { if (btn.Widget.IsMouseOver(mouseEvent.Position)) { m_HoverButton = btn; m_HoverButton.Callback(GUIBase_Callback.E_CallbackType.E_CT_ON_MOUSEOVER_BEGIN, mouseEvent); return; } } }