.NET wrapper for Gtk and other related libraries
b6d7f14268
* 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 |
||
---|---|---|
art | ||
atk | ||
doc | ||
gconf | ||
gda | ||
gdk | ||
generator | ||
glade | ||
glib | ||
gnome | ||
gnomedb | ||
gnomevfs | ||
gtk | ||
gtkdotnet | ||
gtkhtml | ||
pango | ||
parser | ||
rsvg | ||
sample | ||
sources | ||
vte | ||
AssemblyInfo.cs.in | ||
AUTHORS | ||
autogen.sh | ||
bootstrap | ||
bootstrap-2.4 | ||
ChangeLog | ||
configure.in.in | ||
COPYING | ||
gapi-cdecl-insert | ||
gtk-sharp.snk | ||
HACKING | ||
Makefile.am | ||
Makefile.include | ||
makefile.win32 | ||
NEWS | ||
README | ||
README.generator |
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).