This way there's less redundancy, and if the library name changes in the
future, it will be changed only in one place.
Signed-off-by: Bertrand Lorentz <bertrand.lorentz@gmail.com>
* glib/Idle.cs:
* glib/Timeout.cs: Don't try to remove the handler from the managed
hashtable twice, add a comment explaining the need for the else branch.
svn path=/trunk/gtk-sharp/; revision=142364
* glib/Idle.cs:
* glib/Timeout.cs: Make sure to remove the unmanaged reference to the
delegate when we're disposed or finalized. In particular, this fixes a
problem where GLib.Object's PerformQueuedUnrefs was being called after
both the object and the handler had been GC'ed, resulting in a
segfault.
svn path=/trunk/gtk-sharp/; revision=142362
* glib/Global.cs: Kill the calling convention field again.
It breaks GLib 2.x compatibility in the generator and there is
probably no need to make the calling convention configurable.
* .cs, *.custom: Hardcode Cdecl calling convention instead of
using GLib's field.
svn path=/trunk/gtk-sharp/; revision=141283
* glib/Global.cs: Add a public constant field specifying the
calling convention used by GLib and depending libraries.
By now it's hardcoded to Cdecl as every non-Win32 runtime
should ignore this attribute.
* *.cs, *.custom: Use GLib.Global.CallingConvention for both
pinvokes and callbacks. Plugs a stack leak on Win32. All
pinvokes defaulted to StdCall and thus the stack was never
cleaned up.
svn path=/trunk/gtk-sharp/; revision=141175
* configure.in.in: Target .net 2.0 profile
* gapi-cdecl-insert: Kill. We are now using the UnmanagedFunctionPointerAttribute
for callbacks.
* glib/CdeclCallback: Mark obsolete.
* generator/*.cs:
* *.custom: Use [UnmanagedFunctionPointer (CallingConvention.Cdecl)] instead of
[GLib.CDeclCallback].
svn path=/trunk/gtk-sharp/; revision=137323
* glib/Idle.cs: add a Remove overload for consistency.
* glib/Timeout.cs: add a Remove overload for consistency.
[Fixes#356138]
svn path=/trunk/gtk-sharp/; revision=133702
* glib/Idle.cs:
* glib/Timeout.cs: add Add() overloads taking a priority
* glib/Makefile.am:
* glib/Property.cs: Property enum, used as argument for the new Add
overloads
svn path=/trunk/gtk-sharp/; revision=133444
* glib/Source.cs: rework proxy removal to avoid boxing profile.
* glib/Idle.cs: save src_id in proxy to facilitate removal.
* glib/Timeout.cs: save src_id in proxy to facilitate removal.
[Fixes#359561]
svn path=/trunk/gtk-sharp/; revision=96363
* glib/Idle.cs :
* glib/Timeout.cs : don't add the CDeclCallback attr to the
public delegate type, since it causes a MissingMethod exception
on win32.
svn path=/trunk/gtk-sharp/; revision=75656
* glib/Idle.cs : add locking on the source_handlers.
* glib/Source.cs : add locking on the source_handlers.
* glib/Timeout.cs : add locking on the source_handlers.
svn path=/trunk/gtk-sharp/; revision=41290
* glib/Source.cs: Add new base class to hold the method to be
called, and the proxy handler we use to keep references to them
and avoid a collection.
Exposes a new variables that references all the active Timeouts
and Idle handlers to avoid collection/
* glib/Timeout.cs: Implement TimeoutProxy that acts as a filter to
remove the proxy when the timeout is removed.
Register a TimeoutProxy when we create a timeout.
* glib/Idle.cs: Implement IdleProxy that acts as a filter to
remove the proxy when the idle handler is removed.
Register an IdleProxy when we create a timeout.
svn path=/trunk/gtk-sharp/; revision=34094
* */*.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
* glib/Log.cs: Make LogLevelFlags CLS compliant.
* glib/SignalCallback.cs: Set the constructor protection level to
protected, since it can not be instantiate.d
* glib/Marshaller.cs: Do not allow instances of this class as it
only exposes static methods.
* glib/Source.cs, glib/FileUtils.cs, glib/Timeout.cs,
glib/Thread.cs, glib/Markup.cs, glib/TypeConverter.cs: Ditto.
svn path=/trunk/gtk-sharp/; revision=20573