private void OnNodeDeleted(TreeNodeChildEventArgs e) { var handler = NodeDeleted; if (handler != null) { handler(this, e); } }
public void Remove(TreePosition pos) { version++; IterPos tpos = GetIterPos(pos); Gtk.TreeIter it = tpos.Iter; var delPath = Tree.GetPath(it); var eventArgs = new TreeNodeChildEventArgs(GetParent(tpos), delPath.Indices[delPath.Indices.Length - 1], pos); Tree.Remove(ref it); if (NodeDeleted != null) { NodeDeleted(this, eventArgs); } }
void HandleNodeDeleted(object sender, TreeNodeChildEventArgs e) { if (e.Node == null) { adapter.EmitRowDeleted(new Gtk.TreePath(new int[] { e.ChildIndex })); } else { Gtk.TreeIter it = IterFromNode(e.Node); var p = GetPath(it); int[] idx = new int [p.Indices.Length + 1]; p.Indices.CopyTo(idx, 0); idx [idx.Length - 1] = e.ChildIndex; adapter.EmitRowDeleted(new Gtk.TreePath(idx)); } }
void HandleNodeDeleted(object sender, TreeNodeChildEventArgs e) { if (e.Node != null && !handleHash.ContainsKey(e.Node)) { return; } NodeData data; if (e.Child != null && handleHash.TryGetValue(e.Child, out data)) { // Increase the model stamp since the node is gone and there may // be iters referencing that node. Increasing the stamp will // invalidate all those nodes stamp++; data.Handle.Free(); handleHash.Remove(e.Child); // Update the indexes of the node following the deleted one var count = source.GetChildrenCount(e.Node); for (int n = e.ChildIndex; n < count; n++) { var child = source.GetChild(e.Node, n); if (child != null) { CacheIndex(child, n); } } } if (e.Node == null) { adapter.EmitRowDeleted(new Gtk.TreePath(new int[] { e.ChildIndex })); } else { var p = GetPath(e.Node); int[] idx = new int [p.Indices.Length + 1]; p.Indices.CopyTo(idx, 0); idx [idx.Length - 1] = e.ChildIndex; adapter.EmitRowDeleted(new Gtk.TreePath(idx)); } }
public void Remove(TreePosition pos) { version++; IterPos tpos = GetIterPos (pos); Gtk.TreeIter it = tpos.Iter; var delPath = Tree.GetPath (it); var eventArgs = new TreeNodeChildEventArgs (GetParent (tpos), delPath.Indices[delPath.Indices.Length - 1]); Tree.Remove (ref it); if (NodeDeleted != null) NodeDeleted (this, eventArgs); }
void HandleNodeDeleted (object sender, TreeNodeChildEventArgs e) { if (e.Node == null) { adapter.EmitRowDeleted (new Gtk.TreePath (new int[] { e.ChildIndex })); } else { Gtk.TreeIter it = IterFromNode (e.Node); var p = GetPath (it); int[] idx = new int [p.Indices.Length + 1]; p.Indices.CopyTo (idx, 0); idx [idx.Length - 1] = e.ChildIndex; adapter.EmitRowDeleted (new Gtk.TreePath (idx)); } }
private void OnNodeDeleted (TreeNodeChildEventArgs e) { var handler = NodeDeleted; if (handler != null) handler (this, e); }