/// <summary>
///
/// <para>
/// Return the current MouseState.
/// </para>
///
/// </summary>
/// <param name="id"/>
protected virtual PointerInputModule.MouseState GetMousePointerEventData(int id)
{
PointerEventData data1;
bool pointerData = this.GetPointerData(-1, out data1, true);
data1.Reset();
if (pointerData)
{
data1.position = (Vector2)Input.mousePosition;
}
Vector2 vector2 = (Vector2)Input.mousePosition;
data1.delta = vector2 - data1.position;
data1.position = vector2;
data1.scrollDelta = Input.mouseScrollDelta;
data1.button = PointerEventData.InputButton.Left;
this.eventSystem.RaycastAll(data1, this.m_RaycastResultCache);
RaycastResult firstRaycast = BaseInputModule.FindFirstRaycast(this.m_RaycastResultCache);
data1.pointerCurrentRaycast = firstRaycast;
this.m_RaycastResultCache.Clear();
PointerEventData data2;
this.GetPointerData(-2, out data2, true);
this.CopyFromTo(data1, data2);
data2.button = PointerEventData.InputButton.Right;
PointerEventData data3;
this.GetPointerData(-3, out data3, true);
this.CopyFromTo(data1, data3);
data3.button = PointerEventData.InputButton.Middle;
this.m_MouseState.SetButtonState(PointerEventData.InputButton.Left, PointerInputModule.StateForMouseButton(0), data1);
this.m_MouseState.SetButtonState(PointerEventData.InputButton.Right, PointerInputModule.StateForMouseButton(1), data2);
this.m_MouseState.SetButtonState(PointerEventData.InputButton.Middle, PointerInputModule.StateForMouseButton(2), data3);
return(this.m_MouseState);
}