Contido

# 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:

- Toggle the visibility of specific toolbars.

- Access information about the buttons available in each toolbar.

Each LibreOffice application has its own set of available toolbars. This service handles both built-in and custom toolbars.

The status bar and the menu bar are not considered toolbars in the context of this service.

## Service invocation

Before using the Toolbar service the ScriptForge library needs to be loaded or imported:

• As macros en BASIC requiren que se cargue a biblioteca ScriptForge empregando a instrución seguinte:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Os scripts en Python requiren unha importación do módulo scriptforge:
from scriptforge import CreateScriptService

The Toolbar service is invoked using the Toolbars method, which is available in SFDocuments.Document service.

##### In Basic

The example below gets an Array with the names of the toolbars available in the current document.

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

Use the Toolbars method without arguments to retrieve an array with available toolbar names.

The example below toggles the visibility of the Standard toolbar:

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

##### In 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

## Properties

Name | Readonly | Type | Description
--- | --- | --- | ---
BuiltIn | Yes | Boolean | Returns True when the toolbar is part of the set of standard toolbars shipped with LibreOffice.
Docked | Yes | Boolean | Returns True when the toolbar is active in the window and docked.
HasGlobalScope | Yes | Boolean | Returns True when the toolbar is available in all documents of the same type.
Name | Yes | String | Returns the name of the toolbar.
ResourceURL | Yes | String | Returns the resource URL of the toolbar, in the form private:toolbar/toolbar_name.
Visible | No | Boolean | Returns True when the toolbar is active and visible in the document window.
XUIElement | Yes | UNO Object | Returns the com.sun.star.ui.XUIElement UNO object that represents the toolbar.

List of Methods in the Toolbar Service
ToolbarButtons |  |

## ToolbarButtons

Returns an Array containing the names of all toolbar buttons when called without arguments.

Provide the name of a toolbar button as argument to obtain a ToolbarButton service instance.

### Sintaxe:

svc.ToolbarButtons(opt buttonname: str): any

### Parámetros:

buttonname: The name of a toolbar button in the current toolbar.

### Exemplo:

The example below returns the command executed when the button New is clicked in the Standard toolbar:

##### In Basic

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

##### In Python

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

Inactive toolbars do not have buttons. Therefore, calling the ToolbarButtons method will make the toolbar visible.

Todas as rutinas ou identificadores BASIC ScriptForge que están precedidas por un carácter de guión baixo «_» están reservadas para uso interno. Non se deben utilizar en macros BASIC ou scripts de Python.

Temas relacionados

SFWidgets.ToolbarButton service