Mar 24/07/2012 - Actualités

Xavier
Administrateur du site
Messages : 817
Enregistré le : mer. 22 juin 2011 18:25

Mar 24/07/2012 - Actualités

Message non lu par Xavier »

Calendrier


XT3 affichait 13 semaines quelque soit la taille de la fenêtre. Chaque action sur le calendrier déclenchait un rafraichissement de la totalité des cellules. Normal pour les action de "scroll", mais par contre un simple clic qui change la date sélectionnée rafraichissait lui aussi la totalité des cellules ! (La possibilité de sélectionner une cellule est une addition tardive, et le code n'a pas été adapté.)

XT4 affichera de 10 à 64 semaines selon la taille de la fenêtre et autorisera la multi-sélection donc le système a dû être repensé car il n'était plus question de rafraichir des dizaines de cellules au moindre clic (le rafraichissement implique une lecture des données). Un ensemble de services permet maintenant de créer, cacher ou afficher les cellules de 1 à plusieurs nouvelles semaines selon les principes suivants :
  • Au départ, seules les cellules nécessaires sont créées.
  • Au premier élargissement, de nouvelles cellules sont créées.
  • Au rétrécissement, les cellules inutiles sont cachées.
  • Aux autres élargissements, les cellules cachées sont affichées et si besoin d'autres ont créées.
  • Les mois sont toujours actualisés tous ensemble à cause des chevauchements de semaines.
L'externalisation de la gestion des mois a d'ailleur pris des heures car une première version qui devait être "super optimisée" en ne bouclant que sur les semaines était impossible à faire fonctionner dans tous les cas. La routine actuelle boucle donc sur la totalité des jours (comme dans XT3) afin de reconstruire les panneaux des mois comme il faut.

Le résultat est très satisfaisant, l'élargissement et le rétrécissement de la fenêtre fonctionnent très bien et les cellules s'adaptent parfaitement. :)


Le nouveau chantier concerne la multi-sélection de cellules, qui fonctionne via une liste de cellules. Le fonctionnement prévu est :
  • Clic = nouvelle sélection.
  • [Ctrl + Clic] = ajout à la sélection.
  • [Shift + Clic] = ajout des jours depuis la dernière sélection.
  • Clic sur une semaine = ajout des 7 jours de la semaine.
  • Le [Ctrl + Clic] et [Shift + Clic] sur une semaine seront à priori implémentés (si pas trop de problèmes).
Il n'est pas prévu de gérer le [Ctrl + Shift + Clic] qui habituellement rajoute une multi-sélection.


Le défilement du calendrier se fera avec les boutons actuels (DMo avait suggéré une vraie ScrollBar mais on perdrait les différents niveaux de défilement). Les modifications par rapport à XT3 seront:
  • Avancer / reculer d'un mois le fera vraiment (XT3 avance / recule de 4 semaines).
  • Avancer / reculer d'un an le fera vraiment (XT3 avance / recule de 52 semaines).
  • Le défilement ne modifiera plus la sélection, afin de ne pas perdre les multi-sélections (laborieusement :D ) commencées. Par contre une date rendue hors de portée par un défilement sera dé-sélectionnée. Il sera donc possible de sélectionner toutes les cellules visibles en fonction de la largeur de la fenêtre.
Denis
Messages : 180
Enregistré le : jeu. 23 juin 2011 09:21

Re: Mar 24/07/2012 - Actualités

Message non lu par Denis »

[Ctrl + Clic] => sélectionne, soit, mais doit aussi pouvoir dé-sélectionner: par exemple, je suis absent un mois sauf tel jour, je sélectionne premier jour, Shift + clic sur dernier jour et Ctrl+ Clic si je veux enlever un mois au milieu. Idem avec semaines.
Merci à Excel 2003 de faire pareil !!

Défilement: dommage de perdre sa sélection: par exemple, je sus en écran pas trop large, je veux regarder un truc dans un an, amsi tout en ayant sous les yeux les RDV et tache du jour....?
Xavier
Administrateur du site
Messages : 817
Enregistré le : mer. 22 juin 2011 18:25

Re: Mar 24/07/2012 - Actualités

Message non lu par Xavier »

Yes, un [Ctrl + clic] sur une cellule sélectionnée la désélectionnera. Pour le moment c'est juste capable de ne pas la dupliquer dans la liste. :)

Yes, il faut que le scrolling du Calendrier n'affecte pas la sélection de la date et donc des évènements affichés.


OK, de toutes façons, la liste de cellules est un casse-tête à gérer en cas de défilement, donc je vais basculer vers une liste de dates. Donc on va dire que le scrolling ne fait que scroller et n'impacte pas les sélections. Et du coup, on pourra sélectionner une année entière si on veut.
Répondre