Vsebina
Kazalo 🔎︎

# Knjižnica ScriptForge

Za dostop do tega ukaza ...

Odprite Orodja – Makri – LibreOffice Basic – Uredi in nato izberite vsebnik Makri LibreOffice.

Knjižnica ScriptForge je tvorijo razširljivo zbirko virov za skripte makrov za LibreOffice, ki jih prikličete iz makrov BASIC ali skriptov Python.

• Basic macros require to load ScriptForge library using the following statement:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Python scripts require an import from scriptforge module:
from scriptforge import CreateScriptService

Če želite izvedeti več o ustvarjanju in izvajanju skriptov Python s knjižnico ScriptForge, glejte stran pomoči Izdelava skriptov Python s knjižnico ScriptForge.

## Priklic storitev ScriptForge

Opisani moduli in razredi se iz uporabniških skriptov kličejo kot storitve (Service). Za ta namen je izdelan generični konstruktor teh storitev za vsak jezik:

        GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
        Set oSvc = CreateScriptService("servicename"[, arg0, arg1, ...])
        ' ...
        oSvc.Dispose()

        from scriptforge import CreateScriptService
        svc = CreateScriptService('servicename'[, arg0, arg1, ...])
        # ...
        svc.Dispose()

Metoda Dispose je na voljo v vseh storitvah in jo je potrebno klicati za sprostitev virov po uporabi storitev.

## Storitve, ki jih zagotavlja knjižnica ScriptForge

Kategorija | Storitve |
LibreOffice Basic | Array Dictionary Exception | FileSystem String TextStream
Vsebina dokumenta | Base Calc Chart | Database Document
Uporabniški vmesnik | Dialog DialogControl Form | FormControl PopupMenu UI
Pripomočki | Basic L10N Platform | Services Session Timer

## Storitev ScriptForge.Array

Ponuja zbirko metod za ravnanje z in preoblikovanje enodimenzionalnih polj (vektorjev) in dvodimenzionalnih polj (matrik). To vključuje operacije nad množicami, razvrščanje ter uvažanje in izvažanje besedilnih datotek.

Polj z več kot dvema dimenzijama ni možno uporabljati z metodami te storitve, edina izjema je metoda CountDims, ki sprejema polja poljubnih dimenzij.

## Storitev SFDocuments.Base

Storitev Base ponuja številne metode in lastnosti, ki lajšajo upravljanje in ravnanje z dokumenti LibreOffice Base.

Ta storitev je tesno povezana s storitvijo Document, ki ponuja splošne metode za ravnanje z dokumenti LibreOffice, vključno z dokumenti programa Base. Zatorej storitev Base razširja storitev Document in ponuja dodatne metode, ki so specifične za dokumente programa Base, saj uporabnikom omogoča:

- pridobivanje dostopa do zbirke podatkov, vsebovane v dokumentu programa Base;

- odpiranje dokumentov obrazcev, shranjenih v dokumentu programa Base;

- preverjanje, če je dokument obrazca iz dokumenta programa Base trenutno naložen.

## Storitev ScriptForge.Basic

Storitev ScriptForge.Basic ponuja zbirko metod LibreOffice Basic, ki jih je moč izvajati v kontekstu Pythona. Metode storitve Basic imajo isto skladnjo in vedenje kot vgrajene funkcije Basica.

## Storitev SFDocuments.Calc

Knjižnica SFDocuments v skupni rabi vsebuje metode in lastnosti, ki pomagajo pri upravljanju in ravnanju z dokumenti LibreOffice.

Storitev SFDocuments.Calc je podrazred storitve SFDocuments.Document. Do vseh metod in lastnosti, definiranih za storitev Document, lahko dostopate tudi z uporabo instance storitve Calc.

Storitev Calc se osredotoča na:

- ravnanje z delovnimi listi v dokumentu Calc (kopiraj, vstavi, premakni itn.);

- izmenjavo podatkov med podatkovnimi strukturami Basica in obsegi programa Calc;

- kopiranje in uvažanje ogromnih količin podatkov.

## Storitev ScriptForge.Chart

Storitev Chart zagotavlja nabor lastnosti in metod za ravnanje z grafikoni v dokumentih Calc. Ta storitev omogoča:

- Dostop do predmetov grafikonov v dokumentih programa Calc in upravljanje z njihovimi lastnostmi.

- Ustvarjanje in vstavljanje novih grafikonov v dokumentih programa Calc.

- Izvoz grafikonov kot slikovnih datotek.

## Storitev SFDatabases.Database

Storitev Database zagotavlja dostop do zbirk podatkov, ki so vdelane ali opisane v dokumentih Base. Ta storitev zagotavlja metode za:

- pridobivanje dostopa do podatkov v tabelah zbirke podatkov;

- zagon povpraševanj SELECT in izvajanje sestavljenih funkcij;

- izvajanje ukazov dejanj SQL , kot so INSERT, UPDATE, DELETE itn.

## Storitev SFDialogs.Dialog

Storitev Dialog prispeva upravljanju pogovornih oken, ustvarjenih z Basicovim Urejevalnikom pogovornih oken. Vsaka instanca trenutnega razreda predstavlja posamezno pogovorno okno, prikazano uporabniku.

## Storitev SFDialogs.DialogControl

Storitev DialogControl upravlja s kontrolniki, ki pripadajo pogovornemu oknu, določenemu z Urejevalnikom pogovornih oken Basica. Vsaka instanca trenutne storitve predstavlja posamezen kontrolnik v pogovornem oknu.

Pozornost je nastavljena na pridobivanje in določanje vrednosti, prikazanih na kontrolnikih pogovornega okna. Oblikovanje je dostopno prek lastnosti XControlModel in XControlView.

Upoštevajte, da so enkratne vsebine lastnosti DialogControl.Value razlikujejo glede na vrsto kontrolnika.

Posebna pozornost velja za drevesne kontrolnike. Drevo je enostavno napolniti: vejo po vejo ali pa z množico vej naenkrat. Napolnjevanje drevesnega kontrolnika se lahko izvede statično ali dinamično.

## Storitev ScriptForge.Dictionary

Slovar je zbirka parov ključ-element

- Ključ je niz, pri katerem razlike med velikimi in malimi črkami ne štejejo

- Elementi so lahko poljubne vrste

## Storitev SFDocuments.Document

Knjižnica SFDocuments vsebuje metode in lastnosti, ki lajšajo upravljanje in ravnanje z dokumenti LibreOffice.

Metode, ki veljajo za vse vrste dokumentov (besedilne dokumente, preglednice, predstavitve itn.) so vključene v storitev SFDocuments.Document. Nekaj primerov:

- Odpiranje, zapiranje in shranjevanje dokumentov

- Dostop do standardnih lastnosti ali lastnosti po meri dokumentov

## Storitev ScriptForge.Exception

Storitev Exception je nabor metod za razhroščevanje kode skriptov Basic in Python ter za ravnanje ob napakah v skriptih Basic.

V primeru napake v skriptih Basic ob izvajanju lastnosti in metode storitve Exception pomagajo identificirati kontekst napake in omogočajo ravnanje z njo.

## Storitev ScriptForge.FileSystem service

Storitev FileSystem vključuje metode za ravnanje z datotekami in mapami. Sledi nekaj primerov funkcionalnosti, ki jih zagotavlja ta storitev:

- preverjanje, ali datoteka oz. mapa obstaja.

- ustvarjanje in brisanje map in datotek;

- odpiranje pogovornih oken za odpiranje/shranjevanje datotek;

- dostop do seznama datotek v mapi itn.

## Storitev SFDocuments.Form

Storitev Form ponuja metode in lastnosti za upravljanje z obrazci v dokumentih LibreOffice. Storitev podpira obrazce v dokumentih programov Base, Calc in Writer ter omogoča, da:

- odprete in aktivirate obrazce;

- krmarite po zapisih, ki jih prikazuje obrazec;

- pridobite dostop do kontrolnikov v obrazcu;

- pridobite dostop do podobrazcev nadrejenega obrazca.

## Storitev SFDocuments.FormControl

Storitev FormControl omogoča dostop do kontrolnikov, ki pripadajo obrazcu, podobrazcu ali kontrolniku tabele FormDocument. Vsaka instanca storitve FormControl se nanaša na posamezen kontrolnik v obrazcu. Ta storitev omogoča uporabnikom:

- pridobiti in določiti lastnosti kontrolnika, ki ga predstavlja instanca FormControl;

- dostopati do trenutne vrednosti, ki jo prikazuje kontrolnik;

- določiti pozornost na želeni kontrolnik.

## Storitev ScriptForge.L10N

Ta storitev zagotavlja številne metode, ki se nanašajo na prevod nizov z minimalnim vplivom na izvorno kodo programa. Metode, ki jih zagotavlja storitev L10N, lahko predvsem uporabite za:

- ustvarjanje datotek POT, ki jih je mogoče uporabiti kot predloge za prevod vseh nizov v programu;

- pridobivanje prevedenih nizov v času izvajanja za jezik, definiran z lastnostjo Locale.

## Storitev ScriptForge.Platform

Storitev Platform ponuja zbirko lastnosti o trenutnem izvajalnem okolju in kontekstu, kot so:

- strojna platforma (arhitektura, število CPE, vrsta računalnika itn.),

- podatki o operacijskem sistemu (vrsta OS, izdaja, različica itn.),

- različica LibreOffice,

- ime trenutnega uporabnika

## Storitev ScriptForge.PopupMenu

Storitev PopupMenu lahko uporabite za ustvarjanje pojavnih menijev, ki jih lahko povežete z dogodki ali izvajate s skripti. Ta storitev ponuja naslednje zmogljivosti:

- Ustvarjanje pojavnih menijev z vnosi, potrditvenimi polji in izbirnimi polji po meri.

- Okrasitev menijskih elementov z ikonami in namigi.

## Storitev ScriptForge.Services

Glavni namen modula Services je zagotavljati dostop do metode CreateScriptService, ki jo lahko kličete iz uporabniških skriptov, da tvorite instanco storitev, ki so implementirane z uporabo ogrodja ScriptForge.

## Storitev ScriptForge.Session

Storitev Session obsega različne splošne metode glede:

- okolja nameščanja ali izvajanja,

- vpogleda v delovanje UNO in

- priklica zunanjih skriptov ali programov.

## Storitev ScriptForge.String

Storitev String ponuja zbirko metod za obdelavo nizov. S temi metodami lahko:

- potrdite veljavnost vsebine niza;

- oblikujete nize z obrezovanjem, poravnavanjem ali oblivanjem njihove vsebine;

- uporabite regularne izraze za iskanje in zamenjevanje podnizov;

- izvedete algoritme zgoščevalne funkcije nad nizi itn.

## Storitev ScriptForge.TextStream

Storitev TextStream se uporablja za zaporedno branje in pisanje v datoteke, odprte ali ustvarjene s storitvijo ScriptForge.FileSystem.

Metodi OpenTextFile in CreateTextFile iz storitve FileSystem vrneta instanco storitve TextStream.

## Storitev ScriptForge.Timer

Storitev Timer meri pretečeni čas ob izvajanju uporabniških skriptov.

Timer meri trajanje. Lahko je:

- zagnan, kar nakazuje, da meri čas delovanja;

- začasno zaustavljen, t.j. začasno ne meri časa delovanja;

- v nadaljevanju, da nadaljuje z merjenjem časa delovanja, potem ko je bil začasno zaustavljen;

- ponovno zagnan, kar prekliče prejšnje meritve in zažene časovnik Timer z ničelno vrednostjo.

## Storitev ScriptForge.UI

Storitev UI (User Interface, angl. za uporabniški vmesnik) poenostavlja identifikacijo in ravnanje z različnimi okni, ki tvorijo celoten program LibreOffice:

- izbiranje oken;

- premikanje in spreminjanje oken;

- nastavitve vrstice stanja;

- prikaz plavajoče vrstice napredka;

- ustvarjanje novih oken;

- Dostop do osnovnih "dokumentov"

Opomba: drugi, neopisani moduli ScriptForge so rezervirani za interno uporabo. Njihova vsebina se lahko spremeni brez opozorila.

Vsi podprogrami ali identifikatorji ScriptForge Basic s predpono podčrtaja (»_«) so rezervirani za interno uporabo. Uporabi v makrih Basic ali skriptih Python niso namenjeni.