Pages d'options
Le module de gestion des options d'outils est prêt.
Au design, la page présente la liste et les pages numérotées pour un accès rapide :
OptionsPages.png
La préparation des pages n'est plus effectuée au démarrage mais lors du premier clic sur le bouton des
Options. Ce n'est même pas pour optimiser l'ouverture de l'outil mais pour éviter un crash insolvable, certaines propriétés étant inaccessibles au démarrage. Cette préparation consiste donc en :
- Positionnement des onglets en haut,
- Passage en style "Flat" pour dissimuler le relief,
- Dissimulation de tous les onglets.
(Il est impossible de positionner les onglets en bas s'ils sont en mode "Flat", et ils doivent être en bas sinon il faut repositionner tous les composants des pages...) On perd une vingtaine de pixels en bas de chaque page mais on fera avec...
Cette préparation des onglets étant codée dans le service de gestion des pages, lequel est externe aux outils, il n'y aura plus à s'en soucier pour les prochains outils.
La gestion des pages ne peut pas être plus simple :
Code : Tout sélectionner
Options_Pages.ActivePageIndex := Options_List.Selected.Index;
C'est la seule ligne de code à ajouter à la gestion des options.
Pour simplifier encore, il a été décidé que :
- Les composants des pages ne serait pas "liés" à la bordure de droite, et leur largeur n'augmentera donc pas avec la fenêtre.
- En conséquence, les pages d'option ne contiendrait pas de
GroupBox, les sous-catégorisations de faisant uniquement par des titres soulignés :
FixedSize.png
Au final, l'utilisation d'onglets pour gérer des panneaux multiples ne se fera pas pour les pages "normales" des outils, car la suppression des onglets modifie la surface des panneaux. Acceptable avec les options et les règles mises en place mais ingérable avec les outils dont les composants sont positionnés au pixel près, avec des surcouches de panneaux pour gérer les spliters etc...
Il ne reste plus qu'à coder le contenu de ces pages d'options.