void ProjectDb_Inserted(object sender, BdbArgs args)
{
/* we can't perfectly know where this row was before hand.
* so we will just append it to the level it belongs.
*/
var project = args.Value as Project;
if (project == null)
return;
if (project.ParentId == 0) {
m_projectStore.AppendValues (project);
}
else {
m_projectStore.Foreach (delegate (TreeModel model, TreePath path, TreeIter iter) {
var item = model.GetValue (iter, 0) as Project;
if (item == null)
return false;
if (item.Id == project.ParentId) {
m_projectStore.AppendValues (iter, project);
return true;
}
return false;
});
}
}