Commit Graph

12 Commits

Author SHA1 Message Date
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
Mike Kestner
7a37a4ed34 2005-03-30 Anthony Taranto <voltron@emptyrhetoric.com>
* gtk/Widget.custom : cause Allocation.Set to call SizeUpdate().
	* gtk/glue/widget.c : remove gtksharp_gtk_widget_set_allocation().

svn path=/trunk/gtk-sharp/; revision=42387
2005-03-30 20:47:56 +00:00
Dan Winship
311cda7be0 * gtk/Gtk.metadata: Hide StyleGetProperty and StyleGetValist since
they're generated wrong, and StyleGet to avoid an ellipsis
	warning. (Also hide the deprecated ellipsis method "Set".)

	* gtk/Widget.custom (StyleGetProperty): implement manually, a la
	Gtk.Container.ChildGetProperty.

	* gtk/glue/widget.c (gtksharp_widget_style_get_property): glue for that

svn path=/trunk/gtk-sharp/; revision=40481
2005-02-11 15:59:22 +00:00
Mike Kestner
adef5f7bbd 2004-12-23 Mike Kestner <mkestner@novell.com>
* glib/ClassInitializerAttribute.cs : new attr for identifying type.
	inialization methods to be run by RegisterGType.
	* glib/Makefile.am : add file.
	* glib/Object.cs : add private method to invoke ClassInitializers.
	* gtk/glue/widget.c : some new glue for binding registration.
	* gtk/BindingAttribute.cs : new attr for registering key bindings.
	* gtk/Makefile.am : add file.
	* gtk/Widget.custom : add ClassInitializer method to scan types
	for [Binding] and register key bindings.

svn path=/trunk/gtk-sharp/; revision=38074
2004-12-23 22:59:59 +00:00
Mike Kestner
7f3171c814 merge to HEAD of jeroen and friends' work on the 2-4 branch. HEAD
is now tracking Gnome 2.6.

svn path=/trunk/gtk-sharp/; revision=35479
2004-10-29 20:33:07 +00:00
Mike Kestner
3eb398a12f 2004-09-23 Mike Kestner <mkestner@ximian.com>
* gtk/Widget.custom : new OnSetScrollAdjustments VM.
	* gtk/glue/widget.c : glue for new VM.

svn path=/trunk/gtk-sharp/; revision=34293
2004-09-23 16:50:18 +00:00
Mike Kestner
7a6d6b2128 2004-06-25 Mike Kestner <mkestner@ximian.com>
* */*.cs : add lgpl license blurb and clean up (c)'s.
	* */*.custom : add lgpl license blurb and clean up (c)'s.
	* */glue/*.c : add lgpl license blurb and clean up (c)'s.
	file adds without license from now on are punishable by wedgie.

svn path=/trunk/gtk-sharp/; revision=30401
2004-06-25 18:42:19 +00:00
Todd Berman
e525e9bd55 2004-06-10 Todd Berman <tberman@sevenl.net>
* gtk/Container.custom: add C# glue for virtualizing ChildType ()
        * gtk/glue/container.c: add C glue for virtualizing ChildType ()
        * gtk/Gtk.metadata: hide Container.ChildType ()
        * gtk/Widget.custom: Add ClearFlag, and SetFlag convenience methods.
        Also add various IsFlag bool properties for checking for flags.
        * gtk/glue/widget.c: Fix setting flags.
        * doc/*: updated Widget docs.

svn path=/trunk/gtk-sharp/; revision=29217
2004-06-10 18:37:05 +00:00
Todd Berman
9698c4d2f9 2004-06-07 Todd Berman <tberman@sevenl.net>
* gtk/Widget.custom: expose some easy bool properties for checking
        certain WidgetFlags. Make Allocation a settable property.
        * gtk/glue/widget.c: bit of glue to make Allocation settable.
        * gdk/Window.custom: expose UserData as a usable IntPtr property.
        * gdk/Gdk.metadata: hide old GetUserData/SetUserData methods.
        * doc/*: ran the updater.

svn path=/trunk/gtk-sharp/; revision=28974
2004-06-07 17:14:35 +00:00
Jeroen Zwartepoorte
1aaac84322 2004-06-07 Jeroen Zwartepoorte <jeroen@xs4all.nl>
* gtk/Widget.custom: Add FocusLineWidth property.
	* gtk/glue/widget.c: (gtksharp_gtk_widget_set_flags),
	(gtksharp_gtk_widget_style_get_int): glue for getting an integer style
	property.

svn path=/trunk/gtk-sharp/; revision=28967
2004-06-07 14:26:08 +00:00
Mike Kestner
369a588e93 2004-05-31 Mike Kestner <mkestner@ximian.com>
* configure.in : Bump version to 0.93 and tag.

2004-05-31  Jeroen Zwartepoorte  <jeroen@xs4all.nl>

	* gtk/Gtk.metadata: unhide WidgetFlags.
	* gtk/Widget.custom: add setter for GdkWindow prop. Add Flags prop.
        * gtk/glue/widget.custom: setter for window, accessors for flags.
	[Fixes #59337]

svn path=/trunk/gtk-sharp/; revision=28578
2004-05-31 18:48:25 +00:00
Mike Kestner
e83c55a242 2004-03-12 Mike Kestner <mkestner@ximian.com>
* */Makefile.am : automakify the build
	* */Makefile.in : kill
	* *.custom : remove System.Drawing dependencies
	* *.cs : remove System.Drawing dependencies
	* *-api.xml : mv to *-api.raw
	* glue/* : mv to lib specific gluelibs for glib, gdk, gtk, and glade.
	* gtk/gtk-symbols : alias GtkType to GType
	* sources/gtk-sharp-sources.xml : create .raw files. They are now
	transformed to .xml files by the metadata compilation step.

svn path=/trunk/gtk-sharp/; revision=23967
2004-03-12 21:18:11 +00:00