ARCed.UI.VS2005AutoHideStrip.GetTransformedRectangle C# (CSharp) Method

GetTransformedRectangle() private method

private GetTransformedRectangle ( DockState dockState, Rectangle rect ) : Rectangle
dockState DockState
rect System.Drawing.Rectangle
return System.Drawing.Rectangle
        private Rectangle GetTransformedRectangle(DockState dockState, Rectangle rect)
        {
            if (dockState != DockState.DockLeftAutoHide && dockState != DockState.DockRightAutoHide)
                return rect;

            var pts = new PointF[1];
            // the center of the rect
            pts[0].X = rect.X + (float)rect.Width / 2;
            pts[0].Y = rect.Y + (float)rect.Height / 2;
            Rectangle rectTabStrip = this.GetLogicalTabStripRectangle(dockState);
            var matrix = new Matrix();
            matrix.RotateAt(90, new PointF(rectTabStrip.X + (float)rectTabStrip.Height / 2,
                rectTabStrip.Y + (float)rectTabStrip.Height / 2));
            matrix.TransformPoints(pts);

            return new Rectangle((int)(pts[0].X - (float)rect.Height / 2 + .5F),
                (int)(pts[0].Y - (float)rect.Width / 2 + .5F),
                rect.Height, rect.Width);
        }