[Lazarus] Fwd: Re: Alternative component palette layout

Giuliano Colla giuliano.colla at fastwebnet.it
Sun Dec 28 17:03:02 CET 2014


Sorry, I see that my answer went only to Zeljko and not to the list.

-------- Messaggio Inoltrato --------
Oggetto: 	Re: [Lazarus] Alternative component palette layout
Data: 	Sun, 28 Dec 2014 12:51:30 +0100
Mittente: 	Giuliano Colla <giuliano.colla at fastwebnet.it>
A: 	zeljko <zeljko at holobit.net>



Il 28/12/2014 12:08, zeljko ha scritto:
>
> I'm against such workarounds since it can hide bug. Is it enough to
> comment code LCLQt to completely disable LCLQt ifdef ?

Yes, there's just one ifdef which surrounds a few lines, in
($lazarusdir)/ide/componentpalette.pas around line 1263. What does the
trick as far as the move tab behavior is concerned is
Pg.PageComponent.free (and nil), the rest of the code in RemoveSheet is
required only to avoid memory leak, leaving a around a dangling button.
It appears that a newly created tab is always handled properly, while an
existing one which has been already moved, sometimes is not. The
"sometimes" is what makes it hard to spot.

> I'll try to debug and see what exactly happens, since it's impossible
> to reproduce it with simple example project.
>

It made me crazy, because, adding or enabling debug info in qt widgets,
everything appears to be OK, i.e. up to qtpagecontrol.inc,
TQtWSCustomTabControl.MovePage, and qtwidgets.pas TQtTabWidget.insertTab
all the tabs appear to be inserted in the right place, but in some cases
one of them is not. It would appear a real Qt code bug.

Giuliano

-- 
Giuliano Colla

Project planning question: when it's 90% done, are we halfway or not yet?



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20141228/d866ea84/attachment-0002.html>


More information about the Lazarus mailing list