예제 #1
0
 private void EmitRowInserted(ITreeNode node)
 {
     model_adapter.EmitRowInserted(GetPath(node), GetIter(node));
     for (int i = 0; i < node.ChildCount; i++)
     {
         EmitRowInserted(node [i]);
     }
 }
예제 #2
0
        void HandleRowInserted(object sender, ListRowEventArgs e)
        {
            var p  = new Gtk.TreePath(new int[] { e.Row });
            var it = IterFromNode(e.Row);

            adapter.EmitRowInserted(p, it);
            parent.QueueResize();
        }
예제 #3
0
        void HandleNodeInserted(object sender, TreeNodeEventArgs e)
        {
            // Don't increase the stamp because no nodes have been removed, so all iters are still valid
            // Update the cached indexes
            var parent = source.GetParent(e.Node);
            var count  = source.GetChildrenCount(parent);

            for (int n = e.ChildIndex + 1; n < count; n++)
            {
                var child = source.GetChild(parent, n);
                if (child != null)
                {
                    CacheIndex(child, n);
                }
            }
            var iter = IterFromNode(e.Node, e.ChildIndex);

            adapter.EmitRowInserted(GetPath(e.Node), iter);
        }
예제 #4
0
 void HandleNodeInserted(object sender, TreeNodeEventArgs e)
 {
     Gtk.TreeIter it = IterFromNode(e.Node);
     adapter.EmitRowInserted(GetPath(it), it);
 }
예제 #5
0
 void OnChildAdded(object o, NodeEventArgs args)
 {
     TreeModelAdapter adapter = new TreeModelAdapter (this);
     adapter.EmitRowInserted (PathFromNode (args.Node), IterFromNode (args.Node));
 }