.NET wrapper for Gtk and other related libraries
Go to file
Rachel Hestilow 6857128f07 2002-06-21 Rachel Hestilow <hestilow@ximian.com>
* generator/ClassBase.cs: New base class for classes and interfaces.

	* generator/InterfaceGen.cs: Inherit from ClassBase, generate declarations.

	* generator/ObjectGen.cs: Move half of this into ClassBase.

	* generator/Method.cs: Turn all applicable Get/Set functions into .NET
	accessors. Remove redundant == overload and move into Equals, as
	it was confusing "!= null".

	* generator/Parameters.cs: Alter signature creation to accept "is_set"
	option, add support for variable arguments. Add properties "Count",
	"IsVarArgs", "VAType".

	* generator/Ctor.cs: Fixup for changes in Parameters (indenting,
	signature creation).

	* generator/Signal.cs: Support generating declarations.

	* generator/SymbolTable: Change GetObjectGen to GetClassGen.

	* glib/IWrapper.cs: Move "Handle" declaration to here, so
	both classes and interfaces can benefit from it.

	* glib/Object.cs: Inherit from IWrapper.cs

	* parser/Metadata.pm: Support attribute changes on constructors,
	methods, signals, and paramater lists.

	* parser/gapi2xml.pl: Parse init funcs for interfaces. Ignore "_"
	functions here.

	* parser/gapi_pp.pl: Remove boxed_type_register check, as it will
	be caught in the init funcs.

	* parser/Atk.metadata: Added.

	* parser/Gtk.metadata: Add all needed signal/method collision
	renames. Rename GtkEditable.Editable accessors to IsEditable,
	as .NET does not like accessors with the same name as their
	declaring type. Tag TreeStore constructor as varargs.

	* samples/ButtonApp.cs: s/EmitAdd/Add.

	* samples/Menu.cs: s/EmitAdd/Add, s/Activate/Activated.

svn path=/trunk/gtk-sharp/; revision=5394
2002-06-21 17:15:19 +00:00
atk 2002-06-21 Mike Kestner <mkestner@speakeasy.net> 2002-06-21 12:29:04 +00:00
codegen This is an enormous commit of stuff that I've been working on for several 2002-01-04 02:02:28 +00:00
gdk 2002-06-21 Mike Kestner <mkestner@speakeasy.net> 2002-06-21 12:29:04 +00:00
generator 2002-06-21 Rachel Hestilow <hestilow@ximian.com> 2002-06-21 17:15:19 +00:00
glib 2002-06-21 Rachel Hestilow <hestilow@ximian.com> 2002-06-21 17:15:19 +00:00
glue 2002-06-21 Rachel Hestilow <hestilow@ximian.com> 2002-06-21 17:15:19 +00:00
gtk 2002-06-21 Mike Kestner <mkestner@speakeasy.net> 2002-06-21 12:29:04 +00:00
pango 2002-06-21 Mike Kestner <mkestner@speakeasy.net> 2002-06-21 12:29:04 +00:00
parser 2002-06-21 Rachel Hestilow <hestilow@ximian.com> 2002-06-21 17:15:19 +00:00
sample 2002-06-21 Rachel Hestilow <hestilow@ximian.com> 2002-06-21 17:15:19 +00:00
sources 2002-06-21 Rachel Hestilow <hestilow@ximian.com> 2002-06-21 17:15:19 +00:00
.cvsignore 2002-04-25 Mike Kestner <mkestner@speakeasy.net> 2002-04-25 09:17:54 +00:00
autogen.sh 2002-04-25 Mike Kestner <mkestner@speakeasy.net> 2002-04-25 09:17:54 +00:00
ChangeLog 2002-06-21 Rachel Hestilow <hestilow@ximian.com> 2002-06-21 17:15:19 +00:00
configure.in 2002-06-14 Rachel Hestilow <hestilow@ximian.com> 2002-06-14 18:27:04 +00:00
HACKING 2001-10-04 Mike Kestner <mkestner@speakeasy.net> 2001-10-04 19:12:55 +00:00
makefile 2002-06-14 Rachel Hestilow <hestilow@ximian.com> 2002-06-14 18:27:04 +00:00
makefile.win32 2002-06-14 Rachel Hestilow <hestilow@ximian.com> 2002-06-14 18:27:04 +00:00
README 2002-05-02 Mike Kestner <mkestner@speakeasy.net> 2002-05-02 21:57:41 +00:00

The Gtk# homepage can be found at gtk-sharp.sourceforge.net.

Gtk# is a C# binding for the Gtk+ toolkit (www.gtk.org).  The target is the
2.0 platform, and no plans are currently in place to backport to 1.2.

The effort essentially boils down to an exercise in PInvoke against the C
dynamic libraries.  It may end up being slow as hell, but we'll see when we get 
there and adjust accordingly.

Building Gtk#:
--------------
Currently, it is only possible to compile Gtk# on Win32 using the .Net 
framework compiler and libraries. The build system is in a transitional
state at the moment.  Windows compilation utilizes the cygwin environment 
for a GNU build environment. To compile the package type:

make -f makefile.win32

in the top level directory.

The linux build fails due to unresolved issues in mcs.  If you would like
to help work these issues, the build procedure on linux is the typical:

configure
make
make install

If you are compiling from CVS, you will need libtool and the auto* tools
and will need to replace the configure above with autogen.sh.

Discussion:
-----------
A mailing list for Gtk# discussion (gtk-sharp-list@ximian.com) is available.
Subscription and archives are available at lists.ximian.com. The list
requires subscription in order to post.