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)

Sommaire