Commit graph

2766 commits

Author SHA1 Message Date
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
b9d94385a6 2008-05-02 Mike Kestner <mkestner@novell.com>
* glib/Object.cs: Don't bother hooking VM into the class field
	if another managed ancestor has already done so.  Add a LogFunc
	printing a stack trace for the GObject log domain if GTK_SHARP_DEBUG
	is set in the environment.  It's a bit noisy to do unconditionally.

svn path=/trunk/gtk-sharp/; revision=102349
2008-05-02 16:58:46 +00:00
Mike Kestner
9bc789f2e6 2008-05-02 Mike Kestner <mkestner@novell.com>
* gtk/Object.custom: some NULL guarding in Dispose and 
	Destroy handling.

svn path=/trunk/gtk-sharp/; revision=102347
2008-05-02 16:51:37 +00:00
Mike Kestner
9ff6fc7588 2008-05-02 Mike Kestner <mkestner@novell.com>
* atk/Atk.metadata: hide Global.AddGlobalEventListener.
	* atk/Global.custom: AddGlobalEventListener impl.
	* atk/Util.custom: AddGlobalEventListenerHandler prop.
	[Fixes the rest of #365437]

svn path=/trunk/gtk-sharp/; revision=102333
2008-05-02 15:13:35 +00:00
Mike Kestner
50358ea1b0 2008-05-01 Mike Kestner <mkestner@novell.com>
* gtk/gtk-api-2.12.raw: regen, removes some private printing API.
	* source/gtk-sharp-2.12-sources.xml: hide some private printing API.

svn path=/trunk/gtk-sharp/; revision=102287
2008-05-01 17:49:26 +00:00
Mike Kestner
399c8e8586 2008-05-01 Mike Kestner <mkestner@novell.com>
* generator/InterfaceGen.cs: use CName and mangle it.  ClassFieldName
	is not guaranteed to be set now.
	* generator/Signal.cs: read ClassFieldName from the api xml.  Move 
	glue writer lookup inside the block to avoid exceptions for now.

svn path=/trunk/gtk-sharp/; revision=102276
2008-05-01 15:04:17 +00:00
Mike Kestner
0780ed3c0d 2008-04-30 Mike Kestner <mkestner@novell.com>
* generator/InterfaceGen.cs:
	* generator/Signal.cs: use generic signal marshaling instead of
	generating signature specific marshaling callbacks.
	* glib/glue/closure.c: glue for new closure impl.
	* glib/Object.cs: open up a couple hashes internally. 
	* glib/Signal.cs: hook in closure based connection and expose
	EmissionHook functionality for atk usage.
	* glib/SignalClosure.cs: new generic signal marshaling mechanism.
	* glib/ToggleRef.cs: null guarding in Target and let Signal remove
	itself from hash when it disposes itself.

svn path=/trunk/gtk-sharp/; revision=102241
2008-04-30 20:15:45 +00:00
Mike Kestner
a3f799ceb0 2008-04-30 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl: put class struct field in the signal elems.
	* atk/atk-api-2.12.raw:
	* gdk/gdk-api-2.12.raw:
	* gtk/gtk-api-2.12.raw:

svn path=/trunk/gtk-sharp/; revision=102238
2008-04-30 19:42:11 +00:00
Mike Kestner
4afdaf6602 2008-04-28 Mike Kestner <mkestner@novell.com>
* glib/Value.cs : Add GParam support and beef up the Boxed
	type marshaling to support types with New methods via reflection.

svn path=/trunk/gtk-sharp/; revision=102064
2008-04-28 19:00:48 +00:00
Mike Kestner
d5e5c13a1f 2008-04-28 Mike Kestner <mkestner@novell.com>
* glib/GType.cs : Add a few missing static fields.

svn path=/trunk/gtk-sharp/; revision=102063
2008-04-28 18:52:49 +00:00
Mike Kestner
e7489cc003 2008-04-24 Mike Kestner <mkestner@novell.com>
* gdk/Window.custom (Destroy): take a normal ref for the native
	method to release, and Dispose our toggle ref.  Fixes #382186.

svn path=/trunk/gtk-sharp/; revision=101734
2008-04-24 20:01:31 +00:00
Andrés G. Aragoneses
a0d608fcd2 * glib/Signal.cs: Remove unneeded cast.
svn path=/trunk/gtk-sharp/; revision=101704
2008-04-24 17:18:59 +00:00
Andrés G. Aragoneses
d0b8f4c279 * atk/Object.custom: custom protected method for firing
the ChildrenChanged signal.
* glib/Signal.cs: first implementation of a managed
method for emitting signals.

svn path=/trunk/gtk-sharp/; revision=101700
2008-04-24 17:11:11 +00:00
Mike Kestner
acc917f686 webservice contributions from carlos@cmartin.tk
svn path=/trunk/gtk-sharp/; revision=101473
2008-04-22 17:41:39 +00:00
Mike Kestner
6b6692211f 2008-04-19 Mike Kestner <mkestner@novell.com>
* gtk/glue/statusicon.c: fix time parameter usage.  Not even sure
	how that compiled.  I <3 C.

svn path=/trunk/gtk-sharp/; revision=101222
2008-04-19 22:40:57 +00:00
Mike Kestner
504323bf30 2008-04-17 Mike Kestner <mkestner@novell.com>
* atk/glue/misc.c: glue for vms and singleton setup.
	* atk/Misc.custom: add OnThreadsEnter, OnThreadsLeave, and
	SetSingletonInstance members for Bridge implementors.
	[More of #365437]

svn path=/trunk/gtk-sharp/; revision=101092
2008-04-18 01:10:08 +00:00
Mike Kestner
35bc523511 2008-04-17 Mike Kestner <mkestner@novell.com>
* glib/Object.cs: add Harden method to reduce the reflection 
	overhead in Gnome.Program.

svn path=/trunk/gtk-sharp/; revision=101024
2008-04-17 16:32:44 +00:00
Mike Kestner
d2a74c9a37 2008-04-17 Mike Kestner <mkestner@novell.com>
* glib/ToggleRef.cs: Add a Harden method to switch to a standard
	ref and just leak it.
	* gtk/Application.cs: revert the QuitPrepare stuff since it didn't
	always work.

svn path=/trunk/gtk-sharp/; revision=101021
2008-04-17 16:17:37 +00:00
Mike Kestner
cff6726824 2008-04-17 Mike Kestner <mkestner@novell.com>
* gtk/TreeModelAdapter.custom:
	* gtk/TreeModelFilter.custom:
	* gtk/TreeModelSort.custom: reworked patch from Christian Hoff to
	throw NotImplementedException for SetValue methods.  Those should 
	never have been added to the interface, and it's better to throw
	an exception than have infinite recursion kill the program.
	[Fixes #379542]

svn path=/trunk/gtk-sharp/; revision=100996
2008-04-17 14:32:37 +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
11286d19c6 2008-04-15 Mike Kestner <mkestner@novell.com>
* generator/ReturnValue.cs: use new GLib.Opaque.OwnedCopy for owned
	opaque return values.
	* glib/Opaque.cs: introduce OwnedCopy property to support returning
	owned opaque instances from native to managed callbacks. 
	[Fixes #374641]

svn path=/trunk/gtk-sharp/; revision=100762
2008-04-15 19:43:16 +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
4ef0131109 2008-04-15 Mike Kestner <mkestner@novell.com>
* gtk/FileSystemModel.custom: remove dead file. 

svn path=/trunk/gtk-sharp/; revision=100749
2008-04-15 18:18:09 +00:00
Mike Kestner
772790dcb0 2008-04-15 Mike Kestner <mkestner@novell.com>
* glib/Marshaller.cs: marshal null string arrays as a null IntPtr[].
	[Fixes #378514]

svn path=/trunk/gtk-sharp/; revision=100744
2008-04-15 17:43:55 +00:00
Mike Kestner
def947943a 2008-04-14 Mike Kestner <mkestner@novell.com>
* gtk/Application.cs: add QuitPrepare event for Gnome.Program usage.

svn path=/trunk/gtk-sharp/; revision=100650
2008-04-14 16:22:26 +00:00
Marek Habersack
20d764bb6f 2008-04-08 Marek Habersack <mhabersack@novell.com>
* generator/InterfaceGen.cs: added a check for null obj in the
	generated GetObject method.

svn path=/trunk/gtk-sharp/; revision=100145
2008-04-08 20:59:34 +00:00
Mike Kestner
28a6603695 webservice contributions from deejay1@srem.org
svn path=/trunk/gtk-sharp/; revision=100125
2008-04-08 18:23:04 +00:00
Mike Kestner
1c0083d2ca webservice contribution from thindil2@gmail.com
svn path=/trunk/gtk-sharp/; revision=100108
2008-04-08 14:48:26 +00:00
Mike Kestner
752e056edc webservice contribution from carlos@cmartin.tk
svn path=/trunk/gtk-sharp/; revision=100082
2008-04-08 01:51:15 +00:00
Mike Kestner
fbb7ce0553 webservice contribution from carlos@cmartin.tk
svn path=/trunk/gtk-sharp/; revision=100055
2008-04-07 21:59:40 +00:00
Mike Kestner
767e2126e7 webservice contribution from carlos@cmartin.tk
svn path=/trunk/gtk-sharp/; revision=100053
2008-04-07 21:39:28 +00:00
Mike Kestner
2f990f1396 2008-04-04 Mike Kestner <mkestner@novell.com>
* atk/Atk.metadata: add a few more owned refs.

svn path=/trunk/gtk-sharp/; revision=99884
2008-04-04 21:27:04 +00:00
Mike Kestner
213a3b99e3 2008-04-04 Mike Kestner <mkestner@novell.com>
* glib/Global.cs: renamed from Program.cs.  Program.Name is now 
	Global.ProgramName to try to avoid clashes with existing Gnome.Program
	usage.
	* gtk/Application.cs: s/GLib.Program.Name/GLib.Global.ProgramName.

svn path=/trunk/gtk-sharp/; revision=99875
2008-04-04 18:45:13 +00:00
Mike Kestner
bdeb30bbad 2008-04-04 Mike Kestner <mkestner@novell.com>
* atk/Atk.metadata: markup all the Ref* methods to indicate owned refs.
	* generator/ReturnValue.cs: Add owned object ToNative handling.
	* generator/VirtualMethod.cs: Split ToNative call from managed method
	invocation to avoid duplicate calls in null checking scenarios.
	* glib/Object.cs: add OwnedHandle property for use by language binding
	code which needs to pass owned refs to native methods.

svn path=/trunk/gtk-sharp/; revision=99849
2008-04-04 16:10:08 +00:00
Mike Kestner
1a64851790 2008-04-04 Mike Kestner <mkestner@novell.com>
* atk/Object.custom: take out a ref on the return value of
	OnRefChild.  Also add some null guarding and default to IntPtr.Zero
	on exceptions.

svn path=/trunk/gtk-sharp/; revision=99826
2008-04-04 05:00:42 +00:00
Mike Kestner
b1d6be02d5 2008-04-01 Mike Kestner <mkestner@novell.com>
* generator/InterfaceGen.cs: support "generic" interface
	implementations like those exposed by gio.  This is specifically for
	libraries which return GTypes which are not exposed by the library
	but which implement GInterfaces which are exposed by the library.

svn path=/trunk/gtk-sharp/; revision=99541
2008-04-01 16:08:33 +00:00
Andrés G. Aragoneses
4320fd5ffd Reflect correct name.
svn path=/trunk/gtk-sharp/; revision=99309
2008-03-29 21:47:47 +00:00
Andrés G. Aragoneses
c909f241f4 Fix build, I'm dumb (related: r99178, r99183)
svn path=/trunk/gtk-sharp/; revision=99184
2008-03-28 11:35:53 +00:00
Andrés G. Aragoneses
fe733e53a3 oops, forgot this on r99178
svn path=/trunk/gtk-sharp/; revision=99183
2008-03-28 11:32:45 +00:00
Andrés G. Aragoneses
f4ca73fd5d * atk/Object.custom: custom properties for overriding class methods.
* atk/Makefile.am: include Object.custom.
* atk/glue/object.c: glue to override class methods.
* atk/glue/Makefile.am: include object.c.
(Patch reviewed by mkestner)

svn path=/trunk/gtk-sharp/; revision=99178
2008-03-28 11:02:39 +00:00
Andrés G. Aragoneses
5fabaace5e * glib/Program.cs: Add new static class for utility property, moving
the code to call g_set_prgname() from gtk/Application.cs to here,
and changing return value of g_set_program_name from bool to void.
* gtk/Application.cs: Use Program.Name as a replacement of
calling the native function g_set_prgname().
* glib/Makefile.am: add Program.cs.
(Patch reviewed by mkestner)

svn path=/trunk/gtk-sharp/; revision=99134
2008-03-27 15:59:26 +00:00
Mike Kestner
de56504f8b 2008-03-21 Mike Kestner <mkestner@novell.com>
* bootstrap-2.12: bump svn version
	* generator/CallbackGen.cs: add dnotify support to invoker.
	Store and respond with incoming UserData params. Start using 
	__prefixed private vars to avoid collisions with parameters, 
	like the 'result' params in gio.
	* generator/ManagedCallString.cs: use new data/dnotify invoker
	ctors.
	* generator/MethodBody.cs:
	* generator/Parameters.cs: don't link "out" length params to 
	preceding strings.
	* generator/VMSignature.cs: don't require UserData to be last
	param, since it can have things like error after it.

svn path=/trunk/gtk-sharp/; revision=98782
2008-03-22 01:30:42 +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
173a4a188b 2008-03-17 Mike Kestner <mkestner@novell.com>
* en/Gtk/HBox.xml:
	* en/Gtk/VBox.xml: move example tag outside summary.

svn path=/trunk/gtk-sharp/; revision=98514
2008-03-18 01:49:27 +00:00
Mike Kestner
2a1bb876bf kill a debug cwl
svn path=/trunk/gtk-sharp/; revision=98393
2008-03-15 18:09:32 +00:00
Mike Kestner
b218a96484 2008-03-14 Mike Kestner <mkestner@novell.com>
* pango/AttrList.custom: pass copies of the attrs to insert*
	since the list assumes ownership.
	* pango/Makefile.am: add new custom file.
	* pango/Pango.metadata: hide AttrList.Insert* for custom impl.

svn path=/trunk/gtk-sharp/; revision=98381
2008-03-15 03:15:32 +00:00
Mike Kestner
51292d20b3 2008-03-12 Mike Kestner <mkestner@novell.com>
* glib/GType.cs: add an Init method for explicit initialization.

svn path=/trunk/gtk-sharp/; revision=98056
2008-03-12 16:15:06 +00:00
Mike Kestner
708907e311 2008-03-04 Mike Kestner <mkestner@novell.com>
* bootstrap-2.12: update version to 2.12 and tag

svn path=/trunk/gtk-sharp/; revision=97344
2008-03-04 18:58:18 +00:00
Mike Kestner
51edec5cee end of the Gtk stubs
svn path=/trunk/gtk-sharp/; revision=97086
2008-03-01 20:46:39 +00:00