Esempio n. 1
0
        void TreeViewAfterLabelEdit(object sender, NodeLabelEditEventArgs e)
        {
            var label = e.Label;

            if (label != null && AfterLabelEdit != null)
            {
                // Fire the event AFTER tree node editing took place. Weired behaviour otherwise.
                // See http://www.codeproject.com/KB/tree/CustomizedLabelEdit.aspx and comments
                var doItLater = new DoItLater(
                    delegate()
                {
                    var args = new VVVV.Core.Viewer.LabelEditEventArgs(e.Node.Tag, label);
                    AfterLabelEdit(this, args);

                    if (args.CancelEdit)
                    {
                        e.Node.BeginEdit();
                    }
                    else
                    {
                        FTreeView.SelectedNode = e.Node;
                    }
                });

                FTreeView.BeginInvoke(doItLater);
            }

            e.CancelEdit = true;
        }
Esempio n. 2
0
        void TreeViewBeforeLabelEdit(object sender, NodeLabelEditEventArgs e)
        {
            if (BeforeLabelEdit != null)
            {
                var args = new VVVV.Core.Viewer.LabelEditEventArgs(e.Node.Tag, e.Label);
                BeforeLabelEdit(this, args);

                e.CancelEdit = args.CancelEdit;
            }
            else
            {
                e.CancelEdit = true;
            }
        }
Esempio n. 3
0
 void LabelEditor_AfterLabelEdit(object sender, VVVV.Core.Viewer.LabelEditEventArgs args)
 {
     if (args.Model.Equals(Renameable))
     {
         var label = args.Label;
         if (Renameable.CanRenameTo(label))
         {
             var command = Command.Rename(Renameable, label);
             CommandHistory.Insert(command);
             LabelEditor.AfterLabelEdit -= LabelEditor_AfterLabelEdit;
         }
         else
         {
             args.CancelEdit = true;
         }
     }
 }
Esempio n. 4
0
 void LabelEditor_BeforeLabelEdit(object sender, VVVV.Core.Viewer.LabelEditEventArgs args)
 {
     args.CancelEdit = !args.Model.Equals(Renameable);
 }