Hi,
Am Sonntag, den 05.03.2006, 11:56 +0200 schrieb A.J. Venter:
> > It's much simpler to implement one custom drawing function for a control,
> > then to map to various themed widgetsets. The LCL took the difficult and
> > more complex approach. Other people can contribute custom drawn controls. I
> > wonder, why there is not already a package providing some custom drawn
> > controls as there are so many for Delphi.
> Well most of my visual components are actually custom drawn since they are
> designed to implement stuff that GTK doesn't normally do. Where themes fall
> short is in going one level up as it were. A quick google will find you at
> least twenty delphi components for doing more advanced pop-up hints with for
> example, depending on what you are looking for (everything from bubble-shaped
> to extensive html with image support is available) - THAT is where custom
> drawing becomes usefull, for adding that which gives your program an edge.
> Sure you don't NEED bubble-shaped pop-ups but they are more pleasing to users
> than square lines, and in fact they are becoming the default in several
> development environments (on windows anyway).
Well, add them to gtk then - it's not closed or anything. And shapes are
not a problem, sizes and colors are - so as long as you read the
original tooltip color style property in your Paint method - sure, make
them look better :)
> As far as I can tell, there is no way to implement this with a theme
you are right - this is not within the scope of gtk theming at least -
that is to say, it doesn't do winamp 3 style
make-widget-look-completely-foreign ;)
> - you
> need some form of custom drawing to do it, and I don't think it can be said
> that this in any way detracts from usability.
> Several usability studies have come to the same conclusion, the universal
> look
> and feel is a myth - icons and colours only have meaning in the culture from
> which they originate - in other cultures they could mean completely different
> things or more commonly nothing at all - the core thing a programmer MUST do
> for usability is be consistent -always use the SAME file open icon, so users
> can recognise it even if it DOESN'T mean anything to them.
> The second most important thing is to ensure that your interface makes the
> purpose of every element obvious right from the start, the more obvious you
> can make things the easier it is to "get" the program.
> The third rule is - make it look pretty.
>
> Rule 1 says - uses themeing almost all the time.
> Rules 2 and 3 says - override the theme if you have to.
>
> Mind you lazarus does not at present provide a clean way of SETTING theme
> style properties, and I think it will be very hard to add since the nature of
> this will be platform independent
I don't know - there aren`t that many obvious ways to choose from ...
Maybe one person per platform knowing how it is done there can comment
here...
> (I highly doubt that the same themeing
> structure would work on windows that works on GTK and even between GTK1 and
> GTK2 there are huge differences in the theme files).
> What would be good is if we can create a set of generic theme-style
> specifiers
> for the LCL (much like we translated widgets) which are added as ADDITIONAL
> properties, not replacing the delphi properties but being added as extras.
> This way you can set at least those elements which are common to all
> platforms in the IDE and it will follow a theme file on how to actually
> implement them, but when there is a good reason, you use the delphi style
> properties to override the them.
> A side effect is that if it can also translate to CSS properties it would be
> a
> very nice tool one day when CGI-from-the-IDE starts to become visual :)
> >
> > > When I say : live its not so simple, I think: nobody know all aspect and
> > > environment of every program. One tools never be enough good to use in
> > > any case.
> >
> > Sure, but we try. :)
> Lol, that is why there isn't one programming language to rule them all :) but
> OP comes pretty close.
>
hehe
cheers,
Danny
_________________________________________________________________
To unsubscribe: mail [EMAIL PROTECTED] with
"unsubscribe" as the Subject
archives at http://www.lazarus.freepascal.org/mailarchives