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.co...@fastwebnet.it> A: zeljko <zel...@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?
-- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus