Biblioteket ScriptForge

For at tilgå denne kommando...

Åbn Funktioner ▸ Makroer ▸ LibreOffice Basic ▸ Rediger og vælg containeren Programmakroer.


Bibliotekerne i ScriptForge opbygger en samling af makroscript-ressourcer, der kan udvides, til brug i LibreOffice, der skal kaldes fra Basic-makroer eller Python-scripts.

note

• Basic-makroer kræver, at biblioteket ScriptForge indlæses med følgende udtryk:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python-scripts kræver import af scriptforge-modulet:
from scriptforge import CreateScriptService


tip

For at vide mere om, hvordan Python-scripts oprettes og udføres med biblioteket ScriptForge, læs hjælpesiden Oprettelse af Python-scripts med ScriptForge.


Kald af ScriptForge-tjenester

De beskrevne moduler og klasser kaldes fra brugerscripts som "Tjenester". Der er designet en generisk konstruktor af disse tjenester til det formål for hvert enkelt sprog.

Metoden Dispose (Bortskaf) er tilgængelig i alle tjenester og bør kaldes for at frigøre ressourcer efter brugen:

I Basic

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

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

Tjenester leveret af biblioteket ScriptForge

Kategori

Tjenester

LibreOffice Basic

Array
Dictionary

Exception
FileSystem

String
TextStream

Dokumentindhold

Base
Calc
Chart

Database
Dataset
Datasheet

Document
FormDocument
Writer

Brugerflade

Dialog
DialogControl
Form

FormControl
Menu
PopupMenu

Toolbar
ToolbarButton
UI

Redskabsprogrammer

Basic
L10N
Platform

Region
Services
Session

Timer
UnitTest


ScriptForge.Array-tjeneste

Giver en samling metoder til at manipulere og transformere en-dimensions matrixer (vektorer) og to-dimensions matrixer (matrixer). Dette omfatter sæt-operationer, sortering, import fra og eksport til tekstfiler.

Matrixer med mere end to dimensioner kan ikke bruges med metoderne i denne tjeneste; den eneste udtagelse er metoden CountDims, der accepterer matrixer med et vilkårligt antal dimensioner.

SFDocuments.Base service

Tjenesten Base giver et antal metoder og egenskaber, der letter administration og håndtering af LibreOffice Base-dokumenter.

Denne tjeneste er nært relateret til tjenesten Document, som giver generiske metoder til at håndtere LibreOffice-dokumenter, herunder Base-dokumenter. Derfor udvider tjenesten Base tjenesten Document og giver yderligere metoder, der er specifikke for Base-dokumenter og lader brugerne:

tjenesten ScriptForge.Basic

Tjenesten ScriptForge.Basic tilbyder en samling af LibreOffice Basic-metoder til kørsel i en Python-kontekst. Tjenesten Basics metoder reproducerer de indbyggede Basic-funktioners præcise syntaks og adfærd.

Tjenesten SFDocuments.Calc

Det delte bibliotek SFDocuments giver et antal metoder og egenskaber til at facilitere adminstrationen og håndteringen af LibreOffice-dokumenter.

Tjenesten SFDocuments.Calc er en delmængde af tjenesten SFDocuments.Document. Alle metoder og egenskaber, der er defineret til tjenesten Document (dokument) kan også tilgås med tjenesteforekomsten Calc.

Tjenesten Calc er fokuseret på:

tjenesten SFDocuments.Chart

Tjenesten Chart (diagram) leverer et sæt egenskaber og metoder til at håndtere diagrammer i Calc-dokumenter. Med denne tjeneste er det muligt at:

Tjenesten SFDatabases.Database

Tjenesten Database giver adgang til databaser enten indlejrede eller beskrevet i Base-dokumenter. Denne tjeneste leverer metoder til:

SFDatabases.Dataset service

The Dataset service is used to represent tabular data produced by a database. With this service it is possible to:

SFDatabases.Datasheet service

The Datasheet service allows to visualize the contents of database tables as well as the results of queries and SQL statements using Base's Data View. Additionally, this service allows to:

Tjenesten SFDialogs. Dialog

The Dialog service contributes to the management of dialogs created with the Basic Dialog Editor or dialogs created on-the-fly. Each instance of the current class represents a single dialog box displayed to the user.

Tjenesten SFDialogs.DialogControl

Tjenesten DialogControl håndterer de kontroller, der hører til en dialog, der er defineret med Basics Dialogredigering. Hver forekomst af den aktuelle tjeneste repræsenterer en enkelt kontrol indenfor et dialog felt.

Fokus sættes på at hente og sætte de værdier, der vises af dialogfeltets kontroller. Formatering er tilgængelig via egenskaberne XControlModel and XControlView.

Bemærk, at indholdet af den unikke egenskab DialogControl.Value (dialogkontrol.værdi) varierer efter kontroltypen.

Kontrolelementer ordnet i en træstruktur får særlig opmærksomhed. Det er let at fylde et træ med værdier, enten gren for gren eller med flere grene på én gang. Indsættelse af værdier i et "kontroltræ" kan gøres statisk eller dynamisk.

Tjenesten ScriptForge.Ordbog

En ordbog er samling af nøgle-element-par

Tjenesten SFDocuments.Document

The SFDocuments library provides methods and properties to facilitate the management and manipulation of LibreOffice documents.

Metoder, der kan anvendes på alle typer af dokumenter (tekstdokumenter, regneark, præsentationer og så videre) leveres af tjenesten SFDocuments.Document. Nogle eksempler er:

Tjenesten ScriptForge.Exception (Undtagelse)

Tjenesten Exception (undtagelse) er en samling af metoder, der hjælper med at debugge koder i Basic- og Python-sceripts og med håndtering af fejl i Basic-scripts.

I Basic-scripts hjælper tjenesten Exception (undtagelse) metoderne og egenskaberne med at identificere fejlens sammenhæng og tillader håndtering af den, når der forekommer en kørselsfejl.

Tjenesten ScriptForge.FileSystem

Tjenesten FileSystem omfatter rutiner til håndtering af filer og mapper. Herefter er der nogle eksempler på funktionaliteter leveret af denne tjeneste:

Tjenesten SFDocuments.Form

Tjenesten Form giver metoder og egenskaber til administration af formularer i LibreOffice-dokumenter. Denne tjeneste understøtter formularer i Base-, Calc- og Writer-dokumenter og tillader:

Tjenesten SFDocuments.FormControl

Tjenesten FormControl (formularkontrol) giver adgang til de kontroller, der tilhører en formular, en underformular eller en tabel-kontrol i et FormDocument (formulardokument). Hver forekomst af tjenesten FormControl henviser til en enkelt kontrol i formularen. Denne tjeneste lader brugerne:

SFDocuments.FormDocument service

The FormDocument service allows to access form documents stored in LibreOffice Base documents.

In a Base document, existing form documents can be viewed by selecting View - Forms in the user interface. Each form document may be composed of one or more forms, including the main form and other sub-forms.

Tjenesten ScriptForge.L10N

Denne tjeneste leverer et antal metoder i forbindelse med oversættelse af strenge med minimal indvirkning på programmets kildekode. Metoderne, der er leveret af tjenesten L10N kan hovedsagelig bruges til:

Tjenesten SFWidgets.Menu

Tjenesten Menu kan bruges til at oprette og fjerne menuer fra menulinjen i et LibreOffice dokumentvindue. Hvert menupunkt kan tilknyttes til et script eller til en UNO-kommando. Tjenesten giver disse muligheder:

Tjenesten ScriptForge.Platform

Tjenesten Platform giver en samling af egenskaber vedrørerende det aktuelle kørselsmiljø og kontekst, såsom:

Tjenesten SFWidgets.PopupMenu

Tjenesten PopupMenu kan bruges til at oprette popup-menuer, der kan knyttes til hændelser eller udføres af scripts. Denne tjeneste giver disse muligheder:

ScriptForge.Region service

The Region service provides a collection of properties and methods to handle locale and region-related aspects of programming, such as:

Tjenesten ScriptForge.Services

Hovedformålet med modulet Services (tjeneste) er at give adgang til metoden CreateScriptService (opret_script-tjeneste), som kan kaldes i brugerscripts til at instantiere tjenester, der implementeres med ScriptForge-miljøet.

Tjenesten ScriptForge.Session

Tjenesten Session samler forskellige generelle metoder:

Tjenesten ScriptForge.String (streng)

Tjenesten String (streng) leverer en samling af metoder til streng-behandling. Disse metoder kan bruges til:

Tjenesten ScriptForge.TextStream (tekst-strøm)

Tjenesten TextStream bruges til fortløbende at læse og skrive i de filer, der er åbnet eller oprettet med tjenesten ScriptForge.FileSystem.

Metoderne OpenTextFile (åbn tekstfil) og CreateTextFile (opret tekstfil) fra tjenesten FileSystem (filsystem) returnerer en forekomst af tjenesten TextStream (tekst-strøm).

Tjenesten ScriptForge.Timer (stopur)

Tjenesten Timer (stopur) måler den tid, det tager at køre brugerscripts.

En Timer Måler varigheder. Det kan være:

SFWidgets.Toolbar service

The Toolbar service allows to retrieve information related to the toolbars available for a specific document window. With this service it is possible to:

SFWidgets.ToolbarButton service

The ToolbarButton service allows to retrieve information related to the toolbar buttons available in a given toolbar. With this service it is possible to:

Tjenesten ScriptForge.UI (brugerflade)

Tjenesten UI (User Interface = brugerflade) forenkler identifikationen og håndteringen af de forskellige vinduer, der udgør hele LibreOffice-programet.

SFUnitTests.UnitTest service

The UnitTest service provides a framework for automating unit tests using the Basic language, including the ability to:

Tjenesten SFDocuments.Writer

Det delte bibliotek SFDocuments giver et antal metoder og egenskaber til at lette administration og håndtering af LibreOffice-dokumenter.

Nogle metoder et almindelige for alle dokumenttyper og er nedarvede fra modulet SF_Document, mens andre metoder, der er specifikke for Writer-dokumenter er defineret i modulet SF_Writer.

OBS: Andre ScriptForge ikke-beskrevne moduler er reserveret til internt brug. Deres indhold kan ændres uden varsel.

warning

Alle ScriptForge Basic-rutiner eller identifikatorer, der er indledet med et understreget tegn "_" er reserveret til internt brug. Det er ikke meningen, at de skal bruges i Basic-makroer eller Python-scripts.


Støt os venligst!