[Gambas-devel] Gambas module for QT embedded and stack overflow error deleting objects

Benoit Minisini gambas at ...1...
Wed Nov 15 20:33:17 CET 2006


On Thursday 09 November 2006 14:01, Silvan Calarco wrote:
> Alle 22:39, mercoledì 8 novembre 2006, Benoit Minisini ha scritto:
> > Some things I don't understand:
> >
> > - Aren't QT/Embedded libraries and includes different from the QT ones?
>
> There are some big internal differences (for instance the code for handling
> fonts), but most of the interfaces to the applications (API) are the same
> because of the portability feature of Qt's.
>
> > - Shouldn't you remove the TrayIcon, Embedder and all other X11-specific
> > classes
>
> mmmm, yes. The reason they were not removed yet is that these
> functionalities for some reason don't need linking to any X library, but
> they should be removed or handled transparently on Qte. The use of
> CTrayIcon could be left (well slightly modified) and documented as: "this
> class does nothing on Qt Embedded, but exists to allow simpler code
> portability between X11 and Framebuffer".
>
> > - Don't you have windows on QT/Embedded? Don't you have equivalents of
> > X11 properties, like above others windows, below others windows...?
>
> When you work on Qt/X11, Qt is the graphic toolkit and X is the graphical
> server. When you work on Qt/Embedded the libraries also perform as a window
> server (the so called qws: the Framebuffer central server). I've seen that
> the qwsproperty_qws.h include has some functions to get and set windows
> property so we might use these to replace X11 properties.
> Actually I've been stuck on the stack overflow error (I'm going to try your
> patch, thanks!), and now I'll be back testing the gb.qte module. I think
> that in this development stage we might apply these patches issuing a
> warning when an unhandled function is called by the gambas application like
> this:
>
> #ifndef X_DISPLAY_MISSING
>   X11_window_change_property(w->winId(), w->isVisible(), property, set);
> #else
>   qDebug("CWINDOW_change_property called but not handled");
> #endif
>
> so we have a remainder of what we have to fix if an X11 app behaviour isn't
> correct when ported to Framebuffer. Testing the gb.qte module is easy using
> qvfb and gambas ide, so it should be easy to test many applications
> compatibility.
>
> > Regards,
>
> Cheers,
> Silvan

Trunk has now gb.qte and gb.qte.ext components. They compile on my system, but 
I used the qt library, and not the qte one, so my test is not very relevant.

I removed Embedder and TrayIcon classes, renamed the X11 test 
macro "NO_X_WINDOW", and added many #ifdef everywhere it is needed.

Can you test it and tell me the result?

If you want a svn access to insert modifications yourself, just tell me and 
give me your sourceforge account.

Regards,

-- 
Benoit Minisini





More information about the Devel mailing list