internal void ShowSelection(bool bShow) { _selectionVisible = bShow; SetCursor(); if (!_selectionVisible) { _selectionDots.RemoveAll(); return; } _selectionDots.C = C; _selectionDots.Start(); foreach (SelectionDotInfo point in GetSelectionPoints()) { SelectionDot dot = _selectionDots.GetPaintObject(point.Corner, point.Clickable); dot.SetPos(point.Position); dot.Tag = this; //dot.SetClip(Clip); Shape shape = dot.Shape; shape.Clip = GetClip(Canvas.GetLeft(shape), Canvas.GetTop(shape), _paintableRect); dot.ZIndex = ZIndexConstants.SelectionPoint1; } _selectionDots.Stop(); }
internal void ShowSelection() { if (!_selectable) { return; } _selected = true; double dx = 0; DataEntryCollection data = _chartPanel._chartX._dataManager[_seriesIndex].Data; _selectionDots.C = _chartPanel._rootCanvas; _selectionDots.Start(); for (int i = _chartPanel._chartX._startIndex; i < _chartPanel._chartX._endIndex; i++) { if (!data[i].Value.HasValue) { continue; } double x = _chartPanel._chartX.GetXPixel(i - _chartPanel._chartX._startIndex); if (x - dx <= 50) { continue; } dx = x; SelectionDot dot = _selectionDots.GetPaintObject(Types.Corner.MoveAll); dot.SetPos(new Point(dx, GetY(data[i].Value.Value))); dot.Tag = this; } _selectionDots.Stop(); _selectionDots.Do(dot => dot.ZIndex = ZIndexConstants.SelectionPoint1); }