/// <summary> /// Constructs a new viewmodel /// </summary> /// <param name="browserApi">the browser api for communicating with the browser</param> /// <param name="messenger">messenger</param> public StreetViewViewModel(Messenger messenger = null) : base(messenger) { _interactionMode = new StreetViewInteractionMode(); // Attach event handlers _interactionMode.RequestShowStreetView += HandleShowStreetView; _interactionMode.RequestCheckStreetViewStatus += HandleCheckStreetViewStatus; if (!IsInDesignMode) { RegisterToMessenger(); SetupBrowserApi(); } }
/// <summary> /// Show Street View for the given coord /// </summary> /// <param name="coord">Coord for display</param> /// <returns>true if request has succeeded</returns> public bool HandleShowStreetView(StreetViewInteractionMode sender, StreetViewInteractionMode.StreetViewPositionEventArgs args) { var wgsCoordinate = args.Coordinate; return(BrowserAPI.Instance.ShowStreetView(wgsCoordinate.X, wgsCoordinate.Y)); }