/// <summary> /// Initialise les calendriers à afficher /// </summary> public async void initCalendar() { try { ObservableCollection<object> list = new ObservableCollection<object>(); _calendriersSelected = list.ToObservableVector<object>(); GoogleCalendar.CalendarControler controler = new GoogleCalendar.CalendarControler(); // on récupère tous les calendriers calendars = await controler.GetAllCalendars(); //on crée les userControls Calendriers avec leurs datacontextes foreach (CalendarListEntry calendar in calendars) { this.CalendriersIMG.Add(new CalendarGoogle(new CalendarViewModel(calendar))); } //pour chaque calendrier, on définit ses paramètres et une commande au click foreach (CalendarBase cal in _calendriersIMG) { cal.PointerPressed += cal_PointerPressed; cal.IsHitTestVisible = true; cal.Opacity = 0.5; cal.Margin = new Thickness(0, 0, 15, 0); monpan.Children.Add(cal); } //on met à jour le Layout monpan.UpdateLayout(); } catch (HttpRequestException) { //throw new HttpRequestException("Cette fonctionnalité nécessite une connexion à un compte google !"); } }
/// <summary> /// Initialise les calendriers à afficher /// </summary> public async void initCalendar() { try { int nb =monpan.Children.Count(); if (nb > 0) { for (int i = nb-1; i >=0; i--) monpan.Children.RemoveAt(i); } nb = _calendriersIMG.Count(); if (nb > 0) { for (int i = nb - 1; i >= 0; i--) _calendriersIMG.RemoveAt(i); } ObservableCollection<object> list = new ObservableCollection<object>(); GoogleCalendar.CalendarControler controler = new GoogleCalendar.CalendarControler(); // on récupère tous les calendriers _calendars = await controler.GetAllCalendars(); //on crée les userControls Calendriers avec leurs datacontextes foreach (CalendarListEntry calendar in _calendars) { this.CalendriersIMG.Add(new CalendarGoogle(new CalendarViewModel(calendar))); } CalendarAdd addCal = new CalendarAdd(); this._calendriersIMG.Add(addCal); //pour chaque calendrier, on définit ses paramètres et une commande au click foreach (CalendarBase cal in _calendriersIMG) { cal.PointerPressed += Cal_PointerPressed; cal.IsHitTestVisible = true; cal.Opacity = 0.5; cal.Margin = new Thickness(0, 0, 15, 0); monpan.Children.Add(cal); } _calendriersSelected = _calendriersIMG.Last(); SelectedWindow = new CalendarWelcome(); //on met à jour le Layout //monpan.UpdateLayout(); } catch (HttpRequestException) { //throw new HttpRequestException("Cette fonctionnalité nécessite une connexion à un compte google !"); } }
/// <summary> /// Methode à exécuter lors du clic sur la commande Accueil /// </summary> public async void ExecuteDelete() { try { // Create the message dialog and set its content and title var messageDialog = new MessageDialog(IConstantes.MSG_CONFIRM_DELETE_CAL); // Add commands and set their command ids messageDialog.Commands.Add(new UICommand(IConstantes.BUTTON_CONFIRM, null, 0)); messageDialog.Commands.Add(new UICommand(IConstantes.BUTTON_CANCEL, null, 1)); // Set the command that will be invoked by default messageDialog.DefaultCommandIndex = 0; // Show the message dialog and get the event that was invoked via the async operator var commandChosen = await messageDialog.ShowAsync(); if (commandChosen.Label.Equals(IConstantes.BUTTON_CONFIRM)) { CalendarControler controler = new CalendarControler(); controler.DeleteCalendar(cal.Calendar); //on met à jour la liste des calendriers parent.DeleteCalendar(cal.Calendar); parent.SelectedWindow = new CalendarWelcome(); } } catch (Exception e) { var messageDialog = new MessageDialog(IConstantes.EXCEPTION_MSG_DELETE); messageDialog.ShowAsync(); } }
/// <summary> /// Methode à exécuter lors du clic sur la commande Accueil /// </summary> public async void ExecuteModifier() { try{ // Create the message dialog and set its content and title var messageDialog = new MessageDialog("Êtes-vous certain de vouloir modifier le calendrier selectionné ?", "Demande de confirmation"); // Add commands and set their command ids messageDialog.Commands.Add(new UICommand("Annuler", null, 0)); messageDialog.Commands.Add(new UICommand("Confirmer", null, 1)); // Set the command that will be invoked by default messageDialog.DefaultCommandIndex = 0; // Show the message dialog and get the event that was invoked via the async operator var commandChosen = await messageDialog.ShowAsync(); if (commandChosen.Label.Equals("Confirmer")) { CalendarControler controler = new CalendarControler(); await controler.UpdateCalendar(cal.Calendar); //on met à jour la liste des calendriers parent.MajCalendar(cal.Calendar); } } catch (HttpRequestException e) { var messageDialog = new MessageDialog(e.Message+"Impossible de modifier le calendrier. Vous n'êtes plus connecté à votre compte.", "Suppression impossible"); messageDialog.ShowAsync(); } }
public async Task GetCalendars() { GoogleCalendar.CalendarControler controler = new GoogleCalendar.CalendarControler(); List<CalendarListEntry> calendars = await controler.GetAllCalendars(); CalendarViewModel defaultCal = new CalendarViewModel(calendars.Last()); this._calendars.Add(defaultCal); icalendar = new WeekBorderCalendar(_calendars, ref _dateMain); contenuPage.Content = icalendar; }