Checkboxes and different fonts..

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

Checkboxes and different fonts..

talios@gmail.com
Any one know why a Checkbox gets a different font?

http://stumpy.talios.com/~amrk/dolphin-combo.png

All the other presenters use the default font, apart from these two
checkboxes...


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

Blair McGlashan-3
"Mark Derricutt" <[hidden email]> wrote in message
news:cjt6h9$[hidden email]...
> Any one know why a Checkbox gets a different font?
>
> http://stumpy.talios.com/~amrk/dolphin-combo.png
>
> All the other presenters use the default font, apart from these two
> checkboxes...

You appear to be using a non-standard theme which presumably ignores the
font setting. When a theme is enabled any or all of the font, foreground and
background colours may be ignored. In fact it is quite common that the
background colour is ignored, which makes sense given that themes often use
gradient filled backgrounds. I don't know whether this is a bug in this
particular theme, or whether its designer decided that the check boxes only
looked right with that font (I suspect the former).

Regards

Blair


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

talios@gmail.com
Blair McGlashan wrote:

>particular theme, or whether its designer decided that the check boxes only
>looked right with that font (I suspect the former).
>  
>
True.  Just disabled StyleXP and it's all good.  So much for pretending
this laptop ran OS/X ;-)


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

Dmitry Zamotkin-5
In reply to this post by talios@gmail.com
Mark Derricutt <[hidden email]> wrote in message news:<cjt6h9$[hidden email]>...
> Any one know why a Checkbox gets a different font?
>
> http://stumpy.talios.com/~amrk/dolphin-combo.png
>
> All the other presenters use the default font, apart from these two
> checkboxes...

Firstly try to display checkboxes without skin/theme software.

Dmitry Zamotkin


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

kuo-2
In reply to this post by talios@gmail.com
"Mark Derricutt" <[hidden email]> wrote
> True.  Just disabled StyleXP and it's all good.  So much for pretending
> this laptop ran OS/X ;-)

Just curious about how you change the defaultStyle for the createStyle of
the view of choicePresenter, to make it look like OS/X. What are the
parameters?


Best regards,

kuo


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

talios@gmail.com
kuo wrote:

>Just curious about how you change the defaultStyle for the createStyle of
>the view of choicePresenter, to make it look like OS/X. What are the
>parameters?
>  
>
I installed a program called StyleXP which exploits XP's theming and
provides extra themes, one of the defaults was a Panther style theme.


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

kuo-2
On Wed, 06 Oct 2004 22:28:33 +1300, Mark Derricutt <[hidden email]>
wrote:
>I installed a program called StyleXP which exploits XP's theming and
>provides extra themes, one of the defaults was a Panther style theme.

I see.
But I think it would be better if we could know the way to change the
theme similarly via Dolphin's programming environment.
Does anyone provide the clue to the known-how for the approach?

Best regards,

Tk Kuo


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

kuo-2
"kuo" <[hidden email]> wrote:
> But I think it would be better if we could know the way to change the
> theme similarly via Dolphin's programming environment.
> Does anyone provide the clue to the known-how for the approach?
>
   Since VW is built with the goal of platform-independent, its GUI windows
are using emulated controls and could have multitudes of look and feels by
its GUI class architecture, which make it easy to build brand-new customized
GUI widgets using its graphic canvas tools ( the above statement was solely
from my own personal inference from reading its documentations, which maybe
wrong,  I'm not familiar with VW at all), I might ask that if Dolphin could
follow that way to make the process of creating new widgets easy, so that
more new buttons views and controls could be added with the like of Mac,
Motif or unique custumized one,  not only the Windows default  ones .


Best regards,

Tk Kuo


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

Christopher J. Demers
"kuo" <[hidden email]> wrote in message
news:[hidden email]...

>   Since VW is built with the goal of platform-independent, its GUI windows
> are using emulated controls and could have multitudes of look and feels by
> its GUI class architecture, which make it easy to build brand-new
> customized
> GUI widgets using its graphic canvas tools ( the above statement was
> solely
> from my own personal inference from reading its documentations, which
> maybe
> wrong,  I'm not familiar with VW at all), I might ask that if Dolphin
> could
> follow that way to make the process of creating new widgets easy, so that
> more new buttons views and controls could be added with the like of Mac,
> Motif or unique custumized one,  not only the Windows default  ones .

I am not very familiar with VW either, I have not looked at it closely in
years.  I think your understanding of their GUI implementation is probably
correct.  VW uses emulated UI widgets, and Dolphin uses native widgets in
the base system.  There is, however nothing stopping anyone from
implementing their own emulated widgets in Dolphin.  I have done that when I
needed very specialized controls.  You can see the MoenTreeView for an
example of an emulated widget in the base system.

There can be a performance impact to using emulated widgets.  If you have
Smalltalk code completely responsible for drawing a complex emulated widget
you may find that it appears slower than the (presumably) highly optimized
machine code the OS uses for drawing native widgets.  This is not always
true, there may be cases where many native widgets can be virtualized by an
emulated widget and handled more efficiently.

I appreciate the fact that Dolphin uses native widgets.  One of the things I
did not like about VW (this may have changed in recent versions) is that it
did not look like a "normal" windows application when running on Windows.  I
also could see that the emulated widgets did not repaint as well as native
widgets, making the application feel slower.

Perhaps I am old fashioned, but for me an important point in a GUI is the
consistency of look and feel throughout all applications.  I don't like
using programs that feel they have to be cute and use a non-standard look
and feel.  I much prefer function over form in software.  I think it is best
to use native widgets whenever possible.  However if an emulated widget
truly adds value to the function of a program than I will use one.  Since
Windows XP allows the user to change the look of all applications then if a
users want to feel like they are using a Mac then they can do that, and it
will presumably be consistent across all applications (except those using
emulated widgets).  Given where MS is going with the Windows UI, truly
emulating controls may get more complex as MS adds more and more subtle
visual effects to them.

I like the fact that Dolphin uses native widgets.  The deployed applications
look like normal windows programs and have responsive UI's.  Additionally
when Windows XP came out it was very easy for Dolphin to adopt the XP look.
Now if OA decided to support multiple operating systems then it might be
worth considering non-native widgets.  However even then I prefer the way
IBM VAST works, I believe it uses adapters to native widgets on different
operating systems.

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

Chris Uppal-3
Christopher J. Demers wrote:

> VW uses emulated UI widgets, and Dolphin uses native widgets in
> the base system.  There is, however nothing stopping anyone from
> implementing their own emulated widgets in Dolphin.

It would be nice, though, if there were an "AbstractView" class above View in
the hierarchy.  It's difficult to get a feel for what a View's responsibility
is (what it's supposed to do) independently of the wiring up to Windows
components which forms a large part of the implementation of View.


> There can be a performance impact to using emulated widgets.
[...]
>  This is
> not always true, there may be cases where many native widgets can be
> virtualized by an emulated widget and handled more efficiently.

FWIW, I think Bill has used emulated buttons specifically because he can handle
large numbers of them more efficiently.


> I appreciate the fact that Dolphin uses native widgets.  One of the
> things I did not like about VW (this may have changed in recent versions)
> is that it did not look like a "normal" windows application when running
> on Windows.

Agreed.


    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

kuo-2
"Chris Uppal" <[hidden email]> wrote:
> FWIW, I think Bill has used emulated buttons specifically because he can
> handle large numbers of them more efficiently.
>
  Seaching in Bill's D5-goodies-2, I could not find any related packages
that use the emulated buttons, maybe they existed for internal use only and
are not yet published or they had been revealed in the news group
previously.
   I found the packages that are approximate and interesting to play with
maybe the "Pane Holders" package, which could be used to display MVP triads
dynamically, but I recognised that it could only support static components.
   Very nice to dig into this treasure, I'll experiment at my free time.


Best regards,

Tk Kuo


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

Adri?n Boado
In reply to this post by Christopher J. Demers
"Christopher J. Demers" <[hidden email]> wrote in message news:<[hidden email]>...

> "kuo" <[hidden email]> wrote in message
> news:[hidden email]...
> >   Since VW is built with the goal of platform-independent, its GUI windows
> > are using emulated controls and could have multitudes of look and feels by
> > its GUI class architecture, which make it easy to build brand-new
> > customized
> > GUI widgets using its graphic canvas tools ( the above statement was
> > solely
> > from my own personal inference from reading its documentations, which
> > maybe
> > wrong,  I'm not familiar with VW at all), I might ask that if Dolphin
> > could
> > follow that way to make the process of creating new widgets easy, so that
> > more new buttons views and controls could be added with the like of Mac,
> > Motif or unique custumized one,  not only the Windows default  ones .
>
> I am not very familiar with VW either, I have not looked at it closely in
> years.  I think your understanding of their GUI implementation is probably
> correct.  VW uses emulated UI widgets, and Dolphin uses native widgets in
> the base system.  There is, however nothing stopping anyone from
> implementing their own emulated widgets in Dolphin.  I have done that when I
> needed very specialized controls.  You can see the MoenTreeView for an
> example of an emulated widget in the base system.
>
> There can be a performance impact to using emulated widgets.  If you have
> Smalltalk code completely responsible for drawing a complex emulated widget
> you may find that it appears slower than the (presumably) highly optimized
> machine code the OS uses for drawing native widgets.  This is not always
> true, there may be cases where many native widgets can be virtualized by an
> emulated widget and handled more efficiently.
>
> I appreciate the fact that Dolphin uses native widgets.  One of the things I
> did not like about VW (this may have changed in recent versions) is that it
> did not look like a "normal" windows application when running on Windows.  I
> also could see that the emulated widgets did not repaint as well as native
> widgets, making the application feel slower.
>
> Perhaps I am old fashioned, but for me an important point in a GUI is the
> consistency of look and feel throughout all applications.  I don't like
> using programs that feel they have to be cute and use a non-standard look
> and feel.  I much prefer function over form in software.  I think it is best
> to use native widgets whenever possible.  However if an emulated widget
> truly adds value to the function of a program than I will use one.  Since
> Windows XP allows the user to change the look of all applications then if a
> users want to feel like they are using a Mac then they can do that, and it
> will presumably be consistent across all applications (except those using
> emulated widgets).  Given where MS is going with the Windows UI, truly
> emulating controls may get more complex as MS adds more and more subtle
> visual effects to them.
>
> I like the fact that Dolphin uses native widgets.  The deployed applications
> look like normal windows programs and have responsive UI's.  Additionally
> when Windows XP came out it was very easy for Dolphin to adopt the XP look.
> Now if OA decided to support multiple operating systems then it might be
> worth considering non-native widgets.  However even then I prefer the way
> IBM VAST works, I believe it uses adapters to native widgets on different
> operating systems.

You can also interact with any other GUI library instead of win32. You
can interact with GTK+ or QT, or any other. You need just to create a
new QView or GTKView replacement hierarchy. In that way you don't need
to implement basic GUI operations. Most of these libraries includes
their own theme system and also they are multi platform and highly
portable (just thinking on a dolphin port in the future).

>
> Chris

Regards


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

Christopher J. Demers
"Adri?n Boado" <[hidden email]> wrote in message
news:[hidden email]...

> "Christopher J. Demers" <[hidden email]> wrote in
> message news:<[hidden email]>...
>> Now if OA decided to support multiple operating systems then it might be
>> worth considering non-native widgets.  However even then I prefer the way
>> IBM VAST works, I believe it uses adapters to native widgets on different
>> operating systems.
>
> You can also interact with any other GUI library instead of win32. You
> can interact with GTK+ or QT, or any other. You need just to create a
> new QView or GTKView replacement hierarchy. In that way you don't need
> to implement basic GUI operations. Most of these libraries includes
> their own theme system and also they are multi platform and highly
> portable (just thinking on a dolphin port in the future).

That is actually a rather neat idea, if OA were to support other OS's.  I
use Gaim (an open source instant messaging program), and it uses GTK+.  I
seems to work pretty well.  The UI emulation is not perfect, sometimes the
mouse is black, and sometimes the text caret disappears.  However those
issues are probably fixable, and the performance seems reasonable.

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

kuo-2
In reply to this post by Adri?n Boado
"Adri?n Boado" <[hidden email]> wrote:
> You can also interact with any other GUI library instead of win32. You
> can interact with GTK+ or QT, or any other. You need just to create a
> new QView or GTKView replacement hierarchy. In that way you don't need
> to implement basic GUI operations. Most of these libraries includes
> their own theme system and also they are multi platform and highly
> portable (just thinking on a dolphin port in the future).

Yes, that's right, this is the way that Python and Ruby implement their GUI
workhouse as I knew.

These GUI libraries are present for a long time and used  by those scripting
languages though mainly in Unix platform, there are also Windows edition
available.

They might be quite mature and trusty of wrapping into Dolphin's MVP
frameworks to provide users multitude choices if they want more ways of GUI
functionalities and styles besides using the "expensive" ActiveX controls or
unconvenient Java Swing ( there are CU JNI already done by Chris Uppal).

Besides, they were mostly free. OA alreday told they are planning the wrap
Scintilla editor ( w32fScintilla.dll) in place of the unstable RichEdit
control in the future D6, I think this is the same approach, :-), why not
using more?


Best regards,

Tk Kuo


Reply | Threaded
Open this post in threaded view
|

Re: Checkboxes and different fonts..

Chris Uppal-3
In reply to this post by Adri?n Boado
Adri?n Boado wrote:

> You can also interact with any other GUI library instead of win32. You
> can interact with GTK+ or QT, or any other. You need just to create a
> new QView or GTKView replacement hierarchy.

Have you tried this and got anywhere ?

I've looked quickly at a couple of these cross-platform UI libraries with a
view (cough) to wrapping them up as Dolphin Views, but haven't (yet) found
anything that looks suitable.

I really haven't tried very hard to find anything, so I could be missing
something easy (or difficult;-), or have just failed to think sufficiently hard
to see a way of getting around the problems.

Two problems that seem to be quite common.

One is that damned C++ developers like to assume that every one is programming
in C++.  So they put a lot of the functionality into C++ classes in ways that
can't be accessed from any other language.  IIRC the Gnome stuff explicitly
does /not/ suffer from this problem.

The other is that the GUI frameworks tend to be /frameworks/ -- they expect
your code to set up some configuration, maybe even create the odd window, and
then pass control to a main loop that is part of the library.  The library then
calls your code as callbacks, and that is the only way your code is ever run
(unless you use other OS-level threads that the library doesn't know about).
As far as I know there is no, or no easy and efficient, way of making Dolphin
(which runs its own main loop) interact with libraries that are structured this
way.

Still looking, though.  All it needs is for there to be a layer of the library
that works by sending "messages" to the application code's main loop, rather
than the other way around.

Hmm... Perhaps one could use some C++ helper code that handled the callbacks by
marshalling the data across to a different OS-thread where Dolphin was running.
Or maybe it'd be sufficient to start the library's main loop in a separate
OS-thread, and let Dolphin's own cross-thread marshalliing handle it...

    -- chris