Structure en livres/pages

Message 1, par Elzen

§ Posté le 12/07/2014 à 22h 30m 44

Le mécanisme de base de la suite logicielle de Touhy, depuis que l'environnement comporte une suite logicielle, est une structure à base de « pages » (les composants graphiques véritablement utiles) et de « livres » (les objets gérant les fenêtres, barres d'outils, etc.). Dans l'ancienne version, ce mécanisme était coincé dans une petite bibli spécifique, mais étant donné qu'il est en fait le truc le plus important pour la plus grosse partie de Touhy, j'ai profité de la restructuration pour l'étaler un peu.


La bibliothèque commune de Touhy contient donc plusieurs répertoires chargés de contenir les modules python appropriées.

Les « pages » ne sont par définition pas communes : c'est à chaque application de définir quelques sortes particulières de pages elle va utiliser. Le répertoire « pages » de la bibliothèque commune contient en revanche plusieurs classes dont ces pages pourront hériter pour prendre en charge les mécanismes communs (gestion des barres d'outils, par exemple).


Les « livres » en revanche, sont pour la plupart totalement communs (encore qu'une application puisse définir sa propre sorte de « livre » si elle a des besoins spécifiques, comme le lecteur audio). J'en prévois, pour l'instant, essentiellement deux : « classic », une fenêtre, comme son nom l'indique, tout à fait classique, avec une barre de menus, une barre d'outils et des onglets, et « compact », une fenêtre plus réduite avec la barre d'outil réduite à de simples icônes, dans laquelle les menus seront intégrés.

Dans l'ancienne version de Touhy, il n'y avait qu'une seule page par fenêtre de type « compact » ; j'ai corrigé ça en y ajoutant une gestion des onglets également.

Message 2, par Elzen

§ Posté le 19/09/2014 à 22h 48m 19

Une des idées que j'avais eu pour cette nouvelle version de Touhy, et qui a motivé le fait que cette structure de livres/pages soit autant mise en avant, était que les outils de l'environnement également pouvaient être conçus sur ce modèle. Depuis je dernier commit, j'ai amélioré cela, et systabs comme syswall reposent désormais complètement sur le même mode de fonctionnement que les autres applis.

Ce qui veut dire notamment que, si par exemple vous vouliez ouvrir le gestionnaire de bureau dans une fenêtre ordinaire, plutôt qu'en fond d'écran, ce serait totalement possible, soit en réglant le fichier de conf', soit en passant par l'option adéquate.


Cette option, qui vient de faire son apparition, est l'option --book. Lancée sans argument, elle vous permet de vous assurer qu'un nouveau livre sera bien ouvert, même si ça ne devait pas être le cas (sysclip, au premier lancement, lorsque le panel est activé, par exemple).

Si vous précisez un argument, par exemple --book=classic, vous forcez l'application à utiliser un livre du type indiqué, même si la configuration est réglée sur autre chose.

(Suite au décès inopiné de mon précédent serveur, je profite de mettre en place une nouvelle machine pour essayer de refaire un outil de blog digne de ce nom. J'en profiterai d'ailleurs aussi pour repasser un peu sur certains articles, qui commencent à être particulièrement datés. En attendant, le système de commentaires de ce blog n'est plus fonctionnel, et a donc été désactivé. Désolé ! Vous pouvez néanmoins me contacter si besoin par mail (« mon login at ma machine, comme les gens normaux »), ou d'ailleurs par n'importe quel autre moyen. En espérant remettre les choses en place assez vite, tout plein de datalove sur vous !)