Toolbar Buttons deaktivieren

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

BigBen500
Beiträge: 1
Registriert: Fr, 18.09.2009 10:28

Toolbar Buttons deaktivieren

Beitrag von BigBen500 »

Guten Tag,

ich habe ein Problem mit einer selbst erstellten Toolbar in OpenOffice. Ich habe die Toolbar über eine Extension als Addon installiert (per Addon.xcu). Sie wird angezeigt und funktioniert wunderbar.
Meine Aufgabe ist es jetzt zur Laufzeit einzelne Buttons der Toolbar deaktivieren und wieder aktivieren zu können. Dazu muss ich allerdings per Programmcode an diese Toolbar rankommen. An die Standardtoolbars von Openoffice komme ich ran und es funktioniert mit diesen auch, hier dazu mein Code (ich benutze VB6).

Code: Alles auswählen

Dim sToolbarURL As String
sToolbarURL = "private:resource/toolbar/standardbar"

Dim oSupplier As Object
Set oSupplier = CreateUnoService("com.sun.star.ui.ModuleUIConfigurationManagerSupplier")
     
Dim oModuleCfgMgr As Object
Set oModuleCfgMgr = oSupplier.getUIConfigurationManager("com.sun.star.text.TextDocument")

Dim oToolbarSettings As Object
Set oToolbarSettings = oModuleCfgMgr.getSettings(sToolbarURL, True) 
Mit dem oToolbarSettings Objekt kann ich weiterarbeiten und die einzelnen Buttons bearbeiten.

Wenn ich jetzt auf meine eigene Addon-Toolbar zugreifen möchte ändere ich die Toolbar-RessourceURL in

Code: Alles auswählen

private:resource/toolbar/addon_TestMacroLib.OfficeToolBar
Dann liefert die Zeile

Code: Alles auswählen

Set oToolbarSettings = oModuleCfgMgr.getSettings(sToolbarURL, True) 

allerdings nicht mehr die Toolbar sondern eine "NoSuchElementException".

Mit der Methode oModuleCfgMgr.getUIElementsInfo(0) kann ich alle UIElemente bekommen. Wenn ich mir die RessourceURLs aller UIElemente ausgeben lasse, ist meine eigene Toolbar wirklich nicht dabei.

Wo ist meine eigene Addon-Toolbar geblieben? Wie komme ich an diese ran? Werden Addon-Toolbars woanders abgelegt? gibts da ne extra Auflistung für?

Vielen Dank im Vorraus für eure Hilfe.