[Libreoffice] need mentoring on framework module (enabling toolpanels)

Laurent Godard oooconv at free.fr
Fri Oct 21 09:55:07 PDT 2011


Hi Michael

Thanks for your response

I have 3 degrees of responses

> 
> 	So - you can get a tool panel presented and working for you ? [ do you
> get to the green screenshot state ? ].
>

1-

well i went a bit more deeper than the green panel ;)
using the java code at
core/testautomation/extensions/optional/input/extension_sources/TaskPaneComponent

i've been able to load a dialog.xdl file and bind macros (then any scipt
code) to the events of the controls (on click for exampke). It is
perfect for my use !
one trick though, retrieving the dialog object itself, i manage only
using the on-focus event (and store it in a global variable). not
beautifull but hey, it works.

That what was i was looking for dealing with the LayoutManager,
retreiving the panel object to manipulate its components. no more urgent
need now (but the lack in core_code remains)

2-

The next step i almost finished (but currently not fully working) is
rewriting the TaskPaneComponent java code to Python
The problem i face here is that all the code is executed, but nothings
shows up. probably a stupid mistake somewhere

Once all is ok, i'll probbaly take some time to write things on the wiki
and provide a sample source code for step 1 and 2

I haven't done pyUNo for years, so it was a bit "difficult" (but really
funny !!)

I reactivated a pyUNo tool i wrote in 2004 and with a small polish it
worked like a charm. It is a very usefull tool (at least for me) for
doing introspection at runtime on pyUNo objects.
http://markmail.org/message/kt2va3mc3ggwk4e2

the download link is dead but i'll publish pyXray and offer it to
Libreoffice if it can help. At least could be a learning tool ofr pyUno
beginers

3- LibreOffice source code

once a toolpanel is created, we can not at the moment control it as we
control statusbar, toolbars, menubars (especially regarding visibility)

this is done using the XLayoutManager interface and as stated in the
announce, it is not implemented yet.

so i thought that if it was an easy hack, i could perharps do it (but my
priority remains calc very large files performances for Libo 3.5 - I'll
start working on this in november)

regarding my patch, it will be waste of time. it was more or less
"random" modifications, only copying few lines and changing names.

i'll try to first finish the point 2. and then see if this
XLayoutManager problem is really needed for scripter point of view.

i'll come back to you. (but not last week, as i'll be in hollidays with
the whole family, so hacking on computers not welcommed ;) )

 also
> what do you want to put in your panel ? [ I for one would love to have
> some share-pointy stuff in there, workflows and so on for relevant
> documents ].

my goal is to put any XControl that one can use un Basic dialogs
(buttons, labels, treeviews, pictures, combox box aso ...)
i'm pretty confident it will work (at least it works with a java factory
of the toolpanel)

This toolpanel stuff is quite exciting as it offers a lot of
possibilities for cool extensions GUI (and what is really cool, is that
you can write your events code in the language you want ;) )

I promise officially here to publish a working sample extension and
write some guidelines

Thanks a lot Michael for your response !!

Laurent


More information about the LibreOffice mailing list