For my applications I'm forced to use some ifdefs, in order to have the same codebase for a number of similar applications.

With Lazarus this need has further increased, in order to achieve consistent behavior with different widgesets: gtk1 TMemo doesn't scroll automatically when text entered exceeds the visible portion, while gtk2 and qt do, gtk1 doesn't remove the scrollbars when cleared, Qt disables the child form when then main form is disabled, while gtk1/2 don't, etc.etc.

With ifdefs I meet the problem which exists since when ifdefs have been invented: a unit compiled with a conditional set in a given way, isn't recompiled if the global setting is changed, because the compiled unit appear to be in sync with the source. If one forgets to rebuld everything, or if one forgets what was the setting of the last build, one may obtain a program which compile properly, but shows unwanted inconsistencies, sometimes hard to detect.

My dream is to have am environment which can detect an inconsistency in conditionals, and rebuild whatever is needed automagically. As Lazarus/fpc is the best development environment in the world :-) (even if it doesn't support dynamic packages ;-) ) I'd like to see it having also this feature, which nobody else, to my knowledge, provides.

Is there a way to achieve that? Are there already some hooks in .ppu or in .o which can be exploited for that purpose? I'd gladly help to develop what's required, but advice from compiler/IDE guru's could lead me to the right path (or make me forget about it :-( ).

Giuliano


--
Giuliano Colla

Whenever people agree with me, I always feel I must be wrong (O. Wilde)

_________________________________________________________________
    To unsubscribe: mail [EMAIL PROTECTED] with
               "unsubscribe" as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to