public DrawEventArgs(TreeNodeAdv node, EditableControl control, DrawContext context, string text) : base(node) { _control = control; _context = context; _text = text; }
internal void DisplayEditor(Control editor, EditableControl owner) { if (editor == null || owner == null || CurrentNode == null) throw new ArgumentNullException(); HideEditor(false); CurrentEditor = editor; CurrentEditorOwner = owner; _editingNode = CurrentNode; editor.Validating += EditorValidating; UpdateEditorBounds(); UpdateView(); editor.Parent = this; editor.Focus(); owner.UpdateEditor(editor); }
internal bool HideEditor(bool applyChanges) { if (CurrentEditor != null) { if (applyChanges) { if (!ApplyChanges()) return false; } //Check once more if editor was closed in ApplyChanges if (CurrentEditor != null) { CurrentEditor.Validating -= EditorValidating; CurrentEditorOwner.DoDisposeEditor(CurrentEditor); CurrentEditor.Parent = null; CurrentEditor.Dispose(); CurrentEditor = null; CurrentEditorOwner = null; _editingNode = null; } } return true; }