/// <summary> /// Move view size info /// </summary> /// <param name="view">view</param> /// <param name="source">source</param> /// <returns>view size</returns> private static Size RemoveViewSizeInfo(FormsTabbedView view, List <ControlSizeInfo> source) { Form form = view.GetPageAt(0); ControlSizeInfo firstInfo = GetInfo(form, source); for (int index = 0; index < view.Count; index++) { ControlSizeInfo info = GetInfo(view.GetPageAt(index), source); source.Remove(info); } return(new Size(firstInfo.Width, firstInfo.Height)); }
/// <summary> /// Dock fill in parent container /// </summary> /// <param name="formTabbedView">view to dock</param> /// <param name="parentTabbedView">view where will dock</param> private static void DockFillInParentContainer(FormsTabbedView formTabbedView, FormsTabbedView parentTabbedView) { Form selected = formTabbedView.GetPageAt(formTabbedView.SelectedIndex); DockableFormInfo[] movedPages = formTabbedView.MovePagesTo(parentTabbedView); foreach (DockableFormInfo movedPage in movedPages) { movedPage.Dock = DockStyle.Fill; movedPage.DockMode = zDockMode.Inner; } for (int index = 0; index < parentTabbedView.Count; index++) { if (parentTabbedView.GetPageAt(index) == selected) { parentTabbedView.SelectedIndex = index; break; } } }
/// <summary> /// Save the view /// </summary> /// <param name="view">view to save</param> /// <param name="viewOwnerId">view owner identifier</param> /// <param name="xmlForms">forms node</param> /// <returns>identifier of the view</returns> private Guid SaveView(FormsTabbedView view, Guid viewOwnerId, XmlNode xmlForms) { Form firstDockedPage = null; for (int childIndex = 0; childIndex < view.Count; childIndex++) { DockableFormInfo childInfo = view.GetPageInfoAt(childIndex); if (childInfo.Dock != DockStyle.Fill) { firstDockedPage = childInfo.DockableForm; break; } } if (firstDockedPage == null) { firstDockedPage = view.GetPageAt(0); } DockableFormInfo info = _container.GetFormInfo(firstDockedPage); Save(info, viewOwnerId, xmlForms); for (int childIndex = 0; childIndex < view.Count; childIndex++) { DockableFormInfo siblingInfo = view.GetPageInfoAt(childIndex); if (siblingInfo == info) { continue; } Save(siblingInfo, info.Id, xmlForms); } return(info.Id); }
/// <summary> /// Save the view /// </summary> /// <param name="view">view to save</param> /// <param name="viewOwnerId">view owner identifier</param> /// <param name="xmlForms">forms node</param> /// <returns>identifier of the view</returns> private Guid SaveView(FormsTabbedView view, Guid viewOwnerId, XmlNode xmlForms) { Form firstDockedPage = null; for (int childIndex = 0; childIndex < view.Count; childIndex++) { DockableFormInfo childInfo = view.GetPageInfoAt(childIndex); if (childInfo.Dock != DockStyle.Fill) { firstDockedPage = childInfo.DockableForm; break; } } if (firstDockedPage == null) { firstDockedPage = view.GetPageAt(0); } DockableFormInfo info = _container.GetFormInfo(firstDockedPage); Save(info, viewOwnerId, xmlForms); for (int childIndex = 0; childIndex < view.Count; childIndex++) { DockableFormInfo siblingInfo = view.GetPageInfoAt(childIndex); if (siblingInfo == info) { continue; } Save(siblingInfo, info.Id, xmlForms); } return info.Id; }
/// <summary> /// Move view size info /// </summary> /// <param name="view">view</param> /// <param name="source">source</param> /// <returns>view size</returns> private static Size RemoveViewSizeInfo(FormsTabbedView view, List<ControlSizeInfo> source) { Form form = view.GetPageAt(0); ControlSizeInfo firstInfo = GetInfo(form, source); for(int index = 0; index < view.Count; index++) { ControlSizeInfo info = GetInfo(view.GetPageAt(index), source); source.Remove(info); } return new Size(firstInfo.Width, firstInfo.Height); }