123456789101112131415161718192021222324252627282930313233 |
- using System.Drawing;
- using InABox.Core;
- namespace InABox.Avalonia.Platform;
- public class GeoLocationTimerArgs(TimeSpan frequency, TimeSpan remaining) : EventArgs
- {
- public TimeSpan Frequency { get; } = frequency;
- public TimeSpan Remaining { get; } = remaining;
- }
- public delegate void GeoLocationTimerHandler(object sender, GeoLocationTimerArgs e);
- public class GeoLocationChangedArgs(GeoPoint? location) : EventArgs
- {
- public GeoPoint? Location { get; } = location;
- }
- public delegate void GeoLocationChangedHandler(object sender, GeoLocationChangedArgs e);
- public interface IGeolocation : ILoggable
- {
-
- bool Scanning { get; set; }
-
- GeoPoint? CurrentLocation { get; set; }
-
- public event GeoLocationChangedHandler? LocationChanged;
-
- public event GeoLocationTimerHandler? TimerChanged;
-
- Task<GeoPoint?> GetLocationAsync(CancellationTokenSource cancel);
- }
|