ScriptForge-metodesignaturer

Innhold
Innholdsliste 🔎︎

# ScriptForge Metodesignaturer

ScriptForge-biblioteker samler makroskriptressurser for LibreOffice som skal startes fra grunnleggende makroer eller Python-skript. Modulene og klassene påkalles fra brukerskript som "Tjenester" som viser egenskaper, metoder og hendelser.

- Når tjenestemetoder er foreslått utelukkende for LibreOffice Basic, samsvarer syntakspresentasjonen deres med grunnleggende subrutiner, funksjoner eller egenskaper.

- Når tjenestemetoder er foreslått for Python og Basic, eller bare for Python, bruker syntaksen og argumentene deres et spesifikt tekstoppsett.

## Kun Basic servicemetoder

Typografiske tegn som parentes, ellipse eller krøllete parenteser angir valgfrie, repeterende eller obligatoriske argumenter:

- [opt1|opt2|opt3] Elementer innenfor parentes er valgfrie, alternativer er indikert med en vertikal strek,

- case[[sep]...] En ellipse indikerer en mulig gjentakelse, et valgfritt skilletegn kan spesifiseres,

- {choice1|choice2} Elementer innenfor krøllete klammeparenteser er obligatoriske, alternativer er angitt med en vertikal strek.

### Eksempel:

           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

## Python eller Basic tjenestemetoder

Følgende typografiske regler blander UML-notasjonen, API-dokumentasjonsoppsettet og UNO-objektinspektørens brukergrensesnitt:

- Valgfrie parametere er angitt med enten opt, '=' som følger med en standardverdi, eller '[ ]'-parenteser.

- argumenter er små bokstaver for å overholde Python PEP 8 mens Basic er kasus-agnostisk.

- Samlingsargumenter eller API-sekvenser er angitt ved bruk av UML-mangfold. Det gjelder også returverdier.

- Grunnleggende datatyper og Python-merknader transponeres syntaktisk som:

LibreOffice Basic | Syntaks | Python
--- | --- | ---
Boolsk | 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 Objekt | uno |
Brukerdefinert type (UDT) | obj |
ScriptForge tjeneste | svc |

### Eksempel:

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