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

Reply via email to