public Window [] FindAllGtkSubWindow (Window mainWindow, string name)
{
List<Window> retval = new List<Window> ();
AndCondition cond = new AndCondition (
new PropertyCondition (AutomationElementIdentifiers.ProcessIdProperty,
mainWindow.AutomationElement.Current.ProcessId),
new PropertyCondition (AutomationElementIdentifiers.ControlTypeProperty,
ControlType.Window),
new PropertyCondition (AutomationElementIdentifiers.NameProperty, name));
var elements = AutomationElement.RootElement.FindAll (TreeScope.Children, cond);
foreach (AutomationElement ae in elements) {
retval.Add (new Window (ae));
}
return retval.ToArray();
}
}