[Lazarus] Suggestion again: remove GTK1 from IDE and LCL

Felipe Monteiro de Carvalho felipemonteiro.carvalho at gmail.com
Mon Jun 7 14:48:28 CEST 2010


On Mon, Jun 7, 2010 at 9:54 AM, Michael Schnell <mschnell at lumino.de> wrote:
> I can't imagine how deliberately maintaining duplicated code sequencers
> would reduce the overall maintenance effort rather than increasing it.
> This contradicts any software design rules "!out of the book". But
> happily it's not me do decide ;).

The point is that the code only looks duplicated, but really it is
not. The gtk_create_button or whatever which is being called for gtk1
is not the same gtk_create_button (invented routine) which is being
called for gtk2.

And they *do not* behave exactly the same. Or worse then that, then
most often behave, but 10% of the time don't and then you get very
hard to fix bugs. Fixing a gtk1 bug when may break gtk2, and
vice-versa.

The same APIs under Windows desktop and Windows CE often has a
significantly different result for each of those 2 types of Windows.
So the code which was tested as perfectly working under Win32 doesn't
produce the same results under WinCE because the API being used isn't
the same, so it isn't the same code.

If you could remove all calls to the underlying widgetset library,
then yes, totally, you are 100% right that those functions should
probably be in a common unit, but trying to unify code which calls
functions which just happen to have the same names, but actually come
from different libraries is a recipe for a maintenance nightmare.
-- 
Felipe Monteiro de Carvalho




More information about the Lazarus mailing list