void TrainListDialog::new_clicked()
{
- GLtk::Container *root = parent;
- while(root->get_parent())
- root = root->get_parent();
-
NewTrainDialog *dlg = new NewTrainDialog(engineer);
- root->add(*dlg);
+ find_ancestor<GLtk::Root>()->add(*dlg);
dlg->autosize();
}
int index = lst_trains->get_selected_index();
if(index>=0)
{
- GLtk::Container *root = parent;
- while(root->get_parent())
- root = root->get_parent();
-
TrainDialog *dlg = new TrainDialog(engineer, *trains.get(index));
- root->add(*dlg);
+ find_ancestor<GLtk::Root>()->add(*dlg);
dlg->autosize();
}
}