public Pane(DockManager dockManager, DockableContent content) { _dockManager = dockManager; if (content != null) Add(content); }
public virtual void Add(DockableContent content) { if (DockManager != null) DockManager.Add(content); content.SetContainerPane(this); Contents.Add(content); }
public OverlayDockablePane(DockManager dockManager, DockableContent content, Dock initialDock) : base(dockManager, initialDock) { btnAutoHide.LayoutTransform = new RotateTransform(90); ReferencedPane = content.ContainerPane as DockablePane; ReferencedContent = content; Add(ReferencedContent); Show(ReferencedContent); ReferencedContent.SetContainerPane(ReferencedPane); _state = PaneState.AutoHide; }
public override void Show(DockableContent content) { if (!Contents.Contains(content)) Add(content); base.Show(content); }
//void OnUnloaded(object sender, EventArgs e) //{ // foreach (ManagedContent content in Documents) // content.Close(); // Documents.Clear(); //} public override void Add(DockableContent content) { System.Diagnostics.Debug.Assert(content != null); if (content == null) return; Documents.Add(content); AddItem(content); base.Add(content); }
void SetTabItemHeader(TabItem item, DockableContent content) { StackPanel spHeader = new StackPanel(); spHeader.Orientation = Orientation.Horizontal; Image iconContent = new Image(); iconContent.Source = content.Icon; spHeader.Children.Add(iconContent); TextBlock titleContent = new TextBlock(); titleContent.Text = content.Title; titleContent.Margin = new Thickness(2, 0, 0, 0); spHeader.Children.Add(titleContent); item.Header = spHeader; }
/// <summary> /// Add dockable content to layout management /// </summary> /// <param name="content">Content to add</param> /// <returns></returns> internal void Add(DockableContent content) { if (!Contents.Contains(content)) Contents.Add(content); }
protected virtual void RemoveItem(DockableContent content) { foreach (TabItem item in tbcContents.Items) if ((item.Content as ContentPresenter).Content == content.Content) { //item.PreviewMouseDown -= new MouseButtonEventHandler(OnTabItemMouseDown); //item.MouseMove -= new MouseEventHandler(OnTabItemMouseMove); //item.MouseUp -= new MouseButtonEventHandler(OnTabItemMouseUp); item.Content = null; tbcContents.Items.Remove(item); //ChangeTitle(); break; } }
void HideSingleContent(DockableContent content) { cpClientWindowContent.Content = null; cpClientWindowContent.Visibility = Visibility.Collapsed; }
/// <summary> /// Hide a contained dockable content /// </summary> /// <param name="content">DockableContent object to hide</param> /// <remarks>Pane is automatically hidden if no more visible contents are shown</remarks> public override void Hide(DockableContent content) { RemoveVisibleContent(content); if (VisibleContents.Count == 0 && State==PaneState.Docked) Hide(); base.Hide(content); }
/// <summary> /// Show a content previuosly added /// </summary> /// <param name="content">DockableContent object to show</param> public override void Show(DockableContent content) { AddVisibleContent(content); if (VisibleContents.Count == 1 && State == PaneState.Hidden) { ChangeState(PaneState.Docked); DockManager.DragPaneServices.Register(this); } base.Show(content); }
/// <summary> /// Add a docable content to default documents pane /// </summary> /// <param name="content">Dockable content to add</param> /// <returns>Documents pane where dockable content is added</returns> internal DocumentsPane AddDocument(DockableContent content) { System.Diagnostics.Debug.Assert(!Contents.Contains(content)); System.Diagnostics.Debug.Assert(!gridDocking.DocumentsPane.Contents.Contains(content)); if (!gridDocking.DocumentsPane.Contents.Contains(content)) { gridDocking.DocumentsPane.Add(content); gridDocking.ArrangeLayout(); } return gridDocking.DocumentsPane; }
/// <summary> /// Add a dockable content to Contents list /// </summary> /// <param name="content">Content to add</param> /// <remarks>Content is automatically shown.</remarks> public override void Add(DockableContent content) { if (Contents.Count == 0) { SaveFloatingWindowSizeAndPosition(content); } base.Add(content); }
protected virtual void DragContent(DockableContent contentToDrag, Point startDragPoint, Point offset) { Remove(contentToDrag); DockablePane pane = new DockablePane(DockManager); //pane = new DockablePane(); //pane.DockManager = DockManager; pane.Add(contentToDrag); pane.Show(); DockManager.Add(pane); //DockManager.Add(contentToDrag); FloatingWindow wnd = new FloatingWindow(pane); pane.ChangeState(PaneState.DockableWindow); DockManager.Drag(wnd, startDragPoint, offset); }
public virtual void Show(DockableContent content) { System.Diagnostics.Debug.Assert(Contents.Contains(content)); }
public virtual void Remove(DockableContent content) { if (DockManager != null) DockManager.Remove(content); content.SetContainerPane(null); Contents.Remove(content); }
public virtual void Hide(DockableContent content) { }
/// <summary> /// Remove a dockable content from internal contents list /// </summary> /// <param name="content"></param> internal void Remove(DockableContent content) { Contents.Remove(content); }
/// <summary> /// Close a dockable content /// </summary> /// <param name="content">DockableContent object to close</param> /// <remarks>In this library version this method simply hide the content</remarks> public override void Close(DockableContent content) { Hide(content); }
public virtual void Close(DockableContent content) { }
/// <summary> /// Remove a content from pane Contents list /// </summary> /// <param name="content">Content to remove</param> /// <remarks>Notice that when no more contents are present in a pane, it is automatically removed</remarks> public override void Remove(DockableContent content) { Hide(content); base.Remove(content); if (Contents.Count == 0) DockManager.Remove(this); }
public Pane GetPaneFromContent(DockableContent content) { if (AttachedPane != null && AttachedPane.Contents.Contains(content)) return AttachedPane; if (FirstChildGroup != null) { Pane pane = FirstChildGroup.GetPaneFromContent(content); if (pane != null) return pane; } if (SecondChildGroup != null) return SecondChildGroup.GetPaneFromContent(content); return null; }
protected virtual void AddItem(DockableContent content) { TabItem item = new TabItem(); DockPanel tabPanel = new DockPanel(); //SetTabItemHeader(item, content); item.Style = FindResource("DockablePaneTabItemStyle") as Style; item.Content = new ContentPresenter(); (item.Content as ContentPresenter).Content = content.Content; //item.PreviewMouseDown += new MouseButtonEventHandler(OnTabItemMouseDown); //item.MouseMove += new MouseEventHandler(OnTabItemMouseMove); //item.MouseUp += new MouseButtonEventHandler(OnTabItemMouseUp); //item.Focusable = true; //item.GotFocus += new RoutedEventHandler(item_GotFocus); tbcContents.Items.Add(item); tbcContents.SelectedItem = item; RefreshTitle(); }
public override void Remove(DockableContent content) { ReferencedPane.Remove(content); base.Remove(content); }
/// <summary> /// Add a visible content /// </summary> /// <param name="content">DockableContent object to add</param> /// <remarks>If more then one contents are visible, this method dinamically creates a tab control and /// adds new content to it.</remarks> void AddVisibleContent(DockableContent content) { if (VisibleContents.Contains(content)) return; if (VisibleContents.Count == 0) { VisibleContents.Add(content); ShowSingleContent(content); } else if (VisibleContents.Count == 1) { HideSingleContent(VisibleContents[0]); AddItem(VisibleContents[0]); VisibleContents.Add(content); AddItem(content); ShowTabs(); } else { VisibleContents.Add(content); AddItem(content); } }
public override void Close(DockableContent content) { ChangeState(PaneState.Hidden); }
/// <summary> /// Remove a visible content from pane /// </summary> /// <param name="content">DockableContent object to remove</param> /// <remarks>Remove related tab item from contents tab control. if only one content is visible than hide tab control.</remarks> void RemoveVisibleContent(DockableContent content) { if (!VisibleContents.Contains(content)) return; if (VisibleContents.Count == 1) { VisibleContents.Remove(content); HideSingleContent(content); HideTabs(); } else if (VisibleContents.Count == 2) { RemoveItem(VisibleContents[0]); RemoveItem(VisibleContents[1]); VisibleContents.Remove(content); ShowSingleContent(VisibleContents[0]); HideTabs(); } else { VisibleContents.Remove(content); RemoveItem(content); } }
public override void Remove(DockableContent content) { System.Diagnostics.Debug.Assert(content != null); if (content == null) return; RemoveItem(content); Documents.Remove(content); DockManager.Remove(content); base.Remove(content); }
void ShowSingleContent(DockableContent content) { cpClientWindowContent.Content = content.Content; cpClientWindowContent.Visibility = Visibility.Visible; RefreshTitle(); }
public Pane GetPaneFromContent(DockableContent content) { return _rootGroup.GetPaneFromContent(content); }