//------------------------------------------------------------------- public static ControlContainerSplitterDesc FromTaxonSplitterContainer(ControlContainerSplitter _split) { ControlContainerSplitterDesc desc = new ControlContainerSplitterDesc { Orientation = _split.Orientation, SplitterDistance = _split.SplitterDistance }; if (_split.Panel1.Controls[0] is ControlContainerTabs) { desc.Panel1TabDesc = ControlContainerTabsDesc.FromTaxonTabControls(_split.Panel1.Controls[0] as ControlContainerTabs); } else if (_split.Panel1.Controls[0] is ControlContainerSplitter) { desc.Panel1SplitterDesc = FromTaxonSplitterContainer(_split.Panel1.Controls[0] as ControlContainerSplitter); } if (_split.Panel2.Controls[0] is ControlContainerTabs) { desc.Panel2TabDesc = ControlContainerTabsDesc.FromTaxonTabControls(_split.Panel2.Controls[0] as ControlContainerTabs); } else if (_split.Panel2.Controls[0] is ControlContainerSplitter) { desc.Panel2SplitterDesc = FromTaxonSplitterContainer(_split.Panel2.Controls[0] as ControlContainerSplitter); } return(desc); }
public static ControlContainerTabsDesc FromTaxonTabControls(ControlContainerTabs _tab) { ControlContainerTabsDesc desc = new ControlContainerTabsDesc { ChildrenName = new List <string>() }; foreach (Controls.TaxonControl tuc in _tab.Children) { desc.ChildrenName.Add(tuc.GetType().FullName); } desc.CurrentIndex = _tab.Children.IndexOf(_tab.Current); desc.ShowHeaderWhenOnlyOne = _tab.ShowHeaderWhenOnlyOne; return(desc); }