Inhoud

# Handtekeningmethode ScriptForge

ScriptForge-bibliotheken verzamelen macroscriptbronnen voor LibreOffice om te worden aangeroepen vanuit basismacro's of Python-scripts. De modules en klassen worden aangeroepen vanuit gebruikersscripts als "Services" die eigenschappen, methodes en gebeurtenissen blootleggen.

- Wanneer servicemethodes uitsluitend voor LibreOffice Basic worden voorgesteld, komt hun syntaxispresentatie overeen met die van Basic-subroutines, -functies of -eigenschappen.

- Telkens wanneer servicemethodes worden voorgesteld voor Python en Basic, of alleen voor Python, gebruiken hun syntaxis en argumenten een specifieke tekstindeling.

## Alleen servicemethode Basic

Typografische tekens zoals haakjes, weglatingsteken of accolades duiden optionele, repetitieve of verplichte argumenten aan:

- [opt1|opt2|opt3] Items tussen vierkante haakjes zijn optioneel, alternatieven worden aangegeven met een verticaal streepje,

- case[[sep]…] Drie puntjes geven aan dat er een mogelijke herhaling is, er kan ook een scheidingsteken zijn om aan te geven dat het optioneel is,

- {keuze1|keuze2} Items tussen accolades zijn verplicht, alternatieven worden aangegeven met een verticale balk.

### Voorbeeld:

           FSO.HashFile(FileName As String, _
               Algorithm As String = {MD5|SHA1|SHA224|SHA256|SHA384|SHA512}) As String
           SF_Array.ImportFromCSVFile(FileName As String, _
               [Delimiter = ","], [DateFormat As String]) As Variant
           SF_String.SplitNotQuoted(InputStr As String, _
              [Delimiter As String], [Occurrences As Long], [QuoteChar As String]) As Variant

## Servicemethodes Python of Basic

De volgende typografische regels mengen de UML-notatie, de API-documentatie-indeling en de gebruikersinterface van de UNO-objectinspecteur:

- Optionele parameters worden aangegeven met ofwel opt, '=' bij een standaardwaarde, of '[ ]' haakjes.

- Argumenten zijn in kleine letters om overeen te komen met Python PEP 8, terwijl Basic niet hoofdlettergevoelig is.

- Argumenten voor verzamelingen of API-reeksen worden aangeduid met UML-multipliciteit. Dat geldt ook voor retourwaardes.

- Basic-gegevenstypes en Python-annotaties worden syntactisch getransponeerd als:

LibreOffice Basic | Syntaxis | Python
--- | --- | ---
Booleaans | bool | bool
Date | datetime | datetime
Double | float | float
Integer | int | int
Long | int | int
Object | obj |
Single | float | float
String | str | str
Variant | any |
UNO-object | uno |
Gebruikergedefinieerd Type (UDT) | obj |
ScriptForge -service | svc |

### Voorbeeld:

svc.Forms( opt form: any ): svc[0..*]

svc.MsgBox( prompt: str, buttons = svc.MB_OK , opt title: str ): opt str

svc.InputBox( prompt: str, default = "", [ title: str ], [ xpostwips: int, ypostwips: int ] ): str