/// <summary> /// </summary> /// <param name="events"></param> /// <param name="adapter"></param> public void RemoveLocation(XameteoEvents events, ApixuPlace adapter) { var previous = MenuItems.FirstOrDefault(it => it.ViewModel == adapter); if (previous != null) { MenuItems.Remove(previous); } }
/// <summary> /// </summary> /// <param name="viewModel"></param> public void InsertLocation(ApixuPlace viewModel) { MenuItems.Add(new MainModel { ViewModel = viewModel, TargetType = typeof(LocationView), Title = viewModel.Forecast.Location.Formatted, Icon = ImageSource.FromFile(viewModel.Adapter.Icon) }); }
/// <summary> /// </summary> /// <param name="apixuPlace"></param> public LocationView(ApixuPlace apixuPlace) { try { _place = apixuPlace; InitializeView(apixuPlace.Forecast); ToolbarItems.Add(new ToolbarItem(Resx.Resources.Button_Refresh, "icon_refresh.png", RefreshPlace)); } catch (Exception exception) { XameteoDialogs.Alert(exception); } }
/// <summary> /// </summary> public async void RefreshPlace() { XameteoDialogs.ShowLoading(); try { var place = await XameteoApp.Instance.RefreshPlace(_place); if (place != null) { Children.Clear(); _place = place; InitializeView(place.Forecast); } XameteoDialogs.HideLoading(); } catch (Exception exception) { XameteoDialogs.HideLoading(); XameteoDialogs.Alert(exception); } }
/// <summary> /// </summary> /// <param name="adapter"></param> public void Remove(ApixuPlace adapter) => MessagingCenter.Send(this, RemoveTag, adapter);
/// <summary> /// </summary> /// <param name="adapter"></param> public void Insert(ApixuPlace adapter) => MessagingCenter.Send(this, InsertTag, adapter);
/// <summary> /// </summary> /// <param name="adapter"></param> public void View(ApixuPlace adapter) => MessagingCenter.Send(this, ViewTag, adapter);
/// <summary> /// </summary> /// <param name="place"></param> /// <returns></returns> public MainModel FindModel(ApixuPlace place) { return(MenuItems.FirstOrDefault(it => it.ViewModel == place)); }
/// <summary> /// </summary> /// <param name="events"></param> /// <param name="viewModel"></param> public void InsertLocation(XameteoEvents events, ApixuPlace viewModel) { InsertLocation(viewModel); }