private void DrawKpmGraph()
        {
            if (_activityReport?.KeyStrokesPerMinute == null || !_activityReport.KeyStrokesPerMinute.Any())
            {
                return;
            }

            var kpmList = ActivityGraphHelper.GetKpmList(_activityReport);

            var maxKeyStrokes = kpmList.Max();

            for (var i = 0; i < kpmList.Length; ++i)
            {
                var keyStrokes = kpmList[i];

                var color = ActivityGraphHelper.GetBarColor(keyStrokes, maxKeyStrokes);

                var x      = i * GraphProperties.BarWidth + GraphProperties.Left + GraphProperties.AxisPaddingX + 1;
                var y      = GraphProperties.Bottom - Math.Min((float)keyStrokes / maxKeyStrokes * GraphProperties.Bottom, GraphProperties.Bottom) + GraphProperties.Top + GraphProperties.AxisPaddingY;
                var height = Math.Max(0, GraphProperties.Bottom - y) - GraphProperties.AxisPaddingY;

                _coupledGraphics.FillRectangle(new SolidBrush(color), x, y, GraphProperties.BarWidth, height);
            }
        }
        public void Update(IActivityReport activityReport)
        {
            var kpmList = ActivityGraphHelper.GetKpmList(activityReport);

            _coupledControl.SetPropertyThreadSafe(_propertyName, kpmList.Max().ToString());
        }