.NET wrapper for Gtk and other related libraries
Go to file
Dan Winship b6d7f14268 * generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag

	* generator/GenerationInfo.cs: Accept glue_includes value from
	Main and output it to the glue_filename.

	* generator/FieldBase.cs (Ignored): handle more ignorable cases.
	(CheckGlue): New method to figure out what kind of glue we'll need
	for a field.
	(GenerateImports): generate appropriate imports per CheckGlue.
	(GenerateGlue): Generate C glue for accessing a struct field;
	either a fully-C-based accessor, or a method to just return the
	field's offset in the struct.
	(Generate): Use the generated glue to read the field.

	* generator/PropertyBase.cs (CType): if the field is a single bit,
	set its type to gboolean.

	* generator/ObjectGen.cs (Generate):
	* generator/OpaqueGen.cs (Generate): Call GenFields.

	* generator/StructField.cs: Use FieldBase's glue-generation code
	to handle bitfields. [#54489]

	* generator/ObjectField.cs: Generates accessors for public fields
	of objects and opaque structs. [#69514]

	* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
	create ObjectField objects.
	(GenFields): Output field properties
	(IgnoreMethod): Ignore Get/Set methods that duplicate fields

	* generator/Makefile.am (sources): update

	* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
	public. Rename/retype some fields for consistency with earlier
	hand-coded bindings.

	* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
	now be autogenerated.

	* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
	be autogenerated
	
	* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
	* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
	* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update

svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
art kill useless .cvsignore files 2005-04-20 20:11:00 +00:00
atk 2005-05-06 Mike Kestner <mkestner@novell.com> 2005-05-06 17:10:48 +00:00
doc * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
gconf * */Makefile.am: more build fixes 2005-04-27 23:21:55 +00:00
gda kill useless .cvsignore files 2005-04-20 20:11:00 +00:00
gdk * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
generator * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
glade * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
glib fix a typo in a warning message 2005-05-12 19:06:36 +00:00
gnome * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
gnomedb * generator/Parameters.cs (IsHidden): method to check if a 2005-05-02 20:10:03 +00:00
gnomevfs kill useless .cvsignore files 2005-04-20 20:11:00 +00:00
gtk * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
gtkdotnet 2005-04-26 Miguel de Icaza <miguel@novell.com> 2005-04-26 19:54:31 +00:00
gtkhtml kill useless .cvsignore files 2005-04-20 20:11:00 +00:00
pango * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
parser * parser/gapi2xml.pl: make note of _get_type methods for enums 2005-05-04 16:54:24 +00:00
rsvg * generator/Parameters.cs (Parameters.Validate): If the parameters 2005-05-04 11:47:25 +00:00
sample 2005-05-10 Mike Kestner <mkestner@novell.com> 2005-05-10 16:11:18 +00:00
sources forgot a dist change 2005-05-06 17:15:37 +00:00
vte * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
AssemblyInfo.cs.in 2005-01-08 Mike Kestner <mkestner@novell.com> 2005-01-09 00:26:45 +00:00
AUTHORS Contributions from wizito@gentelibre.org 2005-01-12 19:35:22 +00:00
autogen.sh 2005-05-04 Mike Kestner <mkestner@novell.com> 2005-05-04 20:53:02 +00:00
bootstrap 2005-05-15 Ben Maurer <bmaurer@ximian.com> 2005-05-15 22:26:30 +00:00
bootstrap-2.4 2005-05-15 Ben Maurer <bmaurer@ximian.com> 2005-05-15 22:26:30 +00:00
ChangeLog * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
configure.in.in 2005-05-11 Mike Kestner <mkestner@novell.com> 2005-05-12 00:02:21 +00:00
COPYING 2003-05-13 Mike Kestner <mkestner@speakeasy.net> 2003-05-14 01:08:40 +00:00
gapi-cdecl-insert 2005-03-23 Mike Kestner <mkestner@novell.com> 2005-03-23 20:35:15 +00:00
gtk-sharp.snk Add gtk-sharp.snk 2004-06-08 17:32:50 +00:00
HACKING 2003-03-13 Charles Iliya Krempeaux <charles@reptile.ca> 2003-03-16 07:03:45 +00:00
Makefile.am 2005-03-23 Mike Kestner <mkestner@novell.com> 2005-03-23 20:35:15 +00:00
Makefile.include * generator/StructBase.cs: update field-generation logic a bit 2005-05-16 14:28:55 +00:00
makefile.win32 2005-01-13 Zac Bowling <zac@zacbowling.com> 2005-01-13 20:27:44 +00:00
NEWS 2004-03-12 Mike Kestner <mkestner@ximian.com> 2004-03-12 21:18:11 +00:00
README 2005-05-04 Mike Kestner <mkestner@novell.com> 2005-05-04 20:53:02 +00:00
README.generator 2004-12-30 Alp Toker <alp@atoker.com> 2004-12-30 10:17:14 +00:00

The Gtk# website can be found at: http://gtk-sharp.sourceforge.net/

Gtk# is a .NET language binding for the GTK+ toolkit and assorted GNOME
libraries.  Gtk# is free software, licensed under the GNU LGPL.  The target
is the 2.6 platform.

Building & Installing Gtk#:
---------------------------

    To compile Gtk# on Win32 using the .NET framework compiler and libraries,
    in the top level directory, type:

        make -f makefile.win32

    The Linux build is the traditional:

        ./configure
        make
        make install

    You may want to consider using configure's prefix option to install
    Gtk# using the same prefix as Mono.  That way all of your .NET assemblies
    get placed in the same place, and you don't need to do any extra "configuring"
    to make it so mono (and mint) can find your assemblies.  In other words,
    doing something like:

        ./configure --prefix=/the/path/that/was/used/for/mono
        make
        make install

    (Of course, replace "/the/path/that/was/used/for/mono" with whatever path
    which was used for Mono.  This might have been "/usr", "/usr/local", or
    something similar.)

    If you are compiling from SVN, you will need libtool and the auto* tools
    and will need to replace the configure above with bootstrap for the 2.5.x
    version or bootstrap-2.4 for the 1.9.x version.


Discussion & Support:
---------------------

    A mailing list for Gtk# discussion is available.

    You can subscribe to the mailing list by visiting:

        http://lists.ximian.com/mailman/listinfo/gtk-sharp-list

    And following the instructions (on that page) to subscribe.
    Messages are posted on this mailing list by sending them to:

        gtk-sharp-list@ximian.com

    (The mailing list requires you to subscribe in order to post
    messages.)

    An archive of this mailing list can be found at:

        http://lists.ximian.com/archives/public/gtk-sharp-list/

    Further, a Wiki is available for Gtk#, and can be found at:

        http://www.nullenvoid.com/gtksharp/wiki/

    Also, people can get help with and discuss Gtk# on IRC via the
    #mono channel on the irc.gnome.org IRC server.

    People looking for general help with C# should visit the
    #c# channel on irc.freenode.net IRC server.


Developers:
-----------

    For developers wishing to "get started" with Gtk#, they are encouraged
    to read the Mono Hand Book:

        http://www.go-mono.com/tutorial

    In the Mono Hand Book, Chapter 21 is on Gtk#.  (In the Mono Hand Book,
    the Gtk# .NET bindings are refered to as GNOME.NET.)


Hackers:
--------

    For those who wish to help with the development of Gtk#, they should
    read the file named: HACKING.

    Also, anyone wishing to hack Gtk# is encouraged to join the Gtk#
    mailing list.  And to visit the #mono IRC channel (on irc.gnome.org).