private void EndDrag(bool abort) { if (abort) { return; } if (!Outline.FloatWindowBounds.IsEmpty) { DragSource.FloatAt(Outline.FloatWindowBounds); } else if (Outline.DockTo is DockPane) { DockPane pane = Outline.DockTo as DockPane; DragSource.DockTo(pane, Outline.Dock, Outline.ContentIndex); } else if (Outline.DockTo is DockPanel) { DockPanel panel = Outline.DockTo as DockPanel; panel.UpdateDockWindowZOrder(Outline.Dock, Outline.FlagFullEdge); DragSource.DockTo(panel, Outline.Dock); } if (DragSource is DockContentHandler && ((DockContentHandler)DragSource).Content is ITabbedDocument) { ((DockContentHandler)DragSource).Content.DockHandler.Activate(); } }
private void EndDrag(bool abort) { if (abort) { return; } if (!Outline.FloatWindowBounds.IsEmpty) { if (!(DragSource is FloatWindow) && !((DragSource as DockPane)?.IsFloat ?? false)) { DockPanel.OnBeforeDocumentDragged(); } DragSource.FloatAt(Outline.FloatWindowBounds); } else if (Outline.DockTo is DockPane) { DockPanel.OnBeforeDocumentDragged(); DockPane pane = Outline.DockTo as DockPane; DragSource.DockTo(pane, Outline.Dock, Outline.ContentIndex); } else if (Outline.DockTo is DockPanel) { DockPanel.OnBeforeDocumentDragged(); DockPanel panel = Outline.DockTo as DockPanel; panel.UpdateDockWindowZOrder(Outline.Dock, Outline.FlagFullEdge); DragSource.DockTo(panel, Outline.Dock); } }
private void EndDrag(bool abort) { if (abort) return; if (!Outline.FloatWindowBounds.IsEmpty) DragSource.FloatAt(Outline.FloatWindowBounds); else if (Outline.DockTo is DockPane) { DockPane pane = Outline.DockTo as DockPane; DragSource.DockTo(pane, Outline.Dock, Outline.ContentIndex); } else if (Outline.DockTo is DockPanel) { DockPanel panel = Outline.DockTo as DockPanel; panel.UpdateDockWindowZOrder(Outline.Dock, Outline.FlagFullEdge); DragSource.DockTo(panel, Outline.Dock); } }
private void EndDrag(bool abort) { if (abort) { return; } if (!Outline.FloatWindowBounds.IsEmpty) { DragSource.FloatAt(Outline.FloatWindowBounds); } else if (Outline.DockTo is DockPane) { var pane = (DockPane)Outline.DockTo; DragSource.DockTo(pane, Outline.Dock, Outline.ContentIndex); } else if (Outline.DockTo is DockPanel) { var panel = (DockPanel)Outline.DockTo; panel.UpdateDockWindowZOrder(Outline.Dock, Outline.FlagFullEdge); DragSource.DockTo(panel, Outline.Dock); } }
private void EndDrag(bool abort) { Console.WriteLine("DockDragHandler:EndDrag(bool abort)"); if (abort) { return; } if (!Outline.FloatWindowBounds.IsEmpty) { DragSource.FloatAt(Outline.FloatWindowBounds); } else if (Outline.DockTo is DockPane) { DockPane pane = Outline.DockTo as DockPane; DragSource.DockTo(pane, Outline.Dock, Outline.ContentIndex); } else if (Outline.DockTo is DockPanel) { DockPanel panel = Outline.DockTo as DockPanel; panel.UpdateDockWindowZOrder(Outline.Dock, Outline.FlagFullEdge); DragSource.DockTo(panel, Outline.Dock); } }