async void Navigator_Clicked(object sender, EventArgs e) { var projectdata = Services.XServices.Instance.GetService <ViewModels.ProjectData>(); projectdata.SaveLastSession(); var m_Client = Services.XServices.Instance.GetService <ComosWebSDK.IComosWeb>(); m_Client.StartHeartBeat(); Device.StartTimer(TimeSpan.FromSeconds( m_Client.HeartBeat), m_Client.DoHeartBeat); // Init the image converter based on the database to use. object tmp = null; if (App.Current.Resources.TryGetValue("PictureToImage", out tmp)) { Converters.PictureRefToImage c = tmp as Converters.PictureRefToImage; if (c != null) { c.InitConverter(projectdata.SelectedLayer.Database); } } Frame bt = (Frame)sender; await FadeOutIn(bt); await App.Navigation.PushAsync(new comos.NavigatorTabbed(projectdata.SelectedLayer, projectdata.SelectedLanguage.LCID)); }
async void OnClickedOpenProject(object sender, EventArgs e) { var projectdata = (ViewModels.ProjectData)BindingContext; var m_Client = Services.XServices.Instance.GetService <ComosWebSDK.IComosWeb>(); m_Client.StartHeartBeat(); Device.StartTimer(TimeSpan.FromSeconds( m_Client.HeartBeat), m_Client.DoHeartBeat); Services.XDatabase db = Services.XServices.Instance.GetService <Services.XDatabase>(); CLanguage lang = null; lang = db.ReadSetting("Language", lang); if (lang != null) { projectdata.SelectedLanguage = lang; } // Language of comos web is buggy, can not use this. // We will use by default the project default user language. if (projectdata.SelectedLanguage == null) { try { CObject clanguage = await m_Client.GetDefaultLanguage(projectdata.SelectedDB.Key, projectdata.SelectedProject.UID, projectdata.SelectedLayer.UID); projectdata.OverideSelectedLanguage(new CLanguage() { Key = null, LCID = clanguage.Name, Value = clanguage.Description }); } catch (Exception ex) { await App.Current.MainPage.DisplayAlert("Error", "Error al obtener idiomas: " + ex.Message, Services.TranslateExtension.TranslateText("OK")); return; } } //projectdata.SelectedLanguage = projectdata.SaveLastSession(); // Init the image converter based on the database to use. object tmp = null; if (App.Current.Resources.TryGetValue("PictureToImage", out tmp)) { Converters.PictureRefToImage c = tmp as Converters.PictureRefToImage; if (c != null) { c.InitConverter(projectdata.SelectedLayer.Database); } } Services.XServices.Instance.AddService <ViewModels.ProjectData>(projectdata); await App.Navigation.PushAsync(new Pages.PageSolutions(web)); }