Write et WriteLn
prennent en paramètre une chaîne de caractères qui représente le code help&web à insérer dans la rubrique.
procedure Write(code_a_produire:string);
procedure WriteLn(code_a_produire:string);
begin
Write('Bonjour le monde' );
WriteLn('On passe à la ligne après cela' );
end;
writeln force un retour à la ligne après l'insertion, c'est l'équivalent de write(#13+#10)
Tous vos scripts comporteront donc obligatoirement au moins une de ces fonctions, sinon rien n'apparaitra à l'écran.
pour insérer un code ascii particulié dans une chaine, faites le précédé du signe #
#169 = ©
Si dans une chaîne vous avez besoin d'un guillemet simple vous devrez utiliser le code #39
var s:string;
begin
s := 'l'+#39+'en-tête' ; // s=l'en-tête
end;
GetProjet
récupère le nom du projet
GetParam
récupère les éventuels paramètres passés à votre script.
function GetParam(index:integer;valeur_defaut:string):string;
function GetParam(Nom,valeur_defaut:string):string;
var p0,p1:string;
begin
p0 := GetParam(0,'vide0'); // récupère le premier paramètre
p1 := GetParam('LEVEL','vide1');
// s'il n'y a pas de paramètres p0='vide0' et p1='vide1'
end;
end.
Les composants disposent d'une propriétés de type string qui peut être multi-lignes, pour pouvoir manipuler simplement chaque ligne utilisez un objet TStringList comme suit :
liste := TStringList.create;
Liste.Text := GetParam(nom_parametre,'');
for i:=0 to liste.count-1 do
begin
paramx := Liste.strings[i];
...
end;
liste.free;
GetParamCount
retourne le nombre de paramètres utilisés
function GetParamCount:integer;
var np:integer;
begin
np := GetParamCount; // nombre de paramètre passé
end;
Script
récupère le code généré par un autre script
function Script(nom_du_script,param_script:string):string;
var s:string;
begin
s := script('degratxt.spr','bonjour,clblue,clwhite');
// nous récupéront dans s le code produit par le script degratxt
// script prend en second paramètre les paramètres pour le script à lancer
end;
GetInstanceOf
retourne le nombre d'exécution actuel de "Script"
function GetInstanceOf(Script:string):integer;
Condition
vous permet de réagir en fonction du type de compilation en cours, de la rubrique dans laquelle le script est exécuté, vous retrouvez-là les directives conditionnelles d'Help&Web
function Condition(ma_condition:string):boolean;
if condition('_HLP_') then
begin
// si on produit un hlp, cette section de code est exécutée
end else if condition('_HTML_') then
begin
// sinon si l'on compile un HTML, c'est cette partie qui est jouée
end;
if Condition('_RUB_INTRODUCTION') then
begin
// si le script est exécuté dans la rubrique dont le titre est introduction
// alors on exécute cette section
end;
GetParent
retourne le nom de la rubrique parente
GetTitre
retourne le titre de la rubrique où est exécuté le script.
GetNom
retourne le nom de la rubrique
GetNum
retourne le numéro de la rubrique
function GetTitre:string;
function GetNom:string;
function GetNum:integer;
GetParentOf
retourne le nom de la rubrique parente dont le numéro est passé en paramètre
GetTitreOf
retourne le titre de la rubrique dont le numéro est passé en paramètre.
GetNomOf
GetNomOf
retourne le nom de la rubrique dont le numéro est passé en paramètre
function GetTitreOf(numero:integer):string;
function GetNomOf(numero:integer):string;
GetWinOf
retourne le nom de la fenêtre associée à la rubrique dont le numéro est passée en paramètre.
function GetWinOf(numero:integer):string;
GetDatesOf
retourne les dates de création et de dernière modification d'une rubrique dont le numéro est passé en paramètre.
function GetDatesOf(numero:integer;var creation,modification:string):boolean;
var creation,modification:string;
begin
// récupère les dates de création et de modification
// de la rubrique active
GetDatesOf(GetNum,creation,modification);
end;
GetLevelOf
retourne le niveau de la rubrique dont le numéro est passé en paramètre, les rubriques de plus haut niveau (chapitre) on un niveau égal à 2, leur sous-rubrique immédiate 3 etc.
function GetLevelOf(numero:integer):integer;
GetTextOf
retourne le texte d'une rubrique
function GetTextOf(Projet,TitreRubrique:string):string;
function GetTextOf(Projet:string;numeroRubrique:integer):string;
Si vous passez une chaîne vide pour le nom du projet, c'est le projet ouvert qui est utilisé.
GetKeysOf
Recherche et retourne le nombre de mots clefs d'une rubrique
GetKeysNoteOf
Recherche et retourne le nombre de mots clefs d'une rubrique, uniquement ceux du type Note indiqué
GetKey
Retourne le mot clef dont l'index est passé en paramètre
GetKeySignet
Retourne le signet rattaché au mot clef dont l'index est passé en paramètre
Vous devez avoir effectué un appel à GetKeysOf ou GetKeysNoteOf avant d'utiliser GetKey et GetKeySignet.
function GetKeysOf(numeroRubrique:integer):integer;
function GetKeysNoteOf(numeroRubrique:integer;Note:string):integer;
function GetKey(index:integer):string;
function GetKeySignet(index:integer):string;
IsPopup
Retourne True si la rubrique dont le numéro est passé en paramètre est un Popup, sinon retourne False
function IsPopup(numeroRubrique:integer):boolean;
IsCompil
Retourne True si la rubrique dont le numéro est passé en paramètre est compilée dans le projet, sinon retourne False
Voir les propriétés d'une rubrique
GetBibliObj
retourne le code d'un objet contenu dans une bibliothèque.
function GetBibliObj(Bibliotheque,Objet,defaut:string):string;
begin
writeln(GetBibliObj('Puces','Rouge','' )); // rien ne sera écrit si Rouge n'existe pas
writeln(GetBibliObj('Puces','Vert','X' ));// si Vert n'existe pas 'X' sera retourné
end;
GetSignetOf
retourne le signet de "Rubrique" dont le numéro d'ordre est "Index"
function GetSignetOf( Rubrique:string; Index:integer ):string;
IsScroll
indique si le script est situé dans la zone défilante
function IsScroll:boolean;
GetElement
retourne l'élément d'ordre "Index", ces éléments sont modifiables depuis le dialogue "Options|Projet"
function GetElement(Index:integer):string;
Liste des éléments récupérables
eScrollColor eFixeColor eTitleContent eFntTitleContent eFntDefaultContent ePChapter ePTopics ePFinalTopic eFntChapter eFntDefaultChapter eFntTopic eFntDefaultTopic eQuitCaption |
Couleur de la zone
scrollable Couleur de la zone fixe Titre de la table des matières Fonte du titre de la table des matières Fonte par défaut de la table des matières Puce pour les chapitres Puce pour les pages multiples Puce pour les pages seules Fonte du titre des chapitres Fonte par défaut des chapitres Fonte du titre des pages Fonte par défaut des pages Intitulé du bouton quitter |
Cet exemple est le script AutoTitre, il ajuste dynamiquement les fontes du titre et par défaut de vos rubriques.
GetTopicCount
retourne le nombre de rubriques du projet
function GetTopicCount:integer;
GetChildCountOf
retourne le nombre de sous-rubriques de la rubrique dont le numéro est passé en paramètre
GetChildCount
retourne le nombre de sous-rubriques de la rubrique où est joué le script
function GetChildCount:integer;
GetPartageCount
retourne le nombre de contenu partagés définis
GetPartage
retourne le nom d'un contenu partagé dont on passe l'index
GetContenuPartage
retourne le code source d'un contenu partagé dont on passe le nom
GetDefCount
retourne le nombre de définitions
GetDefTerme
retourne le terme dont on passe l'index
GetDef
retourne la définition dont on passe l'index
TitreToHtmlFile
retourne le nom du fichier HTML qui sera associé à la rubrique dont on passe le titre
SignetToHtml
retourne le signet au format qui sera le sien dans une page html (avec le # en début)