Exemplo n.º 1
0
 public MainViewModel(IBillCalculator billCalculator,
                      Task<IUserRepository> userRepositoryTask, IFuelPriceAccesser fuelPriceAccesser,
                      ITaksariDialogService messageBoxes)
 {
     //Register messengers
     IMvxMessenger messenger = Mvx.Resolve<IMvxMessenger>();
     messenger.Subscribe<ToggleUserActivityMessage>(OnToggleUserActivityMessageReceived, MvxReference.Strong);
     messenger.Subscribe<DeleteUserMessage>(OnDeleteUserMessageReceived, MvxReference.Strong);
     messenger.Subscribe<PaymentRequestedMessage>(OnPaymentRequestedMessageReceived, MvxReference.Strong);
     //FuelPriceAccesser. PropertyChangedEvent is handled for setting new fuelprices to _appsettings
     AppSettings.FuelPricesAreUpToDate = false;
     fuelPriceAccesser.FuelPricesUpdated += OnFuelPricesUpdated;
     //UserRepository
     _userRepositoryTask = userRepositoryTask;
     //Init SortingObservableCollections
     ActiveUserViewModelsTask =
         new NotifyTaskCompletion<ObservableCollection<IUserViewModel>>(InitActiveUserViewModelsAsync());
     ActiveUserViewModelsTask.PropertyChanged += OnActiveUsersTaskPropertyChanged;
     InActiveUserViewModelsTask =
         new NotifyTaskCompletion<ObservableCollection<IUserViewModel>>(InitInActiveUserViewModelsAsync());
     //BillCalculator
     _billCalculator = billCalculator;
     _billCalculator.CostsPerKm = AppSettings.FinalCostsPerKm;
     _billCalculator.BillsChanged += OnBillsChanged;
     _billCalculator.LocatorStatusChanged += OnLocatorStatusChanged;
     //Message boxes
     _dialogService = messageBoxes;
     //Default LocatorStatus
     LocatorStatus = new BindablePositionStatus(WrappedPositionStatus.Ready);
 }
Exemplo n.º 2
0
 private void OnLocatorStatusChanged(object sender, LocatorStatusChangedEventArgs args)
 {
     LocatorStatus = new BindablePositionStatus(args.Status);
 }