internal void Show() { foreach (IReflectorDirectionShow director in core_common.directors) { director.PageChanged(); } menu_item.Checked = true; foreach (ControlTracker c in this) { IReflectorWidget widget = c.o as IReflectorWidget; IReflectorDirectionShow direction = c.o as IReflectorDirectionShow; IReflectorWindow irw = c.o as IReflectorWindow; if (direction != null) { direction.Shown(); } if (irw != null) { // we might not have moved... but, better safe than sorry. irw.Move(); } if (widget != null) { if (widget.CanShow) { c.c.Visible = true; } } else { widget = c.c as IReflectorWidget; if (widget != null) { if (widget.CanShow) { // if no widget interface, assume it's visible. c.c.Visible = true; } } else { //if( direction != null ) { //direction.Shown(); } c.c.Visible = true; } } } }
internal void Hide() { menu_item.Checked = false; foreach (ControlTracker c in this) { IReflectorDirectionShow direction = c.o as IReflectorDirectionShow; if (direction != null) { direction.Hidden(); } c.c.Visible = false; } }