Theming in MWF

View: New views
20 Messages — Rating Filter:   Alert me  
< Prev | 1 - 2 | Next >

Re: Theming in MWF

by Jordi Mas :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

El dv 29 de 07 del 2005 a les 12:31 +0200, en/na Pedro Martínez Juliá va
escriure:

Hola Pedro,

> I've seen the implementation of themes in MWF and I'm not agree at all
> of having theming in this stage of the development. I know that MS.NET
> has themes but I think that themes are implemented in Windows because I
> didn't see anything related in MSDN documentation.

That's right, MS .NET System.Windows.Forms uses Windows Theme API.

> I saw that Theme.cs has a lot of painting logic and I think it shouldn't
> be there. For example, DataGridPaintRows iterates the rows of a datagrid
> to paint each one. I think that it should be in DataGrid and not in the
> theme class.

You right, ThemeWin32Classic.cs has sometime logic that should be
somewhere else, in this case clearly in the internal
DataGridDrawingLogic class. I'll review those methods.

> The problems I see in this issue is that I can implement a Theme that
> changes the view of any control and in the other hand, this theming
> engine doesn't allow a user to easily download and install a theme.
> At the end, we have only Win32Classic theme maintained and it adds one
> level to the indirection at the time to paint any control.
> For all of this I think we can redesign now the theming. It's only an
> idea.

The original idea behind the Theme API was to isolate in a single place
all the decorations, colours, and things that were suitable to be
themed. For my taste, ThemeWin32Classic.cs has become too heavy. We
should review that.

Thanks for your comments Pedro,

Jordi,

--
Jordi Mas i Hernàndez - Mono development team - http://www.mono-project.com
Homepage and LiveJournal at http://www.softcatala.org/~jmas


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Theming in MWF

by Pedro Martínez Juliá :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Hi,

I've seen the implementation of themes in MWF and I'm not agree at all
of having theming in this stage of the development. I know that MS.NET
has themes but I think that themes are implemented in Windows because I
didn't see anything related in MSDN documentation.

I saw that Theme.cs has a lot of painting logic and I think it shouldn't
be there. For example, DataGridPaintRows iterates the rows of a datagrid
to paint each one. I think that it should be in DataGrid and not in the
theme class.

The problems I see in this issue is that I can implement a Theme that
changes the view of any control and in the other hand, this theming
engine doesn't allow a user to easily download and install a theme.

At the end, we have only Win32Classic theme maintained and it adds one
level to the indirection at the time to paint any control.

For all of this I think we can redesign now the theming. It's only an
idea.

Regards,

    Pedro

--
Pedro Martínez Juliá
\   pedromj@...
)|      Jabber: petrux@...
/           MSN Messenger: yoros@...
Socio HispaLinux #311
Página web: http://pedromj.dyndns.org
Usuario Linux #275438 - http://counter.li.org

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Kornél Pál :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

MS.NET has no theming support. Theming means that it would be able to draw
contorls and/or windows using custom functions. There is no such support in
MS.NET.

It has an Application.EnableVisualStyles method that enables using Visual
Styles. Visual Styles are provided by Windows not by MS.NET.

All that Application.EnableVisualStyles does is that it loads comctl32.dll
version 6.0.0.0 using a manifest file through Windows side-by-side assembly
support and the initializes comctl32.dll.

By default controls are drawn by MS.NET so you have to use FlatStyle.System
to let Windows draw the controls using visual styles.

For more information see:
EnableVisualStyles:
http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemwindowsformsapplicationclassenablevisualstylestopic.asp

Visual Styles:
http://msdn.microsoft.com/library/en-us/dnwxp/html/xptheming.asp

Side-by-side Assemblies:
http://msdn.microsoft.com/library/en-us/sbscs/setup/about_isolated_applications_and_side_by_side_assemblies.asp

Mono draws contorls itself (just like MS.NET) that provides identical
appearance across all platforms.

Enabling custom themes is a good idea but it cannot be done in MWF because
it has to be compatible with MS.NET implementations.

Kornél

----- Original Message -----
From: "Pedro Martínez Juliá" <pedromj@...>
To: "Mono Winforms" <mono-winforms-list@...>
Sent: Friday, July 29, 2005 12:31 PM
Subject: [Mono-winforms-list] Theming in MWF


>
> Hi,
>
> I've seen the implementation of themes in MWF and I'm not agree at all
> of having theming in this stage of the development. I know that MS.NET
> has themes but I think that themes are implemented in Windows because I
> didn't see anything related in MSDN documentation.
>
> I saw that Theme.cs has a lot of painting logic and I think it shouldn't
> be there. For example, DataGridPaintRows iterates the rows of a datagrid
> to paint each one. I think that it should be in DataGrid and not in the
> theme class.
>
> The problems I see in this issue is that I can implement a Theme that
> changes the view of any control and in the other hand, this theming
> engine doesn't allow a user to easily download and install a theme.
>
> At the end, we have only Win32Classic theme maintained and it adds one
> level to the indirection at the time to paint any control.
>
> For all of this I think we can redesign now the theming. It's only an
> idea.
>
> Regards,
>
>    Pedro
>
> --
> Pedro Martínez Juliá
> \   pedromj@...
> )|      Jabber: petrux@...
> /           MSN Messenger: yoros@...
> Socio HispaLinux #311
> Página web: http://pedromj.dyndns.org
> Usuario Linux #275438 - http://counter.li.org
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown Re: Theming in MWF

by Vladimir Lushnikov-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

Surely native theming is an option - Java has its SWING toolkit that
does native theming and more, and who would want a Win98 look of your
app on Mac OS X. If someone suggested why even use MWF - then the
answer would be because it's easy, and it uses one of the most
powerful IDE's to date - Visual Studio 2005. If we had "proper"
theming support then I would imagine more people would use MWF on
Linux (for example).

Myself, I took a look at the look of MWF on Linux, and was horrified
at how it contrasts with other applications. Personally, I would
prefer to have native look in MWF, but if that's not possible, then I
will have to (for my project) use MWF for windows, GTK for Linux and
maybe the native Cocoa calls in OS X.

I'm not suggesting that the current implementation is not feature-rich
or indeed, good enough to use, but unless wxWidgets (the native C++
library) becomes an integral part of Mono, I think it's up to the MWF
to make native widgets, or indeed, themable widgets. And no,
personally I will never use wxWidgets because it's a dependency - and
the aim of my app is to have as little dependencies as possible.

Regards,

On 29/07/05, Kornél Pál <kornelpal@...> wrote:

> Hi,
>
> MS.NET has no theming support. Theming means that it would be able to draw
> contorls and/or windows using custom functions. There is no such support in
> MS.NET.
>
> It has an Application.EnableVisualStyles method that enables using Visual
> Styles. Visual Styles are provided by Windows not by MS.NET.
>
> All that Application.EnableVisualStyles does is that it loads comctl32.dll
> version 6.0.0.0 using a manifest file through Windows side-by-side assembly
> support and the initializes comctl32.dll.
>
> By default controls are drawn by MS.NET so you have to use FlatStyle.System
> to let Windows draw the controls using visual styles.
>
> For more information see:
> EnableVisualStyles:
> http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemwindowsformsapplicationclassenablevisualstylestopic.asp
>
> Visual Styles:
> http://msdn.microsoft.com/library/en-us/dnwxp/html/xptheming.asp
>
> Side-by-side Assemblies:
> http://msdn.microsoft.com/library/en-us/sbscs/setup/about_isolated_applications_and_side_by_side_assemblies.asp
>
> Mono draws contorls itself (just like MS.NET) that provides identical
> appearance across all platforms.
>
> Enabling custom themes is a good idea but it cannot be done in MWF because
> it has to be compatible with MS.NET implementations.
>
> Kornél
>
> ----- Original Message -----
> From: "Pedro Martínez Juliá" <pedromj@...>
> To: "Mono Winforms" <mono-winforms-list@...>
> Sent: Friday, July 29, 2005 12:31 PM
> Subject: [Mono-winforms-list] Theming in MWF
>
>
> >
> > Hi,
> >
> > I've seen the implementation of themes in MWF and I'm not agree at all
> > of having theming in this stage of the development. I know that MS.NET
> > has themes but I think that themes are implemented in Windows because I
> > didn't see anything related in MSDN documentation.
> >
> > I saw that Theme.cs has a lot of painting logic and I think it shouldn't
> > be there. For example, DataGridPaintRows iterates the rows of a datagrid
> > to paint each one. I think that it should be in DataGrid and not in the
> > theme class.
> >
> > The problems I see in this issue is that I can implement a Theme that
> > changes the view of any control and in the other hand, this theming
> > engine doesn't allow a user to easily download and install a theme.
> >
> > At the end, we have only Win32Classic theme maintained and it adds one
> > level to the indirection at the time to paint any control.
> >
> > For all of this I think we can redesign now the theming. It's only an
> > idea.
> >
> > Regards,
> >
> >    Pedro
> >
> > --
> > Pedro Martínez Juliá
> > \   pedromj@...
> > )|      Jabber: petrux@...
> > /           MSN Messenger: yoros@...
> > Socio HispaLinux #311
> > Página web: http://pedromj.dyndns.org
> > Usuario Linux #275438 - http://counter.li.org
> >
> > _______________________________________________
> > Mono-winforms-list maillist  -  Mono-winforms-list@...
> > http://lists.ximian.com/mailman/listinfo/mono-winforms-list
> >
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>


--
Vladimir Lushnikov
C.E.O and Software Developer
EverythingX Limited (http://www.everythingx.net)
_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Jordi Mas :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

El dv 29 de 07 del 2005 a les 14:20 +0200, en/na Pedro Martínez Juliá va
escriure:
> But we have a theming implementation in MWF. If we want to be 100%
> compatible with MS.NET, we need to get out that theming implementation
> and put it as an optional patch...

Pedro,

The fact that we have some extra features for our SWF implementation
that does NOT break the API level compatibility with the Microsoft
stack. What is important is that we expose the same public API and its
behaviour matches the Microsoft one as much as possible.

Regards,

Jordi,

--
Jordi Mas i Hernàndez - Mono development team - http://www.mono-project.com
Homepage and LiveJournal at http://www.softcatala.org/~jmas


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Pedro Martínez Juliá :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


But we have a theming implementation in MWF. If we want to be 100%
compatible with MS.NET, we need to get out that theming implementation
and put it as an optional patch...

I think that the best solution to have themes is to provide a high level
definition for controls and then provide few implementations (gtk#,
wx.net, system.windows.forms, and maybe system.web). Like glade/xaml/xul
are doing but with more than one target toolkit.

Regards,

    Pedro

El vie, 29-07-2005 a las 12:44 +0200, Kornél Pál escribió:

> Hi,
>
> MS.NET has no theming support. Theming means that it would be able to draw
> contorls and/or windows using custom functions. There is no such support in
> MS.NET.
>
> It has an Application.EnableVisualStyles method that enables using Visual
> Styles. Visual Styles are provided by Windows not by MS.NET.
>
> All that Application.EnableVisualStyles does is that it loads comctl32.dll
> version 6.0.0.0 using a manifest file through Windows side-by-side assembly
> support and the initializes comctl32.dll.
>
> By default controls are drawn by MS.NET so you have to use FlatStyle.System
> to let Windows draw the controls using visual styles.
>
> For more information see:
> EnableVisualStyles:
> http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemwindowsformsapplicationclassenablevisualstylestopic.asp
>
> Visual Styles:
> http://msdn.microsoft.com/library/en-us/dnwxp/html/xptheming.asp
>
> Side-by-side Assemblies:
> http://msdn.microsoft.com/library/en-us/sbscs/setup/about_isolated_applications_and_side_by_side_assemblies.asp
>
> Mono draws contorls itself (just like MS.NET) that provides identical
> appearance across all platforms.
>
> Enabling custom themes is a good idea but it cannot be done in MWF because
> it has to be compatible with MS.NET implementations.
>
> Kornél
>
> ----- Original Message -----
> From: "Pedro Martínez Juliá" <pedromj@...>
> To: "Mono Winforms" <mono-winforms-list@...>
> Sent: Friday, July 29, 2005 12:31 PM
> Subject: [Mono-winforms-list] Theming in MWF
>
>
> >
> > Hi,
> >
> > I've seen the implementation of themes in MWF and I'm not agree at all
> > of having theming in this stage of the development. I know that MS.NET
> > has themes but I think that themes are implemented in Windows because I
> > didn't see anything related in MSDN documentation.
> >
> > I saw that Theme.cs has a lot of painting logic and I think it shouldn't
> > be there. For example, DataGridPaintRows iterates the rows of a datagrid
> > to paint each one. I think that it should be in DataGrid and not in the
> > theme class.
> >
> > The problems I see in this issue is that I can implement a Theme that
> > changes the view of any control and in the other hand, this theming
> > engine doesn't allow a user to easily download and install a theme.
> >
> > At the end, we have only Win32Classic theme maintained and it adds one
> > level to the indirection at the time to paint any control.
> >
> > For all of this I think we can redesign now the theming. It's only an
> > idea.
> >
> > Regards,
> >
> >    Pedro
> >
> > --
> > Pedro Martínez Juliá
> > \   pedromj@...
> > )|      Jabber: petrux@...
> > /           MSN Messenger: yoros@...
> > Socio HispaLinux #311
> > Página web: http://pedromj.dyndns.org
> > Usuario Linux #275438 - http://counter.li.org
> >
> > _______________________________________________
> > Mono-winforms-list maillist  -  Mono-winforms-list@...
> > http://lists.ximian.com/mailman/listinfo/mono-winforms-list
> >
>
--
Pedro Martínez Juliá
\   pedromj@...
)|      Jabber: petrux@...
/           MSN Messenger: yoros@...
Socio HispaLinux #311
Página web: http://pedromj.dyndns.org
Usuario Linux #275438 - http://counter.li.org

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Jordi Mas :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

El dv 29 de 07 del 2005 a les 14:38 +0200, en/na Kornél Pál va escriure:

Hi Kornél,

> As I know MWF uses a single theme and it draws everything using
> System.Drawing and does not use any native control representations.
> On Windows it is possible to let the system draw controls. If it possible
> under X11 and OS X as well?

Well, that you are asking is that Microsoft have done for SWF, a light
wrapper on the Win32 API (including controls).

To archive what you want you will need a new SWF implementation, cannot
be done with the current model or at least easily.

> On Windows there are system colors that could be used to color controls. Is
> the something equivalent on X11 and OS X?

System Colors and MWF  are in our TODO list... we have not started on
that yet.

Jordi,

--
Jordi Mas i Hernàndez - Mono development team - http://www.mono-project.com
Homepage and LiveJournal at http://www.softcatala.org/~jmas


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Kornél Pál :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

As I know MWF uses a single theme and it draws everything using
System.Drawing and does not use any native control representations.

On Windows it is possible to let the system draw controls. If it possible
under X11 and OS X as well?

On Windows there are system colors that could be used to color controls. Is
the something equivalent on X11 and OS X?

The problem with custom theming is the connetcion interface. Maybe we should
add a new assembly that exposes connection interfaces. And we could add some
configuration settings to specify themes.

Kornél

----- Original Message -----
From: "Jordi Mas" <jordi@...>
To: "Pedro Martínez Juliá" <pedromj@...>
Cc: <mono-winforms-list@...>; "Kornél Pál" <kornelpal@...>
Sent: Friday, July 29, 2005 2:08 PM
Subject: Re: [Mono-winforms-list] Theming in MWF


> El dv 29 de 07 del 2005 a les 14:20 +0200, en/na Pedro Martínez Juliá va
> escriure:
>> But we have a theming implementation in MWF. If we want to be 100%
>> compatible with MS.NET, we need to get out that theming implementation
>> and put it as an optional patch...
>
> Pedro,
>
> The fact that we have some extra features for our SWF implementation
> that does NOT break the API level compatibility with the Microsoft
> stack. What is important is that we expose the same public API and its
> behaviour matches the Microsoft one as much as possible.
>
> Regards,
>
> Jordi,
>
> --
> Jordi Mas i Hernàndez - Mono development team -
> http://www.mono-project.com
> Homepage and LiveJournal at http://www.softcatala.org/~jmas
>
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown Re: Theming in MWF

by Vladimir Lushnikov-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

May I suggest something like XAML for implementation? That would of
course mean native implementation of controls - but can't we get
native with GTK on Linux? Or CocoaSharp on OS X? Why can't we have a
native implementation on Windows (native, not System.Drawing) - and
therefore encapsulate the native toolkits in a meta-language such as
XML - basically what XAML in Vista is all about.

Regards,
Vladimir

On 29/07/05, Kornél Pál <kornelpal@...> wrote:

> As I know MWF uses a single theme and it draws everything using
> System.Drawing and does not use any native control representations.
>
> On Windows it is possible to let the system draw controls. If it possible
> under X11 and OS X as well?
>
> On Windows there are system colors that could be used to color controls. Is
> the something equivalent on X11 and OS X?
>
> The problem with custom theming is the connetcion interface. Maybe we should
> add a new assembly that exposes connection interfaces. And we could add some
> configuration settings to specify themes.
>
> Kornél
>
> ----- Original Message -----
> From: "Jordi Mas" <jordi@...>
> To: "Pedro Martínez Juliá" <pedromj@...>
> Cc: <mono-winforms-list@...>; "Kornél Pál" <kornelpal@...>
> Sent: Friday, July 29, 2005 2:08 PM
> Subject: Re: [Mono-winforms-list] Theming in MWF
>
>
> > El dv 29 de 07 del 2005 a les 14:20 +0200, en/na Pedro Martínez Juliá va
> > escriure:
> >> But we have a theming implementation in MWF. If we want to be 100%
> >> compatible with MS.NET, we need to get out that theming implementation
> >> and put it as an optional patch...
> >
> > Pedro,
> >
> > The fact that we have some extra features for our SWF implementation
> > that does NOT break the API level compatibility with the Microsoft
> > stack. What is important is that we expose the same public API and its
> > behaviour matches the Microsoft one as much as possible.
> >
> > Regards,
> >
> > Jordi,
> >
> > --
> > Jordi Mas i Hernàndez - Mono development team -
> > http://www.mono-project.com
> > Homepage and LiveJournal at http://www.softcatala.org/~jmas
> >
> >
> > _______________________________________________
> > Mono-winforms-list maillist  -  Mono-winforms-list@...
> > http://lists.ximian.com/mailman/listinfo/mono-winforms-list
> >
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>


--
Vladimir Lushnikov
C.E.O and Software Developer
EverythingX Limited (http://www.everythingx.net)
_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown RE: Theming in MWF

by Jonathan S. Chambers :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Is it just me, or is 'theming' being used in 2 different contexts? Kornel previously said:

'MS.NET has no theming support. Theming means that it would be able to draw contorls and/or windows using custom functions. There is no such support in MS.NET.'

Isn't the concept of 'themes' in MWF just to draw the widgets in the native style? According to the MWF page on the mono website:

'In terms of integrating visually with the desktop, we have a (still incomplete) themeing interface, currently with a classic Win32 theme and a Gtk theme.'

Currently, the functionality described by Kornel exists via the Themes class, but it is an internal mechanism to support drawing widgets that look native. If we published the Theme class and let people implement it, then it would be the functionality that Kornel is describing.

If not, please clarify for me.

Thanks,
Jonathan

-----Original Message-----
From: mono-winforms-list-bounces@... [mailto:mono-winforms-list-bounces@...] On Behalf Of Kornél Pál
Sent: Friday, July 29, 2005 8:38 AM
To: Jordi Mas; Pedro Martínez Juliá
Cc: mono-winforms-list@...
Subject: Re: [Mono-winforms-list] Theming in MWF

As I know MWF uses a single theme and it draws everything using
System.Drawing and does not use any native control representations.

On Windows it is possible to let the system draw controls. If it possible
under X11 and OS X as well?

On Windows there are system colors that could be used to color controls. Is
the something equivalent on X11 and OS X?

The problem with custom theming is the connetcion interface. Maybe we should
add a new assembly that exposes connection interfaces. And we could add some
configuration settings to specify themes.

Kornél

----- Original Message -----
From: "Jordi Mas" <jordi@...>
To: "Pedro Martínez Juliá" <pedromj@...>
Cc: <mono-winforms-list@...>; "Kornél Pál" <kornelpal@...>
Sent: Friday, July 29, 2005 2:08 PM
Subject: Re: [Mono-winforms-list] Theming in MWF


> El dv 29 de 07 del 2005 a les 14:20 +0200, en/na Pedro Martínez Juliá va
> escriure:
>> But we have a theming implementation in MWF. If we want to be 100%
>> compatible with MS.NET, we need to get out that theming implementation
>> and put it as an optional patch...
>
> Pedro,
>
> The fact that we have some extra features for our SWF implementation
> that does NOT break the API level compatibility with the Microsoft
> stack. What is important is that we expose the same public API and its
> behaviour matches the Microsoft one as much as possible.
>
> Regards,
>
> Jordi,
>
> --
> Jordi Mas i Hernàndez - Mono development team -
> http://www.mono-project.com
> Homepage and LiveJournal at http://www.softcatala.org/~jmas
>
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Pedro Martínez Juliá :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


First I think we need to finish a working implementation of all SWF
controls (1.0 and as much as we can from 2.0). The "look & feel" can be
provided later.

There are a lot of ways to implement the theming support, the actual
implementation of theming is not bad idea but I recommend not to support
a lot of themes, only few statically binded ones: SWF and Gtk, for
example. Then we'll have all gtk themes plus windows one without the
extra layer.

Gtk themes change the look of all widgets but windows themes changes
only a few things (I don't know what things, but it doesn't change the
draw of the buttons, as I think).

Regards,

    Pedro

El vie, 29-07-2005 a las 12:00 +0100, Vladimir Lushnikov escribió:

> Hi,
>
> Surely native theming is an option - Java has its SWING toolkit that
> does native theming and more, and who would want a Win98 look of your
> app on Mac OS X. If someone suggested why even use MWF - then the
> answer would be because it's easy, and it uses one of the most
> powerful IDE's to date - Visual Studio 2005. If we had "proper"
> theming support then I would imagine more people would use MWF on
> Linux (for example).
>
> Myself, I took a look at the look of MWF on Linux, and was horrified
> at how it contrasts with other applications. Personally, I would
> prefer to have native look in MWF, but if that's not possible, then I
> will have to (for my project) use MWF for windows, GTK for Linux and
> maybe the native Cocoa calls in OS X.
>
> I'm not suggesting that the current implementation is not feature-rich
> or indeed, good enough to use, but unless wxWidgets (the native C++
> library) becomes an integral part of Mono, I think it's up to the MWF
> to make native widgets, or indeed, themable widgets. And no,
> personally I will never use wxWidgets because it's a dependency - and
> the aim of my app is to have as little dependencies as possible.
>
> Regards,
>
> On 29/07/05, Kornél Pál <kornelpal@...> wrote:
> > Hi,
> >
> > MS.NET has no theming support. Theming means that it would be able to draw
> > contorls and/or windows using custom functions. There is no such support in
> > MS.NET.
> >
> > It has an Application.EnableVisualStyles method that enables using Visual
> > Styles. Visual Styles are provided by Windows not by MS.NET.
> >
> > All that Application.EnableVisualStyles does is that it loads comctl32.dll
> > version 6.0.0.0 using a manifest file through Windows side-by-side assembly
> > support and the initializes comctl32.dll.
> >
> > By default controls are drawn by MS.NET so you have to use FlatStyle.System
> > to let Windows draw the controls using visual styles.
> >
> > For more information see:
> > EnableVisualStyles:
> > http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemwindowsformsapplicationclassenablevisualstylestopic.asp
> >
> > Visual Styles:
> > http://msdn.microsoft.com/library/en-us/dnwxp/html/xptheming.asp
> >
> > Side-by-side Assemblies:
> > http://msdn.microsoft.com/library/en-us/sbscs/setup/about_isolated_applications_and_side_by_side_assemblies.asp
> >
> > Mono draws contorls itself (just like MS.NET) that provides identical
> > appearance across all platforms.
> >
> > Enabling custom themes is a good idea but it cannot be done in MWF because
> > it has to be compatible with MS.NET implementations.
> >
> > Kornél
> >
> > ----- Original Message -----
> > From: "Pedro Martínez Juliá" <pedromj@...>
> > To: "Mono Winforms" <mono-winforms-list@...>
> > Sent: Friday, July 29, 2005 12:31 PM
> > Subject: [Mono-winforms-list] Theming in MWF
> >
> >
> > >
> > > Hi,
> > >
> > > I've seen the implementation of themes in MWF and I'm not agree at all
> > > of having theming in this stage of the development. I know that MS.NET
> > > has themes but I think that themes are implemented in Windows because I
> > > didn't see anything related in MSDN documentation.
> > >
> > > I saw that Theme.cs has a lot of painting logic and I think it shouldn't
> > > be there. For example, DataGridPaintRows iterates the rows of a datagrid
> > > to paint each one. I think that it should be in DataGrid and not in the
> > > theme class.
> > >
> > > The problems I see in this issue is that I can implement a Theme that
> > > changes the view of any control and in the other hand, this theming
> > > engine doesn't allow a user to easily download and install a theme.
> > >
> > > At the end, we have only Win32Classic theme maintained and it adds one
> > > level to the indirection at the time to paint any control.
> > >
> > > For all of this I think we can redesign now the theming. It's only an
> > > idea.
> > >
> > > Regards,
> > >
> > >    Pedro
> > >
> > > --
> > > Pedro Martínez Juliá
> > > \   pedromj@...
> > > )|      Jabber: petrux@...
> > > /           MSN Messenger: yoros@...
> > > Socio HispaLinux #311
> > > Página web: http://pedromj.dyndns.org
> > > Usuario Linux #275438 - http://counter.li.org
> > >
> > > _______________________________________________
> > > Mono-winforms-list maillist  -  Mono-winforms-list@...
> > > http://lists.ximian.com/mailman/listinfo/mono-winforms-list
> > >
> >
> > _______________________________________________
> > Mono-winforms-list maillist  -  Mono-winforms-list@...
> > http://lists.ximian.com/mailman/listinfo/mono-winforms-list
> >
>
>
--
Pedro Martínez Juliá
\   pedromj@...
)|      Jabber: petrux@...
/           MSN Messenger: yoros@...
Socio HispaLinux #311
Página web: http://pedromj.dyndns.org
Usuario Linux #275438 - http://counter.li.org

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown RE: Theming in MWF

by Jonathan S. Chambers :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I think this was tried, at least with GTK on Linux. The issues encountered are described:

http://www.mono-project.com/WinForms#History

- Jonathan

-----Original Message-----
From: mono-winforms-list-bounces@... [mailto:mono-winforms-list-bounces@...] On Behalf Of Vladimir Lushnikov
Sent: Friday, July 29, 2005 8:47 AM
To: mono-winforms-list@...
Subject: Re: [Mono-winforms-list] Theming in MWF

Hi,

May I suggest something like XAML for implementation? That would of
course mean native implementation of controls - but can't we get
native with GTK on Linux? Or CocoaSharp on OS X? Why can't we have a
native implementation on Windows (native, not System.Drawing) - and
therefore encapsulate the native toolkits in a meta-language such as
XML - basically what XAML in Vista is all about.

Regards,
Vladimir

On 29/07/05, Kornél Pál <kornelpal@...> wrote:

> As I know MWF uses a single theme and it draws everything using
> System.Drawing and does not use any native control representations.
>
> On Windows it is possible to let the system draw controls. If it possible
> under X11 and OS X as well?
>
> On Windows there are system colors that could be used to color controls. Is
> the something equivalent on X11 and OS X?
>
> The problem with custom theming is the connetcion interface. Maybe we should
> add a new assembly that exposes connection interfaces. And we could add some
> configuration settings to specify themes.
>
> Kornél
>
> ----- Original Message -----
> From: "Jordi Mas" <jordi@...>
> To: "Pedro Martínez Juliá" <pedromj@...>
> Cc: <mono-winforms-list@...>; "Kornél Pál" <kornelpal@...>
> Sent: Friday, July 29, 2005 2:08 PM
> Subject: Re: [Mono-winforms-list] Theming in MWF
>
>
> > El dv 29 de 07 del 2005 a les 14:20 +0200, en/na Pedro Martínez Juliá va
> > escriure:
> >> But we have a theming implementation in MWF. If we want to be 100%
> >> compatible with MS.NET, we need to get out that theming implementation
> >> and put it as an optional patch...
> >
> > Pedro,
> >
> > The fact that we have some extra features for our SWF implementation
> > that does NOT break the API level compatibility with the Microsoft
> > stack. What is important is that we expose the same public API and its
> > behaviour matches the Microsoft one as much as possible.
> >
> > Regards,
> >
> > Jordi,
> >
> > --
> > Jordi Mas i Hernàndez - Mono development team -
> > http://www.mono-project.com
> > Homepage and LiveJournal at http://www.softcatala.org/~jmas
> >
> >
> > _______________________________________________
> > Mono-winforms-list maillist  -  Mono-winforms-list@...
> > http://lists.ximian.com/mailman/listinfo/mono-winforms-list
> >
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>


--
Vladimir Lushnikov
C.E.O and Software Developer
EverythingX Limited (http://www.everythingx.net)
_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Kornél Pál :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

>> As I know MWF uses a single theme and it draws everything using
>> System.Drawing and does not use any native control representations.
>> On Windows it is possible to let the system draw controls. If it possible
>> under X11 and OS X as well?
>
> Well, that you are asking is that Microsoft have done for SWF, a light
> wrapper on the Win32 API (including controls).
>
> To archive what you want you will need a new SWF implementation, cannot
> be done with the current model or at least easily.

If I understand correctly the APIs of these three windowing systems are to
different to can use native controls using an SWF implementation that is
imitating the behaviour of Win32 API on all operating systems (I mean Mono
MWF:).

>> On Windows there are system colors that could be used to color controls.
>> Is
>> the something equivalent on X11 and OS X?
>
> System Colors and MWF  are in our TODO list... we have not started on
> that yet.

And is it possible to use system colors on X11 and OS X as well?

Kornél

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Kornél Pál :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

>Currently, the functionality described by Kornel exists via the Themes
>class, but it is an internal mechanism to support drawing widgets that look
>native. If we published the Theme class and let people implement it, then
>it would be the functionality that Kornel is describing.

I know that it already exists.

I just mentioned that we should consider to expose the theming interface
through a public interface.

I know that this would not be MS.NET compatible but we could use a
Mono.*.dll assembly to expose this functionality. Of course this assembly
could not be used on other runtimes because it requires Mono's SWF.dll.

Doing this would let developers to theme or skin their applications but
making them dependent on Mono.

I don't know whether it is worth to do but it is a possible solution.

Kornél

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown Re: Theming in MWF

by Vladimir Lushnikov-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

Then I don't see the reason for starting a completely managed wrapper
to native APIs across the platforms. Also, (slightly unrelated) can
Mono at the moment use MS.NET's implementation of Windows.Forms (even
if run through Mono) with native controls?

Regards,
Vladimir

On 29/07/05, Kornél Pál <kornelpal@...> wrote:

> Hi,
>
> >> As I know MWF uses a single theme and it draws everything using
> >> System.Drawing and does not use any native control representations.
> >> On Windows it is possible to let the system draw controls. If it possible
> >> under X11 and OS X as well?
> >
> > Well, that you are asking is that Microsoft have done for SWF, a light
> > wrapper on the Win32 API (including controls).
> >
> > To archive what you want you will need a new SWF implementation, cannot
> > be done with the current model or at least easily.
>
> If I understand correctly the APIs of these three windowing systems are to
> different to can use native controls using an SWF implementation that is
> imitating the behaviour of Win32 API on all operating systems (I mean Mono
> MWF:).
>
> >> On Windows there are system colors that could be used to color controls.
> >> Is
> >> the something equivalent on X11 and OS X?
> >
> > System Colors and MWF  are in our TODO list... we have not started on
> > that yet.
>
> And is it possible to use system colors on X11 and OS X as well?
>
> Kornél
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>


--
Vladimir Lushnikov
C.E.O and Software Developer
EverythingX Limited (http://www.everythingx.net)
_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Kornél Pál :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

The reason for Managed Windows Form is that managed applications usually
assume existence of Windows WM_... messages in System.Windows.Form. This can
be done on non-Windows platforms only using a wrapper layer that is MWF.

Kornél

----- Original Message -----
From: "Vladimir Lushnikov" <vladimir.lushnikov@...>
To: "Kornél Pál" <kornelpal@...>; <mono-winforms-list@...>
Sent: Friday, July 29, 2005 3:13 PM
Subject: Re: [Mono-winforms-list] Theming in MWF


Hi,

Then I don't see the reason for starting a completely managed wrapper
to native APIs across the platforms. Also, (slightly unrelated) can
Mono at the moment use MS.NET's implementation of Windows.Forms (even
if run through Mono) with native controls?

Regards,
Vladimir

On 29/07/05, Kornél Pál <kornelpal@...> wrote:

> Hi,
>
> >> As I know MWF uses a single theme and it draws everything using
> >> System.Drawing and does not use any native control representations.
> >> On Windows it is possible to let the system draw controls. If it
> >> possible
> >> under X11 and OS X as well?
> >
> > Well, that you are asking is that Microsoft have done for SWF, a light
> > wrapper on the Win32 API (including controls).
> >
> > To archive what you want you will need a new SWF implementation, cannot
> > be done with the current model or at least easily.
>
> If I understand correctly the APIs of these three windowing systems are to
> different to can use native controls using an SWF implementation that is
> imitating the behaviour of Win32 API on all operating systems (I mean Mono
> MWF:).
>
> >> On Windows there are system colors that could be used to color
> >> controls.
> >> Is
> >> the something equivalent on X11 and OS X?
> >
> > System Colors and MWF  are in our TODO list... we have not started on
> > that yet.
>
> And is it possible to use system colors on X11 and OS X as well?
>
> Kornél
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list@...
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>


--
Vladimir Lushnikov
C.E.O and Software Developer
EverythingX Limited (http://www.everythingx.net)
_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown RE: Theming in MWF

by Jonathan S. Chambers :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Are you suggesting something more akin to the SWT implementation on Java? Where native widgets are used when possible, and when not a managed implementation is done?

-----Original Message-----
From: mono-winforms-list-bounces@... [mailto:mono-winforms-list-bounces@...] On Behalf Of Jordi Mas
Sent: Friday, July 29, 2005 8:37 AM
To: Kornél Pál
Cc: mono-winforms-list@...
Subject: Re: [Mono-winforms-list] Theming in MWF

El dv 29 de 07 del 2005 a les 14:38 +0200, en/na Kornél Pál va escriure:

Hi Kornél,

> As I know MWF uses a single theme and it draws everything using
> System.Drawing and does not use any native control representations.
> On Windows it is possible to let the system draw controls. If it possible
> under X11 and OS X as well?

Well, that you are asking is that Microsoft have done for SWF, a light
wrapper on the Win32 API (including controls).

To archive what you want you will need a new SWF implementation, cannot
be done with the current model or at least easily.

> On Windows there are system colors that could be used to color controls. Is
> the something equivalent on X11 and OS X?

System Colors and MWF  are in our TODO list... we have not started on
that yet.

Jordi,

--
Jordi Mas i Hernàndez - Mono development team - http://www.mono-project.com
Homepage and LiveJournal at http://www.softcatala.org/~jmas


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Re: Theming in MWF

by Kornél Pál :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Yes I am suggesting using native widgets on all operating systems.

Note that controls have a FlatStyle property and native widget
representation (I mean the appeareance regardless of using native or managed
widgets internally) should be used when it is FlatStyle.System otherwise
System.Drawing should be used.

Kornél

----- Original Message -----
From: "Jonathan S. Chambers" <Jonathan.Chambers@...>
To: "Jordi Mas" <jordi@...>; "Kornél Pál" <kornelpal@...>
Cc: <mono-winforms-list@...>
Sent: Friday, July 29, 2005 3:28 PM
Subject: RE: [Mono-winforms-list] Theming in MWF


Are you suggesting something more akin to the SWT implementation on Java?
Where native widgets are used when possible, and when not a managed
implementation is done?

-----Original Message-----
From: mono-winforms-list-bounces@...
[mailto:mono-winforms-list-bounces@...] On Behalf Of Jordi Mas
Sent: Friday, July 29, 2005 8:37 AM
To: Kornél Pál
Cc: mono-winforms-list@...
Subject: Re: [Mono-winforms-list] Theming in MWF

El dv 29 de 07 del 2005 a les 14:38 +0200, en/na Kornél Pál va escriure:

Hi Kornél,

> As I know MWF uses a single theme and it draws everything using
> System.Drawing and does not use any native control representations.
> On Windows it is possible to let the system draw controls. If it possible
> under X11 and OS X as well?

Well, that you are asking is that Microsoft have done for SWF, a light
wrapper on the Win32 API (including controls).

To archive what you want you will need a new SWF implementation, cannot
be done with the current model or at least easily.

> On Windows there are system colors that could be used to color controls.
> Is
> the something equivalent on X11 and OS X?

System Colors and MWF  are in our TODO list... we have not started on
that yet.

Jordi,

--
Jordi Mas i Hernàndez - Mono development team - http://www.mono-project.com
Homepage and LiveJournal at http://www.softcatala.org/~jmas


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown Re: Theming in MWF

by Vladimir Lushnikov-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

I looked in the Mono Wiki and found this:

DEAD) Sharp WT

Homepage: http://sourceforge.net/projects/sharpdevelop

THIS PROJECT IS DEAD. DEVELOPMENT HAS STOPPED BECAUSE OF LACK OF INTEREST.

This is a project started by the developers of SharpDevelop.

The project started due to the limitations on Windows.Forms and the
need to port their large application to Linux. They picked the SWT
toolkit which is part of Eclipse and ported it from Java to C#.

SWT uses native widgets on each one of its target platforms, so the
look and feel matches the underlying operating system.

Pros:

    * Native look and feel on various platforms (Windows, Linux and MacOS).
    * Clean design.
    * The Java version has been successfully used by the Eclipse project.

Cons:

    * Little or no documentation.
    * Authoring new widgets is either hard (due to testing on multiple
platforms), or the look and feel is unique.
    * Still under heavy development.
    * Common denominator subset API problem.

--
Vladimir Lushnikov
C.E.O and Software Developer
EverythingX Limited (http://www.everythingx.net)
_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list

Parent Message unknown RE: Theming in MWF

by Jonathan S. Chambers :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

        I think the problem is not using native widgets (as in SWT) as a basis for a toolkit. The problem is mapping those widgets to SWF (since the API for the target toolkit already exists). When SWT was written, I am sure platform dependent issues were considered when defining the API. I doubt MS did that with SWF. Thus, it's much harder to retrofit cross platform code to SWF, than it would be in writing a toolkit from scratch.

- Jonathan

-----Original Message-----
From: Kornél Pál [mailto:kornelpal@...]
Sent: Friday, July 29, 2005 9:37 AM
To: Jonathan S. Chambers; Jordi Mas
Cc: mono-winforms-list@...
Subject: Re: [Mono-winforms-list] Theming in MWF

Yes I am suggesting using native widgets on all operating systems.

Note that controls have a FlatStyle property and native widget
representation (I mean the appeareance regardless of using native or managed
widgets internally) should be used when it is FlatStyle.System otherwise
System.Drawing should be used.

Kornél

----- Original Message -----
From: "Jonathan S. Chambers" <Jonathan.Chambers@...>
To: "Jordi Mas" <jordi@...>; "Kornél Pál" <kornelpal@...>
Cc: <mono-winforms-list@...>
Sent: Friday, July 29, 2005 3:28 PM
Subject: RE: [Mono-winforms-list] Theming in MWF


Are you suggesting something more akin to the SWT implementation on Java?
Where native widgets are used when possible, and when not a managed
implementation is done?

-----Original Message-----
From: mono-winforms-list-bounces@...
[mailto:mono-winforms-list-bounces@...] On Behalf Of Jordi Mas
Sent: Friday, July 29, 2005 8:37 AM
To: Kornél Pál
Cc: mono-winforms-list@...
Subject: Re: [Mono-winforms-list] Theming in MWF

El dv 29 de 07 del 2005 a les 14:38 +0200, en/na Kornél Pál va escriure:

Hi Kornél,

> As I know MWF uses a single theme and it draws everything using
> System.Drawing and does not use any native control representations.
> On Windows it is possible to let the system draw controls. If it possible
> under X11 and OS X as well?

Well, that you are asking is that Microsoft have done for SWF, a light
wrapper on the Win32 API (including controls).

To archive what you want you will need a new SWF implementation, cannot
be done with the current model or at least easily.

> On Windows there are system colors that could be used to color controls.
> Is
> the something equivalent on X11 and OS X?

System Colors and MWF  are in our TODO list... we have not started on
that yet.

Jordi,

--
Jordi Mas i Hernàndez - Mono development team - http://www.mono-project.com
Homepage and LiveJournal at http://www.softcatala.org/~jmas


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list


_______________________________________________
Mono-winforms-list maillist  -  Mono-winforms-list@...
http://lists.ximian.com/mailman/listinfo/mono-winforms-list
< Prev | 1 - 2 | Next >