/Main/src/DynamicDataDisplay/ViewportConstraints/DateTimeVerticalAxisConstraint.cs
# · C# · 25 lines · 22 code · 3 blank · 0 comment · 1 complexity · d966cff764f318136dbded11cea5fe0e MD5 · raw file
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
-
- namespace Microsoft.Research.DynamicDataDisplay.ViewportConstraints
- {
- public sealed class DateTimeVerticalAxisConstraint : ViewportConstraint
- {
- private readonly double minSeconds = new TimeSpan(DateTime.MinValue.Ticks).TotalSeconds;
- private readonly double maxSeconds = new TimeSpan(DateTime.MaxValue.Ticks).TotalSeconds;
-
- public override DataRect Apply(DataRect previousDataRect, DataRect proposedDataRect, Viewport2D viewport)
- {
- DataRect borderRect = DataRect.Create(proposedDataRect.XMin, minSeconds, proposedDataRect.XMax, maxSeconds);
- if (proposedDataRect.IntersectsWith(borderRect))
- {
- DataRect croppedRect = DataRect.Intersect(proposedDataRect, borderRect);
- return croppedRect;
- }
-
- return previousDataRect;
- }
- }
- }