Beispiel #1
0
        private EdgeBehaviorOptions _behaviorOptions = new EdgeBehaviorOptions(); /// transient

        // ========================================
        // constructor
        // ========================================
        public AbstractEdge() : base()
        {
            _edgePoints = new NotifyChangeList <Point>(new List <Point>(2));
            _edgePoints.Add(Point.Empty);
            _edgePoints.Add(Point.Empty);

            _edgePoints.EventSender              = this;
            _edgePoints.EventPropertyName        = IEdgeProperty.EdgePoints;
            _edgePoints.DetailedPropertyChanged += HandleEdgePointsChanged;

            _ResourceCache.RegisterResourceCreator(
                PenResourceKey,
                () => {
                var ret       = new Pen(_lineColor, _lineWidth);
                ret.DashStyle = _lineDashStyle;
                return(ret);
            },
                ResourceDisposingPolicy.Immediate
                );
        }