A Biblioteca ScriptForge

Para acessar este comando...

Abra Ferramentas - Macros - LibreOffice Basic - Editar e selecione Macros do LibreOffice.


As bibliotecas ScriptForge criam uma coleção extensível de recursos de script de macro para oLibreOffice para serem chamados de macros Basic ou scripts 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

Para saber mais sobre como criar e executar scripts Python usando a biblioteca ScriptForge, consulte a página Criando Scripts Python com o ScriptForge.


Os módulos e classes descritos são chamados pelos scripts de usuário como "Serviços". Um construtor genérico desses serviços foi projetado para essa finalidade para cada idioma:


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

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

A biblioteca Basic do ScriptForge está disponível a partir do LibreOffice 7.1.
O módulo Python scriptforge está disponível a partir do LibreOffice 7.2.


Serviços disponibilizados pela biblioteca ScriptForge

Categoria

Serviços

LibreOffice Basic

Array
Dictionary
Exception

FileSystem
String
TextStream

Conteúdo do documento

Base
Calc

Database
Document

Interface de usuário

Dialog
DialogControl
UI

Form
FormControl

Utilitários

Basic
L10N
Platform

Services
Session
Timer


Serviço ScriptForge.Array

Fornece uma coleção de métodos para manipular e transformar arrays de uma dimensão (vetores) e arrays de duas dimensões (matrizes). Inclui operações de conjuntos, ordenação, importação e exportação de arquivos texto.

Arrays com mais de duas dimensões não podem ser usados em métodos deste serviço, com a única exceção do método CountDims que aceita arrays com qualquer número de dimensões.

Serviço SFDocuments.Base

O serviço Base oferece vários métodos e propriedades para facilitar o gerenciamento e o manuseio de documentos do LibreOffice Base.

Este serviço está intimamente relacionado ao serviço Document, que fornece métodos genéricos para lidar com documentos do LibreOffice, incluindo documentos Base. Portanto, o serviço Base estende o serviço Document e fornece métodos adicionais que são específicos para documentos Base, permitindo aos usuários:

note

Este serviço está disponível a partir do LibreOffice 7.2 em diante.


Serviço ScriptForge.Basic

O serviço ScriptForge.Basic propõe uma coleção de métodos LibreOffice Basic a serem executados em um contexto Python. Os métodos de serviço Basic reproduzem a sintaxe e o comportamento exatos das funções integradas do Basic.

note

Este serviço está disponível a partir do LibreOffice 7.2 em diante.


Serviço SFDocuments.Calc

A biblioteca SFDocuments fornece diversos métodos e propriedades que facilitam a gestão e manuseio de documentos do LibreOffice Calc.

Alguns métodos são genéricos para todos os tipos de documentos e são herdados do serviço Document, enquanto outros métodos são específicos do módulo SF_Calc.

O módulo SF_Calc tem como foco:

Serviço SFDatabases.Database

O serviço Database permite o acesso a bancos de dados embutidos ou descritos por documentos Base. Este serviço fornece métodos para:

Serviço SFDialogs.Dialog

O serviço Dialog auxilia na gestão de caixas de diálogo criadas com o Editor de Diálogos Basic. Cada instância desta classe representa uma caixa de diálogo única apresentada ao usuário.

Serviço SFDialogs.DialogControl

O serviço DialogControl gerencia os controles pertencentes a caixas de diálogo criadas com o Editor de Diálogos do Basic. Cada instância deste serviço representa um único controle em uma caixa de diálogo.

O foco deste serviço está na obtenção e definição de valores apresentados pelos controles de uma caixa de diálogo. A formatação é acessível por meio das propriedades XControlModel e XControlView.

Note que o conteúdo da propriedade DialogControl.Value varia de acordo com o tipo do controle.

Atenção especial é dada aos controles do tipo Árvore. É fácil povoar uma árvore, tanto ramo a ramo como diversos ramos de uma única vez. Inserir itens em um controle do tipo Árvore pode ser feito tanto de maneira estática como dinâmica.

Serviço ScriptForge.Dictionary

Um dicionário é uma coleção de pares de chaves-itens.

Serviço SFDocuments.Document

A biblioteca SFDocuments fornece métodos e propriedades que facilitam a gestão e manuseio de documentos do LibreOffice.

Métodos aplicáveis a todos os tipos de documentos (documentos de texto, planilhas, apresentações, etc.) são disponibilizados pelo serviço SFDocuments.Document. Alguns exemplos são:

Serviço ScriptForge.Exception

O serviço Exception fornece uma coleção de métodos que ajudam a depurar scripts em Basic e Python e também auxiliam na manipulação de exceções em scripts escritos em Basic.

Em scripts Basic, quando um erro de em tempo de execução ocorre, os métodos e propriedades do serviço Exception ajudam a identificar o contexto do erro e ajudam na sua manipulação.

Serviço ScriptForge.FileSystem

O serviço FileSystem inclui rotinas para manusear arquivos e pastas. A seguir estão alguns exemplos do que pode ser feito com este serviço:

Serviço SFDocuments.Form

O serviço Form fornece métodos e propriedades para gerenciar formulários em documentos do LibreOffice. Este serviço suporta formulários de documentos Base, Calc e Writer e permite:

Serviço SFDocuments.FormControl

O serviço FormControl provê acesso aos controles que pertencem a um formulário, subformulário ou controle de tabela de um FormDocument. Cada instância do serviço FormControl se refere a um único controle no formulário. Este serviço permite:

Serviço ScriptForge.L10N

Este serviço fornece diversos métodos relacionados à tradução de Strings com impacto mínimo no código fonte do programa. Os métodos disponibilizados pelo serviço L10N podem ser usados para:

Serviço ScriptForge.Platform

O serviço Platform fornece um conjunto de propriedades sobre o ambiente de execução atual e seu contexto, incluindo:

Serviço ScriptForge.Services

A biblioteca ScriptForge é construída com uma coleção extensível de Serviços.
Esta coleção é implementada como categorias de bibliotecas Basic ou módulos Python.

  1. a biblioteca ScriptForge padrão fornecida com o LibreOffice

  2. uma variedade de bibliotecas "associadas" que também são fornecidas com o LibreOffice

  3. qualquer extensão do LibreOffice feita por usuários/contribuidores que desejam se encaixar no mesmo framework.

Serviço ScriptForge.Session

O serviço Session reúne diversos métodos de propósito geral sobre:

Serviço ScriptForge.String

O serviço String fornece um conjunto de métodos para processamento de Strings. Tais métodos podem ser usados para:

Serviço ScriptForge.TextStream

O serviço TextStream é usado para ler e escrever sequencialmente de/para arquivos abertos usando o serviço ScriptForge.FileSystem service.

Os métodos OpenTextFile e CreateTextFile do serviço FileSystem retornam uma instância do serviço TextStream.

Serviço ScriptForge.Timer

O serviço Timer mede o tempo para executar scripts de usuário.

Um Timer mede durações. Ele pode ser:

Serviço ScriptForge.UI

O serviço UI (do inglês, User Interface - Interface de Usuário) simplifica a identificação e manipulação das diferentes janelas que compõem toda a aplicação do LibreOffice:

Nota: Outros módulos do ScriptForge não descritos aqui são reservados para uso interno. Seu conteúdo está sujeito a mudanças sem aviso prévio.

warning

Todas as rotinas básicas ou identificadores do ScriptForge que possuem o caractere "_" como prefixo são reservados apenas para uso interno. Elas não devem ser usadas em macros Basic.


♥ Doe para nosso projeto! ♥