Commit graph

213 commits

Author SHA1 Message Date
Christian Hoff
291ee61b2d 2009-04-13 Christian Hoff <christian_hoff@gmx.net>
Add support for virtual methods(vm) to the generator.

	* parser/gapi2xml.pl: Generate a class_struct element with
	all members of the class structure. Dump the first (instance)
	parameter for signal and vm elements. Bump up parser version.
	* generator/GObjectVM.cs: Added. Support for GObject virtual methods.
	* generator/DefaultSignalHandler.cs: Signal specific part of vm
	generation.
	* generator/InterfaceVM.cs: New class for interface vms.
	* generator/ObjectBase.cs: Parse the class struct.

svn path=/trunk/gtk-sharp/; revision=131604
2009-04-13 17:44:48 +00:00
Christian Hoff
80632de9e5 2009-04-05 Christian Hoff <christian_hoff@gmx.net>
* gtk/Target.custom: custom implementation of TableNewFromList.
	* gtk/TargetList.custom: use Target.TableNewFromList method
	to convert the TargetList to a TargetEntry array.
	* gtk/glue/targetlist.c: deleted.

svn path=/trunk/gtk-sharp/; revision=131066
2009-04-05 08:36:46 +00:00
Christian Hoff
b456cc4f0b 2009-02-06 Christian Hoff <christian_hoff@gmx.net>
* gtk/Gtk.metadata: Fix TreeModel.EmitRowsReordered signature


svn path=/trunk/gtk-sharp/; revision=126098
2009-02-06 19:58:00 +00:00
Mike Kestner
1a16f66803 2009-01-08 Mike Kestner <mkestner@novell.com>
* generator/ReturnValue.cs: map gfilename* list elements to type
	ListBase.FilenameString so they are marshaled correctly.
	* glib/Marshaller.cs: handle FilenameStrings in ListPtrToArray.
	* gtk/Gtk.metadata: FileChooser.GetFilenames and ListShortcutFolders
	return type mangling to avoid custom implementations.
	* gtk/FileChooser*.custom: kill manual Filenames and ShortcutFolders.

svn path=/trunk/gtk-sharp/; revision=122802
2009-01-08 18:43:00 +00:00
Stephane Delcroix
24512d951a 2009-01-06 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.metadata: fix gtk_icon_theme_lookup_by_gicon return-type
	and name.

svn path=/trunk/gtk-sharp/; revision=122530
2009-01-06 09:40:54 +00:00
Stephane Delcroix
c003c94a2a 2009-01-06 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.metadata: fix gicon property name for CellRendererPixbuf

svn path=/trunk/gtk-sharp/; revision=122529
2009-01-06 09:40:23 +00:00
Stephane Delcroix
5658b0feb7 2009-01-06 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.metadata: fix gicon property, getter and setter for StatusIcon

svn path=/trunk/gtk-sharp/; revision=122528
2009-01-06 09:40:00 +00:00
Stephane Delcroix
af3707e207 2009-01-06 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.metadata: rename SetFromGicon to SetFromIcon and GetGicon to
	GetIcon.

svn path=/trunk/gtk-sharp/; revision=122527
2009-01-06 09:39:21 +00:00
Stephane Delcroix
866ba3561a 2009-01-06 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.metadata: fix the gtk_image_get_gicon signature (pass as out)

svn path=/trunk/gtk-sharp/; revision=122526
2009-01-06 09:39:08 +00:00
Stephane Delcroix
438788f2a9 2009-01-06 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.metadata: rename the Gicon property of GtkImage to Icon.

svn path=/trunk/gtk-sharp/; revision=122525
2009-01-06 09:38:45 +00:00
Mike Kestner
146deaa38c 2009-01-04 Mike Kestner <mkestner@novell.com>
* *: update to 2.14.  parser support for GSEALed fields. svn build
	now uses bootstrap-2.14.  integrate gio-sharp module.  

svn path=/trunk/gtk-sharp/; revision=122402
2009-01-04 22:29:56 +00:00
Mike Kestner
b519876db7 2008-12-01 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: automarshal TreeSelection.GetSelectedRows.
	* gtk/TreeSelection.custom: kill GetSelectedRows customization.
	[Fixes #450689]

svn path=/trunk/gtk-sharp/; revision=120458
2008-12-02 04:26:50 +00:00
Mike Kestner
d6b581ba94 2008-12-01 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: automarshal TreeView.Columns.
	* gtk/TreeView.custom: kill Columns customization.
	[Fixes #450685]

svn path=/trunk/gtk-sharp/; revision=120455
2008-12-02 03:59:48 +00:00
Stephane Delcroix
6a9baad400 2008-11-26 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Image.custom:
	* gtk/Gtk.metadata: obsolete Image.FromPixbuf, FromAnimation,
	FromFile setters in favor of already existing Pixbuf, Animation and
	File.

svn path=/trunk/gtk-sharp/; revision=120096
2008-11-26 20:34:27 +00:00
Mike Kestner
16a8111ff4 2008-11-15 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: mark the SpinButton::Output signal as manually
	marshaled to avoid a compat break.  The old manual marshaler expected
	and int RetVal and the new signal closure more accurately expects a
	bool.  Since returning 1 previously worked, we need to revert to the
	int expectation, even though bool is technically more correct.

svn path=/trunk/gtk-sharp/; revision=118944
2008-11-15 22:38:07 +00:00
Stephane Delcroix
8b431b91f3 2008-11-03 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.metadata:
	* gtk/StatusIcon.custom: Obsolete the duplicated properties.

svn path=/trunk/gtk-sharp/; revision=117797
2008-11-03 19:08:12 +00:00
Stephane Delcroix
3f81d52735 2008-10-28 Stephane Delcroix <sdelcroix@novell.com>
* gtk/Gtk.Metadata: hide ConnectSignals.

	* gtk/Builder.Custom: connect the signals, and the objects.
	GetObjectRaw method: allows very neat object inheritance.

svn path=/trunk/gtk-sharp/; revision=117257
2008-10-28 11:16:32 +00:00
Mike Kestner
324929ee4b 2008-09-09 Mike Kestner <mkestner@novell.com>
* generator/ReturnValue.cs: warning cleanup.
	* gtk/Gtk.metadata: warning cleanup.

svn path=/trunk/gtk-sharp/; revision=112616
2008-09-09 20:32:53 +00:00
Mike Kestner
2d0fc94e2f 2008-08-27 Mike Kestner <mkestner@novell.com>
* generator/ManagedCallString.cs: revert last change.  There are a
	lot of "broken" callback sigs out there which expose user data because
	it's not in the last parameter in the list.  I don't think we can 
	reasonably make a change to hide all those at this point.  This change
	at least hides all the user_data which comes right before a GError 
	param at the end of the list.  I need to follow up with a change which
	handles data parameters in any parameter position, but allows the user
	to mark "exposed" data params for compatibility reasons.
	* generator/Parameters.cs: hide data params which are at the end of a
	list behind an error param.
	* gtk/Gtk.metadata: mark an array parameter on 
	TextBufferDeserializeFunc.

svn path=/trunk/gtk-sharp/; revision=111716
2008-08-27 16:23:32 +00:00
Mike Kestner
cab2f46db5 2008-08-20 Mike Kestner <mkestner@novell.com>
* generator/ReturnValue.cs: use new ListPtrToArray marshaler for
	lists with known element types.
	* glib/Marshaller.cs: new ListPtrToArray marshaller with more
	aggressive list disposal.
	* gtk/Container.custom: remove manual Children impl.  Use Children
	in GetEnumerator instead of pinvoking directly.
	* gtk/Gtk.metadata: remove hidden attr and add element type and owned 
	for Container.GetChildren to generate it properly.

svn path=/trunk/gtk-sharp/; revision=111173
2008-08-20 19:48:26 +00:00
Mike Kestner
ae0831faf8 2008-08-04 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: mark IconTheme.LoadIcon return as owned.

svn path=/trunk/gtk-sharp/; revision=109594
2008-08-04 17:06:13 +00:00
Mike Kestner
7d611f77e4 2008-07-08 Mike Kestner <mkestner@novell.com>
Patch from Christian Hoff with a few minor tweaks.
	* generator/CallbackGen.cs: refactor to use ManagedCallString
	and drop a ton of redundant, half-baked code.
	* generator/ManagedCallString.cs: add Unconditional setup
	method for stuff that has to happen before the try block.
	Add "drop_first" concept so it can be reused by CallbackGen
	which doesn't drop first params.
	* generator/Signal.cs: use Unconditional method for prep.
	* generator/VirtualMethod.cs: use Unconditional method for prep.
	* gtk/Gtk.metadata: mark a ref param. [Fixes #394352]

svn path=/trunk/gtk-sharp/; revision=107494
2008-07-08 21:12:22 +00:00
Mike Kestner
d47afc7f66 2008-06-28 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: mark ListStore.Reorder array param.
	* gtk/ListStore.cs: compat obsolete method, though the old one 
	was useless.

svn path=/trunk/gtk-sharp/; revision=106853
2008-06-29 04:18:26 +00:00
Mike Kestner
a43acaf970 2008-06-28 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: mark a const string. [Fixes #404630]

svn path=/trunk/gtk-sharp/; revision=106823
2008-06-28 16:53:54 +00:00
Mike Kestner
42591ddc1b 2008-06-27 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: fix a couple out params.

svn path=/trunk/gtk-sharp/; revision=106756
2008-06-27 18:19:34 +00:00
Mike Kestner
9b08db1fae 2008-05-06 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: mark Rc.DefaultFiles accessors as null_term_array.

svn path=/trunk/gtk-sharp/; revision=102626
2008-05-06 15:23:29 +00:00
Mike Kestner
39ac15b6b6 2008-05-02 Mike Kestner <mkestner@novell.com>
* generator/GenerationInfo.cs:  refactor glue writer implementation
	so that GlueEnabled means there is a valid glue writer available.
	Avoids crashes in scenarios where an unwriteable glue path is provided
	to the generator.  Generate a glue function which scans the type
	hierarchy of an object for the most-derived unmanaged ancestor so
	that we can invoke class methods on it, avoiding infinite recursions.
	* generator/Signal.cs: revamp the default handler vm overriding 
	mechanism.  When class fields exist which can be directly hooked into,
	we now generate glue to override and chain up to unmanaged base funcs.
	This avoids some strangeness in the g_signal_override_class_closure
	and g_signal_chain_from_overridden reported in #332300 and also lays
	the groundwork for automated generation of non-signal VMs.
	* gtk/Gtk.metadata: block signal glue generation for a few types which 
	don't seem to install headers.

svn path=/trunk/gtk-sharp/; revision=102350
2008-05-02 17:10:05 +00:00
Mike Kestner
8a29f46b8f 2008-04-16 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: hide PrintContext.get_CairoContext.
	* gtk/PrintContext.custom: manual get_cairo_context implementation.
	Mono.Cairo assumes it is wrapping owned references, so we need to 
	take a ref out on the returned cairo_t pointer.
	* sample/GtkDemo/DemoPrinting.cs: dispose the CairoContext in
	to be a good citizen and avoid warnings.

svn path=/trunk/gtk-sharp/; revision=100942
2008-04-16 20:23:39 +00:00
Mike Kestner
a1c4fb0689 2008-04-15 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: hide GtkKey_ for manual impl.
	* gtk/Key.cs: manual implementation to manage delegate wrapper
	persistence.  [Fixes #378989]

svn path=/trunk/gtk-sharp/; revision=100753
2008-04-15 18:44:53 +00:00
Mike Kestner
c030d70107 2008-03-21 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: s/GtkDestroyNotify/GDestroyNotify in vms too.

svn path=/trunk/gtk-sharp/; revision=98772
2008-03-21 21:01:01 +00:00
Mike Kestner
209f353fc8 2007-12-06 Mike Kestner <mkestner@novell.com>
* * : update to 2.12 API.

svn path=/trunk/gtk-sharp/; revision=90823
2007-12-06 17:23:28 +00:00
Mike Kestner
9897c07f21 2007-11-16 Eskil Bylund <eskil@letterboxes.org>
* gtk/ListStore.custom:
	* gtk/TreeStore.custom: Implement InsertWithValues.
	* gtk/Gtk.metadata: Deprecate the old generated method.
	[Fixes #325040]

svn path=/trunk/gtk-sharp/; revision=89770
2007-11-16 16:32:44 +00:00
Pete Johanson
d094d64360 2007-10-04 Peter Johanson <peter@peterjohanson.com>
* gtk/Gtk.metadata: Make the public fields on Gtk.Rcstyle writeable.

svn path=/trunk/gtk-sharp/; revision=86911
2007-10-04 20:26:54 +00:00
Mike Kestner
c93ecb7f88 2007-09-11 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: virtual_method rules for GInterface generation.
	* generator/ReturnValue.cs (ToNative): new method for the virtual
	method generation.
	* generator/Parameters.cs (FromNative): null guarding.
	* generator/ManagedCallString.cs: rework for interface method
	generation including callback and error param support.
	* generator/CallbackGen.cs: Invoker support. new class that deals
	with persistence of native and wrapper delegates in native to managed
	callback method signatures.
	* generator/VirtualMethod.cs: support for generation of interface
	methods, and all the funky parameters that come with that.
	* generator/InterfaceGen.cs: Fill out the adapter implementation.
	* generator/MethodBody.cs: Initialize overload. Extend ThrowsException
	to support GError outside the last parameter slot.
	* glib/GInterfaceAttribute.cs: New attribute to mark interfaces and
	obtain adapter type.
	* glib/Object.cs (AddInterfaces): interface registration method.
	* glib/GInterfaceAdapter.cs: New abstract class for interface
	adapter generation.
	* glib/Makefile.am: add new files.

svn path=/trunk/gtk-sharp/; revision=85658
2007-09-11 20:34:24 +00:00
Mike Kestner
c2230278b3 2007-09-06 Mike Kestner <mkestner@novell.com>
* AssemblyInfo.cs.in : add IgnoreClassInitializers attr to all.
 	* generator/ObjectGen.cs : add custom-attr generation for objects.
 	* glib/ClassInitializerAttribute.cs : obsolete
 	* glib/IgnoreClassInitializersAttribute.cs : new assembly attr
 	to avoid a blind GetMethods reflection.
 	* glib/Makefile.am : add files
 	* glib/TypeInitializerAttribute.cs : new attr to specify init
 	method to be run at type registration.
 	* gtk/Widget.custom : remove the ClassInitializerAttr.
 	* gtk/Gtk.metadata : add a custom-attr node to GtkWidget.
 	* sample/Subclass.cs : use the IgnoreClassInitializers attr.

svn path=/trunk/gtk-sharp/; revision=85480
2007-09-07 14:40:46 +00:00
Mike Kestner
2a423bd228 2007-08-14 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : kill a few "new" warnings in FileChooser 
	implementors.

svn path=/trunk/gtk-sharp/; revision=84122
2007-08-14 21:41:06 +00:00
Mike Kestner
6e56090cfc 2007-07-17 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : map TreeModelFilter ctor param to prop to
	avoid subclass ctor exception. [Fixes #82115]

svn path=/trunk/gtk-sharp/; revision=82109
2007-07-17 15:46:56 +00:00
Mike Kestner
b108f0142e 2007-04-17 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : hide TreeModel.RowsReordered signal so we can do
	a correct implementation while maintaining compat with the existing 
	broken "NewOrder" parameter.
	* gtk/ListStore.custom : manual RowsReordered signal implementation.
	* gtk/RowsReorderedHandler.cs : manual implementation for preserve compat
	in the Args class. Adds NewChildOrder to replace the broken ChildOrder.
	* gtk/TreeModel.custom : manual RowsReordered signal declaration.
	* gtk/TreeModelFilter.custom : manual RowsReordered signal implementation.
	* gtk/TreeModelSort.custom : manual RowsReordered signal implementation.
	* gtk/TreeStore.custom : manual RowsReordered signal implementation.
	[Fixes #78512]

svn path=/trunk/gtk-sharp/; revision=75837
2007-04-17 17:42:58 +00:00
Mike Kestner
d90a1ff3f5 mark an internal win32 api obsolete
svn path=/trunk/gtk-sharp/; revision=73647
2007-03-02 18:08:38 +00:00
Brad Taylor
90e207c45b 2007-03-01 Brad Taylor <brad@getcoded.net>
* gtk/Dialog.custom: obsolete old, improperly bound
	  SetAlternateButtonOrderFromArray.
	* gtk/Gtk.metadata: fix binding of the
	  gtk_dialog_set_alternate_button_order_from_array. [Fixes #80706]


svn path=/trunk/gtk-sharp/; revision=73614
2007-03-01 18:49:32 +00:00
Mike Kestner
2469ba16ef 2007-02-16 Mike Kestner <mkestner@novell.com>
* glib/Object.cs : switch to ToggleRefs for all items created with
	CreateNativeObject.  This gets all managed subclasses, with a little
	overhang into simple wrappers.
	* glib/ToggleRef.cs : new class to manage the weak to strong ref 
	transitions as a native object flips between shared and unshared
	ownership.
	* gtk/Object.custom : revamp of the Destroyed signal handling. 
	* gtk/Gtk.metadata : hide destroy signal so we can deal with it 
	manually. [Fixes the reopen note of #72018.]

svn path=/trunk/gtk-sharp/; revision=73023
2007-02-16 16:18:59 +00:00
Mike Kestner
d224dd1cbc 2007-02-03 Mike Kestner <mkestner@novell.com>
* gtk/StatusIcon.custom : obsolete overload for backcompat on
	GetGeometry, and custom PresentMenu method to invoke new glue.
	* gtk/glue/statusicon.c : glue method to connect to gtk_menu_popup
	without having to go across the native/managed boundary multiple
	times using gtk_status_icon_position_menu wrapper.
	[Fixes #79500]

svn path=/trunk/gtk-sharp/; revision=72236
2007-02-03 17:55:23 +00:00
Mike Kestner
1d105a960b 2007-01-09 Mike Kestner <mkestner@novell.com>
* generator/CallbackGen.cs : add PersistUntilCalled method generation
	to the wrapper class.  Holds a GCHandle for the wrapper which is Freed
	when the delegate is invoked.
	* generator/MethodBody.cs : add "async" case for delegate scope.  Use
	this scope to identify a callback parameter that needs to persist 
	until the native side calls back.  Only valid for single-invoke
	callbacks.
	* gtk/Gtk.metadata : mark Print.RunPageSetupDialogAsync done_cb param
	with the new async scope.

svn path=/trunk/gtk-sharp/; revision=71767
2007-01-26 20:46:09 +00:00
Mike Kestner
7c0a6a4f9b 2006-08-07 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : remainder of new API massaging for existing 
	types.
	* gtk/Printer.custom : new static method.
	* gtk/TextBuffer.custom : serialization API implementations.

svn path=/trunk/gtk-sharp/; revision=63448
2006-08-07 20:45:47 +00:00
Mike Kestner
6898b3b5d5 2006-08-07 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : mark an out param in Style.LookupColor. 
	Some tweaks to duplicated label api.

svn path=/trunk/gtk-sharp/; revision=63440
2006-08-07 17:16:18 +00:00
Mike Kestner
64bddb3e2a 2006-08-07 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : mark an out param in Style.LookupColor. 

svn path=/trunk/gtk-sharp/; revision=63432
2006-08-07 15:35:27 +00:00
Mike Kestner
9ad00bd861 2006-08-07 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : markup for new Clipboard Rich text funcs. 
	* gtk/Clipboard.custom : manually implement RequestRichText and
	WaitForRichText methods to deal with array marshaling and delegate
	persistence.

svn path=/trunk/gtk-sharp/; revision=63430
2006-08-07 15:00:16 +00:00
Mike Kestner
98cf4082be 2006-08-04 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : a few tweaks to the 2.10 API found in doc/
	audit pass.

svn path=/trunk/gtk-sharp/; revision=63378
2006-08-04 23:24:29 +00:00
Mike Kestner
636ff0bc8a 2006-08-01 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata : fix a couple of compat breaks against 2.8.
	* gtk/TreeModelFilter.cs : hand implement ConvertChildIterToIter
	to match the 2.8 version of the method.

svn path=/trunk/gtk-sharp/; revision=63271
2006-08-02 20:37:23 +00:00
Mike Kestner
b912bb6afb 2006-07-14 Mike Kestner <mkestner@novell.com>
* sources/gtk-sharp-2.10-sources.xml : update to gtk+-2.10.0 
	and pango-1.13.3
	* sources/Makefile.am : ditto.
	* gtk/Gtk.metadata : some hides and renames to fix build.
	* gdk/gdk-api-2.10.raw : refresh.
	* gtk/gtk-api-2.10.raw : refresh.
	* pango/pango-api-2.10.raw : refresh.

svn path=/trunk/gtk-sharp/; revision=62598
2006-07-14 13:45:17 +00:00