La libreria ScriptForge

Per accedere a questo comando...

Aprite Strumenti - Macro - LibreOffice Basic - Modifica e selezionate il contenitore LibreOffice Macro.


Le librerie ScriptForge costituiscono una collezione estensibile di risorse per la scrittura di macro per LibreOffice e possono essere invocate dalle macro in Basic o dagli script in Python.

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

Per saperne di più sul modo in cui creare ed eseguire script in Python che fanno uso delle librerie ScriptForge, leggete la pagina di aiuto Creazione di script in Python con ScriptForge.


I moduli e le classi descritte sono invocate dagli script dell'utente come "Servizi". A tal fine è stato progettato, per ciascun linguaggio, un costruttore generico di questi servizi:


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

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

Le librerie ScriptForge per Basic sono disponibili in LibreOffice dalla versione 7.1 in avanti.
Il modulo scriptforge per Python è disponibile da LibreOffice 7.2 in poi.


Servizi forniti dalle librerie ScriptForge

Categoria

Servizi

LibreOffice Basic

Array
Dictionary
Exception

FileSystem
String
TextStream

Contenuto del documento

Base
Calc

Database
Document

Interfaccia utente

Dialog
DialogControl
UI

Form
FormControl

Utilità

Basic
L10N
Platform

Services
Session
Timer


Servizio ScriptForge.Array

Fornisce una raccolta di metodi per manipolare e trasformare matrici a una dimensione (vettori) e a due dimensioni (matrici). Questi comprendono: operazioni di inserimento, ordinamento, importazione da ed esportazione in file di testo.

Le matrici con più di due dimensioni non possono essere usate con i metodi di questo servizio, con l'unica eccezione del metodo CountDims che accetta matrici con qualsiasi numero di dimensioni.

Servizio SFDocuments.Base

Il servizio Base fornisce numerosi metodi e proprietà per facilitare la gestione e la manipolazione dei documenti di LibreOffice Base.

Questo servizio è strettamente connesso al servizio Document, che fornisce metodi generici per manipolare documenti di LibreOffice, compresi quelli di Base. Perciò, il servizio Base estende il servizio Document e fornisce metodi aggiuntivi specifici per i documenti di Base, consentendo all'utente di:

note

Questo servizio è disponibile in LibreOffice dalla versione 7.2 in poi.


Servizio ScriptForge.Basic

Il servizio ScriptForge.Basic propone una raccolta di metodi di LibreOffice Basic da eseguire in ambiente Python. I metodi del servizio Basic riproducono esattamente la sintassi e il comportamento delle funzioni incorporate in Basic.

note

Questo servizio è disponibile in LibreOffice dalla versione 7.2 in poi.


Servizio SFDocuments.Calc

La libreria SFDocuments fornisce una serie di metodi e proprietà che facilitano la gestione e la manipolazione di documenti di LibreOffice Calc.

Alcuni metodi sono generici per tutti i tipi di documenti e sono ereditati dal servizio Document, altri metodi invece sono specifici per il modulo SF_Calc.

Il SF_Calc è mirato per:

Servizio SFDatabases.Database

Il servizio Database fornisce l'accesso sia ai database incorporati, sia a quelli descritti nei documenti di Base. Questo servizio fornisce metodi per:

Servizio SFDialogs.Dialog

Il servizio Dialog contribuisce alla gestione delle finestre di dialogo create con l'Editor delle finestre di Basic. Ogni istanza della classe corrente rappresenta una singola finestra di dialogo visualizzata all'utente.

Servizio SFDialogs.DialogControl

Il servizio DialogControl gestisce i controlli appartenenti a una finestra di dialogo definita dall'Editor delle finestre di Basic. Ogni istanza del servizio corrente rappresenta un singolo controllo all'interno della finestra di dialogo.

Lo scopo è quello di ottenere ed impostare i valori visualizzati dai controlli della finestra di dialogo. La formattazione è accessibile tramite le proprietà XControlModel e XControlView.

Fate attenzione che il contenuto dell'unica proprietà DialogControl.Value varia in base al tipo di controllo.

Un'attenzione particolare è rivolta ai controlli del tipo ad albero. È facile popolare un albero, ramo per ramo, o con un insieme di rami contemporaneamente. Il popolamento di un controllo ad albero può essere eseguito staticamente o dinamicamente.

Servizio ScriptForge.Dictionary

Un dizionario è una raccolta di coppie chiave-elemento

Servizio SFDocuments.Document

La libreria SFDocuments fornisce metodi e proprietà per agevolare la gestione e la modifica dei documenti di LibreOffice.

I metodi applicabili a tutti i tipi di documento (documenti di testo, fogli elettronici, presentazioni, ecc.) sono forniti dal servizio SFDocuments.Document. Alcuni esempi sono:

Servizio ScriptForge.Exception

Il servizio Exception è una raccolta di metodi di supporto al debug del codice degli script in Basic e Python e alla gestione degli errori negli script in Basic.

Negli script in Basic, quando si verifica un errore in fase di run-time, i metodi e le proprietà del servizio Exception consentono di identificare l'errore e di gestirlo.

Servizio ScriptForge.FileSystem

Il servizio FileSystem comprende routine per gestire i file e le cartelle. Di seguito sono riportati alcuni esempi delle funzionalità fornite da questo servizio:

Servizio SFDocuments.Form

Il servizio Form fornisce metodi e proprietà per gestire i formulari nei documenti di LibreOffice. Questo servizio supporta i formulari dei documenti di Base, Calc e Writer e consente di:

Servizio SFDocuments.FormControl

Il servizio FormControl fornisce accesso ai controlli che appartengono a un formulario, un formulario secondario o a un controllo tabella di un documento formulario (FormDocument). Ogni istanza del servizio FormControl si riferisce a un singolo controllo del formulario. Questo servizio permette agli utenti di:

Servizio ScriptForge.L10N

Questo sevizio fornisce una serie di metodi relativi alla traduzione di stringhe con un impatto minimo sul codice sorgente del programma. I metodi forniti dal servizio L10N possono essere usati principalmente per:

Servizio ScriptForge.Platform

Il servizio Platform fornisce una raccolta di proprietà relative all'ambiente e al contesto di esecuzione correnti, come:

Servizio ScriptForge.Services

La libreria ScriptForge è costruita basandosi su una raccolta estensibile di cosiddetti "Servizi".
Questa raccolta viene implementata con categorie di librerie in Basic o di moduli in Python:

  1. la libreria ScriptForge standard fornita con LibreOffice

  2. una serie di librerie "associate", fornite anch'esse con LibreOffice

  3. qualsiasi estensione di LibreOffice di utenti o collaboratori che desiderano inglobarla nella stessa infrastruttura

Servizio ScriptForge.Session

Il servizio Session raggruppa diversi metodi di uso generale relativi a:

Servizio ScriptForge.String

Il servizio String fornisce una raccolta di metodi per l'eleborazione delle stringhe. Questi metodi possono essere usati per:

ScriptForge.TextStream service

The TextStream service is used to sequentially read from and write to files opened or created using the ScriptForge.FileSystem service.

The methods OpenTextFile and CreateTextFile from the FileSystem service return an instance of the TextStream service.

ScriptForge.Timer service

The Timer service measures the amount of time it takes to run user scripts.

A Timer measures durations. It can be:

ScriptForge.UI service

The UI (User Interface) service simplifies the identification and the manipulation of the different windows composing the whole LibreOffice application:

Nota: ulteriori moduli di ScriptForge, che non sono qui descritti, sono riservati per uso interno. Il loro contenuto è soggetto a modifiche senza preavviso.

warning

Tutte le routine e gli identificatori Basic di ScriptForge che iniziano con un carattere di sottolineatura "_" sono riservati per uso interno. Non è previsto il loro utilizzo nelle macro in Basic.


Sosteneteci!