[GSoC] Improved Color Selection - help needed

Krisztian Pinter pin.terminator at gmail.com
Fri Jul 18 05:37:15 PDT 2014


Hi All!

I'm working on converting the palette popup window (*SvxColorWindow_Impl*,
looks like this in my branch right now: http://i.imgur.com/4XAbRaH.png) to
use the widget layout, and I kind of got it working. It places the widgets
based on a .ui file, but a *ComboBox* makes LO crash at the slightest
provocation.

To make *SvxColorWindow_Impl* use the widget layout, I did some research,
and I drew this inheritance diagram: http://i.imgur.com/KK2GegK.jpg
I made *FloatingWindow* also inherit from *VclBuilderContainer*, like
*Dialog*, and added new ctors to *FloatingWindow* and *SfxPopupWindow*,
that take two extra string parameters for the .ui file location and the id
of the root widget.
I hardcoded the .ui path for *SvxColorWindow_Impl* in its ctor, since it's
supposed to be a leaf in the inheritance tree.
I also copypasted *GetOptimalSize*, *SetPosSizePixel*, *SetSizePixel* and
*SetPosPixel* from *TabPage* to *FloatingWindow*.
This made the popup window show up, if I disabled parts of the code that
called methods on the *ComboBox*.

The *ComboBox* is initialized with *get*, as all other widgets.
I found that *mpFloatWin* in *ComboBox* gets set to *0xcccccccccccccccc*,
so I think it's not initialized properly. (I'm giving *get* the correct id
from the .ui, so that's not it.)
If I call either *AdaptDropDownLineCountToMaximu**m* or *InsertEntry* in
the ctor of *SvxColorWindow_Impl*, LO crashes immediately when the popup
window is opened.
Are there any well known/typical reasons why this would happen?

If anyone has any insights, please share them! Thank you!

All the best,
Krisztian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20140718/ed03040c/attachment.html>


More information about the LibreOffice mailing list