openoffice-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Schmidt <joe...@j-m-schmidt.de>
Subject Re: Writer - Frage
Date Sat, 01 Jun 2013 17:25:58 GMT
Hallo, 

> From: 3052192 [mailto:apotheke@stadtapotheke-badaibling.de] 

> Wenn Du
> diese Icons aber als Schaltflächen nutzen willst,  wird das 
> ein tiefgehender
> Eingriff. Du brauchst (nach meinem Verständnis) ein Icon auf der
> Symbol-leiste, das mit einem Programm verknüpft ist, das 
> Deine speziellen
> Wünsche ausführt. Im Endeffekt ist das technisch vergleichbar 
> mit einem Icon
> auf dem Win-Desktop ("verknüpft mit xyz.exe")

Nein, das ist etwas doch ziemlich Anderes, denn in OO können nicht einfach so
Programme mit Symbolleisten-Icons verknüft werden.

(wieviel anders "ziemlich anders" ist überlasse ich Deiner Interpretation, meine
Formulierung meint sinngemäß das ein Otto-Motor und ein Elektromotor zwei Beides
Motoren sind, aber eben trotzdem ziemlich anders) 
 
> Das bedeutet viel Programmierarbeit oder individuelle 
> Umprogrammierung von
> sowieso vorhandenen Funktionen. 

Für die in OO verhandenen Funktionen nicht, da hinter denen generell uno-Strings
bzw. sog. Dispatch-befehle bestehen (Übersicht siehe
http://wiki.openoffice.org/wiki/Framework/Article/OpenOffice.org_3.x_Commands). 

Es reicht also in den meisten (wahrscheinlich allen) Fällen, den entsprechenden
uno-Befehl aus der Konfigurationsdatei auszulesen [1] und in ein Makro der Form
(manche dispatch-befehle benötigen auch Parameter, die jedoch, meines Wissens
nirgendwo zusammenhängend dokumentiert sind und somit jeweils recherchiert oder
auch durch Makroaufzeichnung zu ermitteln wären):

dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

dispatcher.executeDispatch(document, "<dispatch-Befehl>", "", 0, args1()) 

Zu integrieren wobei der Name des Makros dem entsprechen muss was später in der
Symbolleiste als sog. Tooltip erscheinen soll. Falls dieser Tooltip Leerzeichen
enthalten soll gehört der Makroname in eckige Klammern, z.B. Sub [mein etwas
langer Makroname]

[1]
Z.B. befindet sich die Default-Konfigurationsdatei der Standardsybolleiste von
Writer in (OOo3.0 Windows7):
C:\Program Files\OpenOffice.org
3\Basis\share\config\soffice.cfg\modules\swriter\toolbar\standardbar.xml



Gruß
Jörg


---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@openoffice.apache.org
For additional commands, e-mail: users-de-help@openoffice.apache.org


Mime
View raw message