Guide SCENARIbuilder

Pages de la publication

HTML : menu et hiérarchie de pages

Introduction

Nous partons d'un document composé uniquement d'une seule page. Tout le contenu est à l'intérieur de cette page. Nous allons chercher à faire un document en plusieurs pages HTML : une page par planète, avec un menu pour naviguer entre les planètes.

Création de la page au niveau des planètes

Pour tenir notre cahier des charges, nous devons modifier l'emplacement de la création de page : passer de une page pour la composition universe.model à une page par part de cette composition :

Solution alternative : nous aurions pu juste faire un <for codes="*"><callSubModel> dans universe.transf pour décharger ce transformer de la création des pages, puis la reporter dans astrobj.transf, qui dans ce cas doit être en mode navigation et non content.

Création du menu

Nous avons défini les pages, mais il n'y a aucun moyen d'accès pour les choisir. Nous allons donc déclarer un menu (ou outline) dans huWeb.uiTemplate. On crée une div "menu" qui sera positionné sur la page lors de l'étape de stylage. Cette div contient unwidget de type outlineUiWidget.

Nous allons modifier 2 paramètres de ce widget :

  • le scope : Les éléments visibles ou non dans le menu. Un scope "all" dévoilera tous les éléments du menu (Séléctionnez le et consultez les différentes possibilités dans la partie droite de la fenêtre : liste de toutes les pages parentes, liste des fils...).
  • Les classes : Permette de choisir des styles CSS à appliquer dans les éléments du menu, en fonction de conditions précises (position dans l'arbre par rapport à la page courante, profondeur, type d'élément...).
La première page est affichée par défaut

Dans une publication HTML, la première page est toujours affichée, si vous voulez insérer une page d'accueil fixe, au lieu d'afficher la première planète, vous devez déclarer une nouvelle page dans universe.transf avant le for.

Résultat

Notre contenu n'ayant pas une structure extra-ordinaire, vous devriez simplement voir apparaître une liste des pages en début de votre publication HTML, et le contenu de la première sera affichée par défaut.

Les folders

Pour créer une vraie hiérarchie de page avec des sous-niveaux, on déclare des Folders et on y crée les pages à l'intérieur. L'option folderPreview est la page qui s'affiche lorsque l'utilisateur clique sur le dossier dans le menu, sans folderPreview c'est la première page de contenu du folder qui est utilisée.

ODT : Page de garde, table des matières, numérotation

Introduction

Nous allons améliorer notre publication ODT avec les fonctionnalités suivantes :

  • Page de garde
  • Table des matières
  • Saut de page après chaque planète décrite
Création de la page de garde

Pour déclarer une page de garde, on crée un nouveau pagemaster dans huOd.template. On y met un WflowTextArea : une zone dont la position est définie librement par le modélisateur, dans l' odStyle. Si vous voulez afficher le titre "L'univers" au centre de votre page de garde, re-générez l'odstyle, ouvrez le et déplacez la nouvelle zone rectangulaire à sa bonne position sur la page. Cette opération se fait à la souris, sans passer par la fenêtre de paramétrage des styles.

Table des matières

OpenOffice permet de générer automatiquement une table des matières à partir des différents textes de titre, dans le cas de documents Scenari, à partir des WHeading. On déclare la table des matières dans l'odtemplate :

On peux paramétrer le style et le comportement de cette table des matières dans l'odstyle, on obtient cet écran en simulant l'insertion d'une nouvelle table des matières àl'intérieur de celle déjà existante. Dans notre cas, nous allons uniquement mettre le nom de l'astre et non les titres des sous-parties, on règle donc l'option Evaluate up to level à 1.

Numérotation des pages

Toujours dans le template, on ajoute un pied de page au format "numéro de page" / "nombre total de pages du document" :

La gestion des headers / footers permet de couvrir toutes les options OpenOffice : distinguer les pages paires / impaires, utiliser 3 zones gauche / droite / centre. En contenu, sont disponibles les "variables" relatives au document ou a la page : numéro, total, titre, nom de fichier...

(c) scenari-platform.org 2007