Le design des options a commencé, d'abord en recensant les types d'options possibles, ensuite en prototypant un modèle d'écran.
Le problème du design des fenêtres se pose à nouveau.
Sous XT3, les onglets étaient gérés par des onglets , et une fenêtre était donc compacte lors de son design : Sous XT4, les onglets ont été remplacés par des panneaux qui sont repositionnés au runtime, ce qui permet un alignement libre des boutons. L'accès aux différents composants est également plus rapide puisque tout est à plat : Le problème se pose avec l'Agenda qui ne tient plus sur un écran 24" : Cela oblige à utiliser les barres de défilement (Delphi 5 ne scrolle pas les fenêtres à la souris) mais surtout cela détraque l'alignement des composants qu'il faut donc repositionner au pixel près.
Ce problème de multiples panneaux étant le même que pour les assistants, la méthode des onglets "cachés" au runtime a donc été essayée.
Au design c'est parfait, les futurs panneaux sont accessibles via des onglets : Il faut cacher ces onglets à l'exécution via du code :
Code : Tout sélectionner
for Options_Index := 0 to (Options_Pages.Pagecount - 1)
do Options_Pages.Pages[Options_Index].TabVisible := False;
Le bug a été contourné (il y a 10 ans) via l'ajout d'une ligne de code Otions_Pages.HandleNeeded comme décrit ici.
Au final, les onglets sont cachés, il faut forcer encore l'affichage d'une des pages (autre bug ?) mais le résultat est là : Prochaines étapes :
- Reprise des travaux sur les options : analyse puis implémentation.
- Une fois les options fonctionnelles, création de services pour la préparation et la manipulation de ces onglets.
- Tentative de passer en onglets cachés les panneaux de la fenêtre de l'Agenda puis des autres fenêtres.