public virtual void AddPane(DockPane pane, Point location)
 {
     var floating = new DockFormFloating(this);
     floating.DockBay.PaneAdded += DockBay_PaneAdded;
     floating.DockBay.AddPane(pane, DockDirection.Top);
     floating.Location = location;
     floating.Show();
     DockPane_Floated(pane, new EventArgs());
 }
 public DockBayFloating(DockFormFloating form, DockBay root)
 {
     _neigh = DockNeigh.InitializeNeigh(this, root);
     _helper = new DockingHelper(this, root.TopLevelControl as Form);
     _helper.IndicatorStyle = HelperModes.InnerHelperOnly;
     _helper.FormDragDrop += _helper_FormDragDrop;
     root.FloatFormCreated += root_FloatFormCreated;
     foreach (var bay in root.FloatBays)
     {
         var topLevelControl = bay.TopLevelControl as DockFormFloating;
         topLevelControl.FormMoving += otherForm_FormMoving;
         topLevelControl.FormEndMoving += otherForm_FormEndMoving;
         topLevelControl.Disposed += otherForm_Disposed;
     }
 }
        public DockFormFloating Floating()
        {
            DockFormFloating floating;
            var neigh = (DockPaneBase.DockNeigh)Neigh;
            if (neigh.Owner is DockBayFloating)
            {
                var owner = (DockBayFloating.DockNeigh)neigh.Owner.Neigh;
                floating = new DockFormFloating(owner.TopLevelRootBay);
                ((DockBayFloating.DockNeigh)floating.DockBay.Neigh).TopLevelRootBay = owner.TopLevelRootBay;
            }
            else
            {
                floating = new DockFormFloating((DockBay)neigh.Owner);
                ((DockBayFloating.DockNeigh)floating.DockBay.Neigh).TopLevelRootBay = (DockBay)neigh.Owner;
            }
            Remove();
            floating.DockBay.AddPane(this, neigh.Align);
            floating.Show();
            OnFloating(new EventArgs());

            return floating;
        }
 public FloatFormEventArgs(DockFormFloating form, DockPaneBase pane)
 {
     FloatForm = form;
     DockPane = pane;
 }