Exemple #1
0
        public HomeLocationEditorViewModel(
            ISchedulerProvider schedulerProvider,
            INavigationService navigationService,
            IPlacesProvider placesProvider,
            IEmptyAutocompleteResultProvider autocompleteResultProvider,
            ISettingsProvider settingsProvider,
            IGeocodingProvider geocodingProvider) : base(schedulerProvider, placesProvider, geocodingProvider, navigationService)
        {
            _autocompleteResultProvider = autocompleteResultProvider;

            SelectedAutoCompleteResultModelObservable
            .Subscribe(async result =>
            {
                var address = await geocodingProvider.ReverseGeocodingFromPlaceId(result.PlaceId);
                settingsProvider.SetHomeAddress(address);
                navigationService.GoBack();
            });

            this.Changed(() => SelectedSearchResult)
            .Where(r => r is SetLocationOnMapResultModel)
            .Subscribe(result =>
            {
                navigationService.NavigateTo <ChooseHomeAddressOnMapViewModel>();
            });
        }
        public DestinationLocationEditorViewModel(
            ISchedulerProvider schedulerProvider,
            INavigationService navigationService,
            IPlacesProvider placesProvider,
            IGeocodingProvider geocodingProvider,
            IChooseOnMapViewModelFactory chooseOnMapViewModelFactory,
            IEmptyAutocompleteResultProvider autocompleteResultProvider,
            ISelectedDestinationByMapSubscriber destinationByMapSubscriber)
            : base(schedulerProvider, placesProvider, geocodingProvider, navigationService)
        {
            _navigationService           = navigationService;
            _chooseOnMapViewModelFactory = chooseOnMapViewModelFactory;
            _autocompleteResultProvider  = autocompleteResultProvider;

            this.Changed(() => SelectedSearchResult)
            .Where(r => r is SetLocationOnMapResultModel)
            .ObserveOn(schedulerProvider.SynchronizationContextScheduler)
            .Subscribe(NavigateToChooseDestinationOnMapViewModel);

            destinationByMapSubscriber.Publisher.Handler.Subscribe(address =>
            {
                SelectedAddress = address;
                navigationService.GoBack();
            });
        }
Exemple #3
0
 public PickupLocationEditorViewModel(
     ISchedulerProvider schedulerProviderer,
     INavigationService navigationService,
     IPlacesProvider placesProvider,
     IGeocodingProvider geocodingProvider,
     IEmptyAutocompleteResultProvider autocompleteResultProvider) : base(schedulerProviderer, placesProvider, geocodingProvider, navigationService)
 {
     _autocompleteResultProvider = autocompleteResultProvider;
 }
        public WorkLocationEditorViewModel(
            ISchedulerProvider schedulerProvider,
            INavigationService navigationService,
            IPlacesProvider placesProvider,
            IEmptyAutocompleteResultProvider autocompleteResultProvider,
            ISettingsProvider settingsProvider,
            IGeocodingProvider geocodingProvider) : base(schedulerProvider, placesProvider, geocodingProvider, navigationService)
        {
            _navigationService          = navigationService;
            _autocompleteResultProvider = autocompleteResultProvider;
            _settingsProvider           = settingsProvider;
            _geocodingProvider          = geocodingProvider;

            this.Changed(() => SelectedSearchResult)
            .Where(r => r is SetLocationOnMapResultModel)
            .Subscribe(result =>
            {
                navigationService.NavigateTo <ChooseWorkAddressOnMapViewModel>();
            });
        }