Serviço SFWidgets.Toolbar

O serviço Toolbar permite recuperar informações relacionadas às barras de ferramentas disponíveis em uma janela específica do documento. Com este serviço é possível:

Cada aplicativo do LibreOffice possui seu próprio conjunto de barras de ferramentas disponíveis. Este serviço lida tanto com barras de ferramentas integradas como personalizadas.

note

A barra de status e a barra de menu não são consideradas barras de ferramentas no contexto deste serviço.


Invocação do serviço

Antes de usar o serviço Toolbar a biblioteca ScriptForge precisa ser carregada ou importada:

note

• Macros BASIC precisam carregar a biblioteca ScriptForge usando a seguinte instrução:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Scripts Python exigem uma importação do módulo scriptforge:
from scriptforge import CreateScriptService


O serviço Toolbar é invocado usando o método Toolbars, que está disponível no serviço SFDocuments.Document.

Em Basic

O exemplo abaixo obtém um Array com os nomes das barras de ferramentas disponíveis no documento atual.


    oDoc = CreateScriptService("Document", ThisComponent)
    arrToolbars = oDoc.Toolbars()
    MsgBox SF_String.Represent(arrToolbars)
  
tip

Use o método Toolbars sem argumentos para recuperar um array com os nomes das barras de ferramentas disponíveis.


O exemplo abaixo alterna a visibilidade da barra de ferramentas Padrão:


    oDoc = CreateScriptService("Document", ThisComponent)
    toolbar = oDoc.Toolbars("standardbar")
    toolbar.Visible = Not toolbar.Visible
  
Em Python

    bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
    arr_toolbars = doc.Toolbars()
    bas.MsgBox(repr(toolbars))
  

    bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
    toolbar = doc.Toolbars("standardbar")
    toolbar.Visible = not toolbar.Visible
  

Propriedades

Nome

Somente leitura

Tipo

Descrição

BuiltIn

Sim

Boolean

Retorna True quando a barra de ferramentas faz parte do conjunto de barras de ferramentas padrão do LibreOffice.

Docked

Sim

Boolean

Retorna True quando a barra de ferramentas está ativa na janela e se encontra encaixada.

HasGlobalScope

Sim

Boolean

Retorna True quando a barra de ferramentas está disponível em todos os documentos do mesmo tipo.

Name

Sim

String

Retorna o nome da barra de ferramentas.

ResourceURL

Sim

String

Retorna a URL do recurso da barra de ferramentas, no formato private:toolbar/toolbar_name.

Visible

Não

Boolean

Retorna True quando a barra de ferramentas está ativa e visível na janela do documento.

XUIElement

Sim

UNO Object

Retorna o objeto UNO com.sun.star.ui.XUIElement que representa a barra de ferramentas.


Lista de métodos do serviço Toolbar

ToolbarButtons


ToolbarButtons

Retorna um Array contendo os nomes de todos os botões da barra de ferramentas quando chamado sem argumentos.

Forneça o nome de um botão da barra de ferramentas como argumento para obter uma instância do serviço ToolbarButton.

Sintaxe:

svc.ToolbarButtons(opt buttonname: str): any

Parâmetros:

buttonname: o nome de um botão na barra de ferramentas atual.

Exemplo:

O exemplo abaixo retorna o comando executado quando o botão Novo é clicado na barra de ferramentas Padrão:

Em Basic

      oToolbar = oDoc.Toolbars("standardbar")
      oToolbarButton = oToolbar.ToolbarButtons("New")
      MsgBox oToolbarButton.OnClick
    
Em Python

      toolbar = doc.Toolbars("standardbar")
      toolbar_button = toolbar.ToolbarButtons("New")
      bas.MsgBox(toolbar_button.OnClick)
    
note

As barras de ferramentas inativas não possuem botões. Portanto, chamar o método ToolbarButtons tornará a barra de ferramentas visível.


warning

Todas as rotinas ou identificadores do ScriptForge em Basic que possuem o caractere "_" como prefixo são reservadas para uso interno. Elas não devem ser usadas em macros escritas em Basic ou em Python.


♥ Doe para nosso projeto! ♥