2004-01-08 Nick Drochak <ndrochak@ieee.org>
[mono.git] / web / winforms
index a9793fc871567c5ab221c16110eca5d2f381c01d..b98d0d3a5617dc660cb5c5759912bdcad8c43d59 100644 (file)
 
 * Win32/Wine edition.
 
-       Currently (May 21st, 2003) to get the Windows.Forms support
-       working, you need a Mono installation from CVS, and you need
-       to install Wine plus the <a
-       href="http://www.openlinksw.com">OpenLink patch</a>, and
+       To get the Windows.Forms support working, you need a Mono
+       installation from CVS, and you need to install Wine plus the
+       <a href="http://www.openlinksw.com">OpenLink patch</a>, and
        define the environment variable "SWF" (export SWF=1 from your
-       shell). 
+       shell). For more information, see the <a
+       href="http://www.nullenvoid.com/mono/wiki/index.php/MonoWinePackages">Mono
+       Wine Packages</a> page in the Mono Wiki.
 
        <table>
        <tr>
@@ -47,7 +48,7 @@
        calls to Win32 and we will then just run the result on Unix. 
 
        In terms of integrating visually with the desktop, we are
-       hoping to contribute to the Wine project an mechanism to make
+       hoping to contribute to the Wine project a mechanism to make
        it use the Gtk+ themes on X11 and Cocoa on MacOS to render the
        widgets, and get the native look and feel on each of these
        platforms. 
 
 * System.Drawing
 
-       Using existing libraries to implement some of the
-       functionality required:
-
-       <ul>
-               * gdk-pixbuf is a generic image loader that loads an image
-                 and leaves it into an RGB buffer.  It hides all the details
-                 about what image file format is being loaded.
-
-               * Libart is a general framework for rendering RGB/RGBA
-                 buffers into RGB buffers and rendering postscript-like paths into
-                 RGB/RGBA buffers.
-       </ul>
-
-       We want to use gdk-pixbuf as the image loader for the image
-       classes, and then we need operations to render that into the
-       windowing system (Gtk+, MacOS, etc).  But notice how there is
-       very little dependnecies in Gdk-pixbuf on gtk, and libart has
-       none.
-
-       They are pretty independent from a windowing system
-       (gdk-pixbuf comes with some "helper" routines for rendering
-       data into a pixmap and to load pixmaps into RGB buffers).
-
-       A few things to keep in mind:
-       
-       <ul>
-       
-               * gdk-pixbuf can be used to load images for Gtk+,
-                 MacOS X and Windows, it should be pretty portable,
-                 although we might need in the future to back-port
-                 some new features from Gtk head. 
-
-               * Libart is probably only going to be used with X11,
-                 as the MacOS X provides the same features in Quartz,
-                 and Win32 *probably* has that in GDI+.  If not, we
-                 should use libart in Win32 as well (or for older
-                 Windows systems).
-       </ul>
-
-* Directory Layout
-
-<pre>
-        System.Drawing  (assembly directory)
-                System.Drawing.Blah
-                        Common code for "Blah"
-                        Stubs for "Blah" to ease ports.
-
-                Gtk
-                        System.Drawing.Blah.
-                                Gtk ports of "System.Drawing.Blah"
-                MacOS
-                        System.Drawing.Blah
-                                MacOS ports of "System.Drawing.Blah"
-                WineLIB
-                        System.Drawing.Blah
-                                Win32 ports of "System.Drawing.Blah"
-</pre>
-
-       Notice that there is a proof of concept Gtk-backend for
-       Windows.Forms, but nobody is working on it, and for the
-       reasons stated before it is not a long term strategy.
-
-* Open questions:
-
-       I believe that the graphics contexts that are used to render
-       can accept either libart-like rendering operations and
-       X11-like rendering operations.  This complicates matters, but
-       I am not sure.  Someone needs to investigate this.
-
-* Historical 
-       
-       Although the original plans were to use Gtk on X and Cocoa on
-       MacOS X, it would be very hard to emulate the event model in
-       which some Winforms applications depend, and it would be very
-       hard to implement the Wndproc method.  
+       For details, see the <a
+       href="drawing.html">System.Drawing implementation notes</a>
+       section of the web site.