Adroit.Gui.PlanningView.ProjectDb_Inserted C# (CSharp) Method

ProjectDb_Inserted() private method

private ProjectDb_Inserted ( object sender, BdbArgs args ) : void
sender object
args Adroit.Data.BdbArgs
return void
        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;
                });
            }
        }