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:

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

note

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:

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


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)
  
tip

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.

Syntax:

svc.ToolbarButtons(opt buttonname: str): any

Parameters:

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

Example:

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)
    
note

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


warning

All ScriptForge Basic routines or identifiers that are prefixed with an underscore character "_" are reserved for internal use. They are not meant be used in Basic macros or Python scripts.


Please support us!