public void SetDropInfo(DropInfo di, Vector2 mouseScreenPos, ContainerWindow inFrontOf)
{
if ((this.m_Type != di.type) || ((di.type == DropInfo.Type.Pane) && (di.rect != this.m_TargetRect)))
{
this.m_Type = di.type;
switch (di.type)
{
case DropInfo.Type.Window:
this.m_TargetAlpha = 0.6f;
break;
case DropInfo.Type.Pane:
case DropInfo.Type.Tab:
this.m_TargetAlpha = 1f;
break;
}
}
switch (di.type)
{
case DropInfo.Type.Window:
this.m_TargetRect = new Rect(mouseScreenPos.x - (this.m_FullWindowSize.x / 2f), mouseScreenPos.y - (this.m_FullWindowSize.y / 2f), this.m_FullWindowSize.x, this.m_FullWindowSize.y);
break;
case DropInfo.Type.Pane:
case DropInfo.Type.Tab:
this.m_TargetRect = di.rect;
break;
}
this.m_TabVisible = di.type == DropInfo.Type.Tab;
this.m_TargetRect.x = Mathf.Round(this.m_TargetRect.x);
this.m_TargetRect.y = Mathf.Round(this.m_TargetRect.y);
this.m_TargetRect.width = Mathf.Round(this.m_TargetRect.width);
this.m_TargetRect.height = Mathf.Round(this.m_TargetRect.height);
this.m_InFrontOfWindow = inFrontOf;
this.m_Window.MoveInFrontOf(this.m_InFrontOfWindow);
this.SetWindowPos(this.m_TargetRect);
base.Repaint();
}