private IDictionary <string, object> _transientData; /// lazy //private string _transientId; // ======================================== // constructor // ======================================== public Editor() { /// Editorの親子構造の準備 _structure = new StructuredSupport <Editor>(this); _structure.DetailedPropertyChanging += (sender, e) => { if (e.PropertyName == ICompositeProperty.Parent) { OnParentChanging(e); } else if (e.PropertyName == ICompositeProperty.Children) { OnChildrenChanging(e); } }; _structure.DetailedPropertyChanged += (sender, e) => { if (e.PropertyName == ICompositeProperty.Parent) { OnParentChanged(e); } else if (e.PropertyName == ICompositeProperty.Children) { OnChildrenChanged(e); } }; _visitable = new VisitableSupport <IEditor>( this, editor => { if (_structure.HasChildren) { return(editor.Children); } else { return(EmptyEditors); } } ); _figureMaintainer = new FigureStructureMaintainer(this); _roles = new List <IRole>(); _requestIdToFeedback = new Dictionary <string, IFigure>(); _editorHandles = new List <IEditorHandle>(); _auxHandleToStickyKind = new InsertionOrderedDictionary <IAuxiliaryHandle, HandleStickyKind>(); _isEnabled = false; _canSelect = true; _isFocused = false; _canFocus = true; _isMouseEntered = false; //_transientId = Guid.NewGuid().ToString(); }
// ======================================== // constructor // ======================================== public AbstractFigure() { _structure = new StructuredSupport <IFigure>(this); _structure.DetailedPropertyChanged += (sender, e) => { if (e.PropertyName == ICompositeProperty.Parent) { OnParentChanged(e); } else if (e.PropertyName == ICompositeProperty.Children) { OnChildrenChanged(e); } }; _preferredSize = Size.Empty; _isVisible = true; _cursorProvider = null; }