Where is the documentation for .uno commands?

I’ve googled high and low, but do you think I can find anything useful?

Sometimes when I record a macro the shell gets saved, but the functionality doesn’t get built in:

sub updatelinks
rem ----------------------------------------------------------------------
rem define variables
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")

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:EditLinks", "", 0, Array())

end sub

For sure this is a bug, but I’m more interested in finishing the macro than learning how to file a bug report.

1 Like

Note that there are some limitations to the macro recorder

I don’t think I’m talking about one of those exceptions. But I could be wrong.

if you update a single reference you get the code above. No arguments are passed to .uno:EditLinks

But I’d love to know where to find out what those arguments are so that I can set them myself!

I don’t know what you mean with “the functionality doesn’t get built in”, but to answer the question in the title that’s https://wiki.documentfoundation.org/Development/DispatchCommands.

That page lists the commands, but it is not the documentation for them. I would like to use those calls, so I need to know what their arguments are.

.uno:EditLinks is a bad example though, because that slot does not receive any parameters so there isn’t anything that could be recorded and isn’t missing from the code.
Have another example, that should have but does not?

Finding resources for UNO calls is not straightforward. Finding the services, etc., isn’t bad once you realize that everything is in an interface and each class is composed of (often) many interfaces. Use the MRI Tool to look at stuff, see what interface (X…) it comes from, etc. However, finding parameters, like the ones you push into properties before calling a dispatch, is not so easy. If someone has the golden book on that I’m hoping they answer you soon!

That said, here are my LibreOffice bookmarks, each pretty-well named. Generally LO or OO will be the same thing at this level. There might have been a better way, but I just dumped my LO/OO bookmarks into a spreadsheet. Copy and paste that data into a text editor, save as a .html, and import that into Firefox (or Chrome, etc.).
LibreOfficeBookmarks.ods (36.7 KB)

Here’s the MRI Tool: Edit by @karolus : better use mri1.3.oxt

2 Likes

I have seen this before, when recording a marco that changes the language for a cell. I don’t have time to dig up the example right now, but it may be in one of my earlier questions. I’ll have to come back to this, sorry.

When using the dialog (edit > links to external files…) to refresh links, only selected links are refreshed. This, with earlier experience, made me think that some parameters were missing. At that point I stopped testing and came here.

Sorry about the confusion

1 Like

Thanks for the useful resources @joshua4

No - that Version is old, use Version 1.3 directly from github

2 Likes

The attached file on the DispCommands sheet contains an up-to-date list of all method slots (uno commands) and its parameters. The list is formed based on the developer’s documentation by calling the Main macro.
DispCommands2.ods (60.6 KB)

3 Likes

Just a small mention - there is about 200 uno:commands for Calc 0: The Table of Contents of the Series, 'Information Tables'|T.B.P.

2 Likes

That is excellent information. Thanks for taking the trouble to find the link!