summaryrefslogtreecommitdiff
path: root/oovbaapi
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2018-06-07 12:02:23 +0300
committerTor Lillqvist <tml@collabora.com>2018-06-07 13:05:02 +0200
commitd9fc8b494be53bacffe45564e98da61ae5b28bd3 (patch)
tree107631f3cd95ffca413a8bba75fdd6739922f586 /oovbaapi
parent8e156f009e29a90883c2536943f338be163dad45 (diff)
Add ooo.vba.word.Application.StatusBar property for debug output from client
In many cases you don't want to use a bunch of MessageBox() calls in a VB6 client you are developing against LibreOffice, as that disrupts the working of the client. The developer might not mind, but other people trying it will be bothered by having to click through a stream of message boxes. Also, it is hard to correctly interpret the chronological sequence of LibreOffice's own debug output lines and such MessageBox() windows. WScript.Echo calls from a VBScript client are a bit better as they don't require any click-through, but still there is the problem of correlating with LibreOffice's own debug output. Setting this StatusBar property causes LibreOffice to output a SAL_INFO line with the tag "extensions.olebridge". Thus they are automatically merged with LibreOffice's own output and displayed in correct order. Sure, the intent of some existing 3rd-party client that sets this property would be to actually display a message in the status bar (whatever that corresponds to in LibreOffice), but until some such need is actually encountered, it's enough to just use it for this debug output functionality. After all, this property was not implemented at all earlier, so adding it now with somewhat special semantics is not a regression. (Note that on the Calc side, ooo.vba.excel.XApplication did have a StatusBar property already, and setting that does seem to attempt to display the text in some way. Possibly it should be enhanced to also do the SAL_INFO thing, for consistency? And possibly we should also have the message being displayed in the same fashion on the Writer side?) Change-Id: I5bf1e776d6401adfc43a558a2d919bd675298e1a Reviewed-on: https://gerrit.libreoffice.org/55413 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
Diffstat (limited to 'oovbaapi')
-rw-r--r--oovbaapi/ooo/vba/word/XApplication.idl10
1 files changed, 10 insertions, 0 deletions
diff --git a/oovbaapi/ooo/vba/word/XApplication.idl b/oovbaapi/ooo/vba/word/XApplication.idl
index 62319f63a932..d061586b8de1 100644
--- a/oovbaapi/ooo/vba/word/XApplication.idl
+++ b/oovbaapi/ooo/vba/word/XApplication.idl
@@ -40,6 +40,16 @@ interface XApplication : XConnectable
[attribute] long Height;
[attribute] long Left;
[attribute] long Top;
+ // Setting this displays the string in a SAL_INFO message with tag
+ // extensions.olebridge. Provides a way to get a message from an
+ // Automation client into LibreOffice's debug output. Less
+ // disruptive than a MessageBox() in a VB6 client, for instance.
+ // And makes it possible to get merged debug output from both the client
+ // and LibreOffice in proper synchronized order.
+ //
+ // Actually write-only but there is no way to say that in UNO IDL.
+ // The getter just returns an empty string.
+ [attribute] string StatusBar;
any CommandBars( [in] any Index );
any Documents( [in] any Index );