static void OnProjectReloaded(object sender, EventArgs a)
{
if (WidgetNotebook.Page == -1)
return;
// Get the opened components
int active = WidgetNotebook.Page;
ArrayList pages = new ArrayList ();
while (WidgetNotebook.NPages > 0) {
DesignerView view = (DesignerView) WidgetNotebook.GetNthPage (0);
pages.Add (view.Component.Name);
WidgetNotebook.Remove (view);
view.Dispose ();
}
openWindows.Clear ();
// Reopen the components
foreach (string s in pages) {
WidgetInfo w = Project.GetWidget (s);
if (w != null)
OpenWindow (w);
}
WidgetNotebook.Page = active;
}