public void HidePanel(IdePanel panel)
{
Control parent = panel;
while (parent != null)
{
if (parent is IdeGroupedPanel groupedPanel)
{
RemovePanelFromGroupedPanel(panel, groupedPanel);
OnPanelStatusChanged(panel, false);
return;
}
parent = parent.Parent;
}
var panelForm = panel.FindForm();
if (panelForm != null && !(panelForm is MainForm))
{
_memorizedPanelPositions.Remove(panel);
panelForm.Visible = false;
OnPanelStatusChanged(panel, false);
return;
}
RemovePanelFromSplitContainer(panel);
OnPanelStatusChanged(panel, false);
}