private FindDockGroupItem ( string id ) : MonoDevelop.Components.Docking.DockGroupItem | ||
id | string | |
return | MonoDevelop.Components.Docking.DockGroupItem |
internal bool InRegion(string location, DockGroup objToFindParent, int objToFindIndex, bool insertingPosition) { // Checks if the object is in the specified region. // A region is a collection with the format: "ItemId1/Position1;ItemId2/Position2..." string[] positions = location.Split(';'); foreach (string pos in positions) { // We individually check each entry in the region specification int i = pos.IndexOf('/'); if (i == -1) { continue; } string id = pos.Substring(0, i).Trim(); DockGroup g = container.Layout.FindGroupContaining(id); if (g != null) { DockPosition dpos; try { dpos = (DockPosition)Enum.Parse(typeof(DockPosition), pos.Substring(i + 1).Trim(), true); } catch { continue; } var refItem = g.FindDockGroupItem(id); if (InRegion(g, dpos, refItem, objToFindParent, objToFindIndex, insertingPosition)) { return(true); } } } return(false); }
internal DockGroupItem FindDockGroupItem(string id) { foreach (DockObject ob in dockObjects) { DockGroupItem it = ob as DockGroupItem; if (it != null && it.Id == id) { return(it); } DockGroup g = ob as DockGroup; if (g != null) { it = g.FindDockGroupItem(id); if (it != null) { return(it); } } } return(null); }