ARCed.UI.DockPanel.DockDragHandler.DockOutline.SetOutline C# (CSharp) Method

SetOutline() private method

private SetOutline ( DockPane pane, DockStyle dock, int contentIndex ) : void
pane DockPane
dock DockStyle
contentIndex int
return void
                private void SetOutline(DockPane pane, DockStyle dock, int contentIndex)
                {
                    if (dock != DockStyle.Fill)
                    {
                        Rectangle rect = pane.DisplayingRectangle;
                        if (dock == DockStyle.Right)
                            rect.X += rect.Width / 2;
                        if (dock == DockStyle.Bottom)
                            rect.Y += rect.Height / 2;
                        if (dock == DockStyle.Left || dock == DockStyle.Right)
                            rect.Width -= rect.Width / 2;
                        if (dock == DockStyle.Top || dock == DockStyle.Bottom)
                            rect.Height -= rect.Height / 2;
                        rect.Location = pane.PointToScreen(rect.Location);

                        this.SetDragForm(rect);
                    }
                    else if (contentIndex == -1)
                    {
                        Rectangle rect = pane.DisplayingRectangle;
                        rect.Location = pane.PointToScreen(rect.Location);
                        this.SetDragForm(rect);
                    }
                    else
                    {
                        using (GraphicsPath path = pane.TabStripControl.GetOutline(contentIndex))
                        {
                            RectangleF rectF = path.GetBounds();
                            var rect = new Rectangle((int)rectF.X, (int)rectF.Y, (int)rectF.Width, (int)rectF.Height);
                            using (var matrix = new Matrix(rect, new[] { new Point(0, 0), new Point(rect.Width, 0), new Point(0, rect.Height) }))
                            {
                                path.Transform(matrix);
                            }
                            var region = new Region(path);
                            this.SetDragForm(rect, region);
                        }
                    }
                }

Same methods

DockPanel.DockDragHandler.DockOutline::SetOutline ( ) : void
DockPanel.DockDragHandler.DockOutline::SetOutline ( DockPanel dockPanel, DockStyle dock, bool fullPanelEdge ) : void
DockPanel.DockDragHandler.DockOutline::SetOutline ( Rectangle floatWindowBounds ) : void