Date: prev next · Thread: first prev next last
2014 Archives by date, by thread · List index


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

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.