Esempio n. 1
0
 protected override void AfterPropertyChanged(BaseProperty oldValue, BaseProperty newValue)
 {
     _property = (StrokableProperty)newValue;
     if (_property != null)
     {
         SetNewPen();
     }
 }
Esempio n. 2
0
 public LineShape(EPKernel container, StrokableProperty property)
     : base(container, property)
 {
     _hotspots = new DraggableHotSpot[] {
         new DraggableHotSpot(HotSpotType.LineVertex),
         new DraggableHotSpot(HotSpotType.LineVertex)
     };
 }
Esempio n. 3
0
 public StrokableShape(EPKernel container, StrokableProperty property)
     : base(container, property)
 {
     _property = property;
     if (_property != null)
     {
         SetNewPen();
     }
 }
Esempio n. 4
0
 public BrokenLine(EPKernel container, StrokableProperty pro)
     : base(container, pro)
 {
     _hotspots = new DraggableHotSpot[4];
     for (int i = 0; i < 4; i++)
     {
         _hotspots[i] = new DraggableHotSpot(HotSpotType.LineVertex);
     }
 }
Esempio n. 5
0
        public StrokableProperty GetStrokableProperty()
        {
            StrokableProperty sp = new StrokableProperty();

            sp.Antialias    = this.Antialias;
            sp.PenWidth     = this.PenWidth;
            sp.StrokeColor  = this.StrokeColor;
            sp.LineDash     = this.LineDash;
            sp.StartLineCap = this.StartLineCap;
            sp.EndLineCap   = this.EndLineCap;
            sp.PenAlign     = this.PenAlign;
            sp.HowLineJoin  = this.HowLineJoin;
            return(sp);
        }
Esempio n. 6
0
        private void CheckShapeProperty()
        {
            if (currentTool != ToolType.ShapeSelect || SelectedShapesCount != 1)
            {
                return;
            }

            bool         diff    = false;
            BaseProperty basepro = shapesList[selectedShapesIndexList[0]].ShapeProperty;

            if (proCollector.Antialias != basepro.Antialias)
            {
                proCollector.Antialias = basepro.Antialias;
                diff = true;
            }

            if (basepro is IndicatorArrowProperty)
            {
                IndicatorArrowProperty ip = (IndicatorArrowProperty)basepro;
                if (ip.LineColor != proCollector.StrokeColor ||
                    ip.LineSize != proCollector.IndicatorLineSize)
                {
                    diff = true;
                    proCollector.StrokeColor       = ip.LineColor;
                    proCollector.IndicatorLineSize = ip.LineSize;
                }
            }

            if (basepro is StrokableProperty)
            {
                StrokableProperty sp = (StrokableProperty)basepro;
                if (proCollector.PenWidth != sp.PenWidth ||
                    proCollector.StrokeColor != sp.StrokeColor ||
                    proCollector.LineDash != sp.LineDash ||
                    proCollector.StartLineCap != sp.StartLineCap ||
                    proCollector.EndLineCap != sp.EndLineCap ||
                    proCollector.PenAlign != sp.PenAlign ||
                    proCollector.HowLineJoin != sp.HowLineJoin)
                {
                    diff = true;
                    proCollector.PenWidth     = sp.PenWidth;
                    proCollector.StrokeColor  = sp.StrokeColor;
                    proCollector.LineDash     = sp.LineDash;
                    proCollector.StartLineCap = sp.StartLineCap;
                    proCollector.EndLineCap   = sp.EndLineCap;
                    proCollector.PenAlign     = sp.PenAlign;
                    proCollector.HowLineJoin  = sp.HowLineJoin;
                }
            }

            if (basepro is FillableProperty)
            {
                FillableProperty fp = (FillableProperty)basepro;
                if (proCollector.PaintType != fp.PaintType ||
                    proCollector.FillColor != fp.FillColor ||
                    proCollector.FillType != fp.FillType)
                {
                    diff = true;
                    proCollector.PaintType = fp.PaintType;
                    proCollector.FillColor = fp.FillColor;
                    proCollector.FillType  = fp.FillType;
                }
            }

            if (basepro is RoundedRectProperty)
            {
                RoundedRectProperty rp = (RoundedRectProperty)basepro;
                if (proCollector.RadiusAll != rp.RadiusAll)
                {
                    diff = true;
                    proCollector.RadiusAll = rp.RadiusAll;
                }
            }

            if (diff)
            {
                OnPropertyCollectorChanged(EventArgs.Empty);
            }
        }