private void RemoveWindowGrouped(ExtendedWindow window, Type wType = null) { if (window == null) { return; } if (wType == null) { wType = window.GetType(); } if (!windowsGrouped.ContainsKey(wType)) { return; } windowsGrouped[wType].Remove(window); if (wType.BaseType != null) { RemoveWindowGrouped(window, wType.BaseType); } }
private void AddWindowGrouped(ExtendedWindow window, Type wType = null) { if (window == null) { return; } if (wType == null) { wType = window.GetType(); } if (!windowsGrouped.ContainsKey(wType)) { windowsGrouped.Add(wType, new List <ExtendedWindow>()); } windowsGrouped[wType].Add(window); if (wType.BaseType != null) { AddWindowGrouped(window, wType.BaseType); } }