Knihovna ScriptForge

Pro přístup k tomuto příkazu...

Otevřete Nástroje - Makra - LibreOffice Basic - Upravit a vyberte Makra LibreOffice.


Knihovny ScriptForge představují rozšiřitelnou sadu pro skriptování maker v LibreOffice, které lze volat z maker Basicu nebo skriptů Pythonu.

note

• 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


tip

Více se o vytváření a spouštění skriptů Pythonu pomocí knihovny ScriptForge dozvíte na stránce nápovědy Vytváření skriptů Pythonu s knihovnouScriptForge.


Popsané moduly a třídy se z uživatelských skriptů volají jako „služby“. Za tím účelem byl pro tyto služby vytvořen obecný konstruktor:


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

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

Knihovna Basicu ScriptForge je k dispozici od verze % PRODUCTNAME 7.1.
Modul Pythonu scriptforge je k dispozici od verze LibreOffice 7.2.


Služby poskytované knihovnou ScriptForge

Kategorie

Služby

LibreOffice Basic

Array
Dictionary
Exception

FileSystem
String
TextStream

Obsah dokumentu

Base
Calc

Database
Document

Uživatelské rozhraní

Dialog
DialogControl
UI

Form
FormControl

Nástroje

Basic
L10N
Platform

Services
Session
Timer


Služba ScriptForge.Array

Poskytuje sadu metod pro manipulaci s jednorozměrnými poli (vektory) a dvourozměrnými poli (maticemi) a jejich transformaci. Mezi ně patří množinové operace, řazení, import z textových souborů a import do nich.

Pole s více než dvěma rozměry nelze pomocí metod této služby používat, jedinou výjimkou je metoda CountDims, která přijímá pole s libovolným počtem rozměrů.

Služba SFDocuments.Base

Služba Base poskytuje řadu metod a vlastností usnadňujících správu a obsluhu dokumentů LibreOffice Base.

Služba úzce souvisí se službou Dokument, která nabízí obecné metody pro nakládání s dokumenty LibreOffice, a to včetně dokumentů aplikace Base. Služba Base tak službu Document rozšiřuje, nabízí dodatečné metody specifické pro Base, a umožňuje uživatelům:

note

Tato služba je k dispozici od verze LibreOffice 7.2.


Služba ScriptForge.Basic

Záměrem služby ScriptForge.Basic je, aby šla v kontextu Pythonu spouštět vybraná sada metod jazyka LibreOffice Basic. Metody služby Basic přesně reprodukují syntaxi a chování funkcí vestavěných v Basicu.

note

Tato služba je k dispozici od verze LibreOffice 7.2.


Služba SFDocuments.Calc

KnihovnaSFDocuments poskytuje řadu metod a vlastností usnadňujících správu a obsluhu dokumentů LibreOffice Calc.

Některé metody, zděděné ze služby Document, jsou obecné pro všechny typy dokumentů, zatímco jiné jsou specifické pro modul SF_Calc.

Modul SF_Calc se zaměřuje na:

Služba SFDatabases.Database

Služba Database poskytuje přístup k databázím, a to jak vestavěným, tak popsaným v dokumentech Base. Pomocí metod této služby lze:

Služba SFDialogs.Dialog

Služba Dialog přispívá ke správě dialogových oken vytvořených v editoru dialogových oken Basicu. Každá instance třídy představuje jedno dialogové okno zobrazené uživateli.

Služba SFDialogs.DialogControl

Služba DialogControl je určena pro správu ovládacích prvků náležejících k dialogovému oknu definovanému v editoru dialogových oken Basicu. Každá instance aktuální služby představuje jeden ovládací prvek v dialogovém okně.

Služba je zaměřena na získávání a nastavování hodnot zobrazených v ovládacích prvcích okna. Formátovat lze prvky prostřednictvím vlastností XControlModel a XControlView.

Obsah důležité vlastnosti DialogControl.Value závisí na druhu ovládacího prvku.

Důraz je kladen na ovládací prvky typu stromu. Lze je snadno plnit daty, buď větev po větvi, nebo najednou pro skupinu větví. Plnění může probíhat jak staticky, tak dynamicky.

Služba ScriptForge.Dictionary

Slovník je kolekce dvojic klíč a položka.

Služba SFDocuments.Document

Knihovna SFDocuments nabízí metody a vlastnosti pro správu dokumentů LibreOffice a manipulaci s nimi.

Metody, které lze použít u všech typů dokumentů (textové dokumenty, sešity, prezentace apod.), jsou poskytovány službou SFDocuments.Document. Jedná se například o:

Služba ScriptForge.Exception

Služba Exception je sada metod napomáhajících ladění kódu ve skriptech Basicu a Pythonu a zpracování chyb ve skriptech Basicu.

Když ve skriptech Basicu nastane běhová chyba, metody a vlastnosti služby Exception pomáhají identifikovat kontext chyby a umožňují chybu zpracovat.

Služba ScriptForge.FileSystem

Služba FileSystem obsahuje procedury pro manipulaci se soubory a složkami. Příklady funkcí poskytovaných touto službou jsou:

Služba SFDocuments.Form

Služba Form nabízí metody a vlastnosti pro správu formulářů v dokumentech LibreOffice. Podporuje formuláře v aplikacích Base, Calc a Writer a umožňuje:

Služba SFDocuments.FormControl

Služba FormControl poskytuje přístup k ovládacím prvkům náležejícím k formuláři, podformuláři nebo prvku tabulky objektu FormDocument. Každá instance služby FormControl odkazuje na jeden ovládací prvek ve formuláři. Služba umožňuje uživatelům:

Služba ScriptForge.L10N

Tato služba nabízí řadu metod souvisejících s překladem řetězců s minimálním zásahem do zdrojového kódu programu. Metody poskytované službou L10 lze použít zejména pro:

Služba ScriptForge.Platform

Služba Platform nabízí sadu vlastností popisujících aktuální běhové prostředí a kontext, jako jsou:

Služba ScriptForge.Services

Knihovna ScriptForge je založena na rozšířitelné sadě takzvaných „služeb“.
Tato sada je implementována v podobě těchto kategorií knihoven Basicu nebo modulů Pythonu:

  1. standardní knihovna ScriptForge instalovaná v rámci LibreOffice

  2. řada „přidružených“ knihoven rovněž instalovaných v rámci LibreOffice

  3. rozšíření LibreOffice od jakéhokoliv uživatele/přispěvatele, který chce používat stejné prostředí jako tyto knihovny

Služba ScriptForge.Session

Služba Session sdružuje různé obecné metody týkající se:

Služba ScriptForge.String

Služba String nabízí sadu metod na zpracování řetězců. Pomocí těchto metod je možné:

Služba ScriptForge.TextStream

Služba TextStream se používá k postupnému čtení/zápisu z/do souborů otevřených či vytvořených pomocí služby ScriptForge.FileSystem.

Instanci služby TextStream vrátí metody OpenTextFile a CreateTextFile ze služby FileSystem.

Služba ScriptForge.Timer

Služba Timer měří dobu, kterou trvá spouštění uživatelských skriptů.

Timer měří dobu trvání. Je možné jej:

Služba ScriptForge.UI

Služba UI (user interface, uživatelské rozhraní) zjednodušuje identifikování a manipulace s různými okny, ze kterých se skládá celá aplikace LibreOffice.

Poznámka: Další, nepopisované moduly ScriptForge jsou určeny pro interní použití. Jejich obsah se může bez upozornění měnit.

warning

Všechny procedury nebo identifikátory knihovny ScriptForge, které jsou uvozeny podtržítkem "_", jsou určeny pro interní použití. Není zamýšleno je používat v makrech Basicu.