Commit Graph

314 Commits

Author SHA1 Message Date
Mike Kestner
a8f16beaa7 2005-02-01 Fredrik Nilsson <jymdman@home.se>
* glib/Marshaller.cs : DateTime marshaling fix.

svn path=/trunk/gtk-sharp/; revision=39952
2005-02-01 22:35:48 +00:00
Dan Winship
de70fff09f * glib/Object.cs (AddNotification, RemoveNotification): methods to
subscribe to the "notify" signal (with property details). [#71684]

	* glib/GLibSharp.voidObjectIntPtrSignal.cs: autogenerated, for
	notifications

	* glib/NotifyHandler.cs: sort of autogenerated

svn path=/trunk/gtk-sharp/; revision=39717
2005-01-28 16:44:30 +00:00
Mike Kestner
8152f4899e 2005-01-26 Mike Kestner <mkestner@novell.com>
* glib/Value.cs : add a private debugging DllImport for ref_counts
	since the glue is there already.  g_value_get_object returns an
	unowned ref, so don't pretend like we own it. Make get_Val work for
	GObject subclasses. [Fixes #71125]

svn path=/trunk/gtk-sharp/; revision=39615
2005-01-27 00:50:46 +00:00
Dan Winship
67e7fc486b * glib/Marshaller.cs (StringFormat): Calls String.Format and makes
sure the output has no unescaped "%"s. (For wrapping printf-style
	unmanaged methods with String.Format-style managed ones.)

	* gtk/MessageDialog.custom (MessageDialog): use it. #71405. Also,
	use gtk_message_dialog_new_with_markup by default, and add an
	overloaded ctor that lets you use the non-markup version.

	* gtk/Gtk.metadata: hide the GtkMessageDialog ctors so we don't
	get ellipsis warnings about them.

	* sample/GtkDemo/DemoApplicationWindow.cs:
	* sample/GtkDemo/DemoDialog.cs: simplify the MessageDialog usage;
	don't need to call String.Format separately now.

svn path=/trunk/gtk-sharp/; revision=39256
2005-01-20 15:45:13 +00:00
Dan Winship
7a30d17a4d * glib/Object.cs (ConnectDefaultHandlers): Don't call a signal's
ConnectionMethod if it's already been called for a superclass of
	the current class. #71278

svn path=/trunk/gtk-sharp/; revision=38957
2005-01-14 19:54:07 +00:00
Mike Kestner
b6b39dbbfe 2005-01-11 Mike Kestner <mkestner@novell.com>
* glib/Argv.cs : add automatic progname handling.
	* gdk/Global.custom : kill obsolete warnings by using GLib.Argv.

svn path=/trunk/gtk-sharp/; revision=38729
2005-01-11 20:49:50 +00:00
Mike Kestner
8fd87b2e0a 2005-01-08 Mike Kestner <mkestner@novell.com>
* configure.in : kill a ton of redundant stuff.
	* AssemblyInfo.cs.in : moved here, only need one.
	* Makefile.include : rules for building generated assemblies.
	* Makefile.am : removed gtk-sharp-2.0.pc handling.
	* */AssemblyInfo.cs.in : killed
	* */Makefile.am : refactored out a ton of rules to an include.
	* */*-pc.in : added Cflags entries pointing to the gapi files.
	* generator/CodeGenerator.cs : add -I: synonym --include.
	* gnomevfs/gnome-vfs-api.raw : remamed from gnomevfs-api.raw.
	* gtk/gtk-sharp-2.0.pc.in : moved here from top.
	* parser/gapi-fixup.cs : add --symbol arg to merge sym files.
	* sources/gtk-sharp-sources.xml : remamed gnome-vfs-api.raw.

svn path=/trunk/gtk-sharp/; revision=38551
2005-01-09 00:26:45 +00:00
Mike Kestner
56a0288b7b 2004-12-30 Mike Kestner <mkestner@novell.com>
* glib/Object.cs : mark the Data hashtable obsolete.

svn path=/trunk/gtk-sharp/; revision=38201
2004-12-30 18:59:09 +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
e38ece1fdb 2004-12-21 Mike Kestner <mkestner@novell.com>
* glib/Argv.cs : argv marshaling class.
	* glib/Makefile.am : add file.
	* glib/Marshaller.cs : mark the argv methods obsolete.
	* gtk/Application.cs : use GLib.Argv. [Fixes #68812]

svn path=/trunk/gtk-sharp/; revision=38046
2004-12-21 19:47:55 +00:00
Dan Winship
a610fb9a79 * generator/GUnicharGen.cs: generatable for gunichar, using
GLib.Marshaller.CharToGUnichar and .GUnicharToChar [#70704]

        * generator/SymbolTable.cs (SymbolTable): add a GUnicharGen.

        * generator/Makefile.am (sources): add GUnicharGen.cs

        * parser/gapi2xml.pl (addPropElem): g_param_spec_unichar() has
        type "gunichar" not "unichar".

        * gtk/gtk-api.raw: Regen

        * glib/Marshaller.cs: Import CharToGUnichar's glue method by the
        right name

svn path=/trunk/gtk-sharp/; revision=37998
2004-12-20 22:05:21 +00:00
Mike Kestner
256bc09aee 2004-12-16 Tambet Ingo <tambet@ximian.com>
* glib/Opaque.cs : hold a weakref in the hash, not a strong ref.

svn path=/trunk/gtk-sharp/; revision=37840
2004-12-16 17:09:58 +00:00
Mike Kestner
993d91fa31 2004-12-07 Mike Kestner <mkestner@novell.com>
* */*.cs : s/glue-2.0/glue-2 so that dllimport works on win32.
	* */*.custom : s/glue-2.0/glue-2
	* */glue/makefile.win32 : s/glue-2.0/glue-2
	* */glue/Makefile.am : s/glue-2.0/glue-2

svn path=/trunk/gtk-sharp/; revision=37324
2004-12-07 19:03:55 +00:00
Mike Kestner
3d6cb09562 2004-12-03 Jorge Garcia <jgarcia@ac.upc.es>
* glib/Type.cs:          add Int64 and UInt64 support.
	* glib/TypeConverter.cs: add Int64 and UInt64 support.
	* glib/Value.cs:         add Int64 and UInt64 support.

svn path=/trunk/gtk-sharp/; revision=37049
2004-12-03 20:04:18 +00:00
Todd Berman
6d9785c7f7 2004-12-01 Todd Berman <tberman@off.net>
* generator/StructGen.cs: Check to see if a GType is going to be
        generated. If not, generate a GType.Pointer. This fixes bug
        #70017.
        * glib/TypeConverter.cs: Remove the .IsValueType check, as those
        now have GType properties.
        * gda/Gda.metadata: Change GdaValue.GType to GdaValue.GdaType.
        * doc/en/Gda/Value.xml: Regenerated to reflect new API.

svn path=/trunk/gtk-sharp/; revision=36912
2004-12-01 21:41:10 +00:00
Mike Kestner
70d245e7fe 2004-11-30 Mike Kestner <mkestner@novell.com>
* glib/glue/value.c : add back some code lost in the merge of
	2-4-branch. [Fixes #70045]


svn path=/trunk/gtk-sharp/; revision=36845
2004-11-30 14:36:10 +00:00
Dan Winship
9d04b4dd06 Redo child property handling; now we generate classes to hold
the
        child properties for a given widget in a container, and generate
        the child properties as properties on those classes.
        
        * parser/gapi2xml.pl (addPropElem): don't prepend "child_" to
        child prop names any more

        * generator/ClassBase.cs (ClassBase): keep childprops separate
        from properties
        (GenChildProperties): create a subclass of Gtk.ContainerChild
        containing the container type's child properties, and override
the
        Container indexer to return that type.

        * generator/ObjectGen.cs (Generate): call GenChildProperties

        * generator/Property.cs:
        * generator/ChildProperty.cs: Simplify these a bunch, since
        * child
        properties are now represented as C# properties as well. Also
add
        [GLib.Property(cname)] and [Gtk.ChildProperty(cname)]
attributes.

        * glib/Makefile.am (sources): add PropertyAttribute.cs

        * glib/PropertyAttribute.cs: attribute used to label
        GObject properties

        * gtk/Makefile.am (sources): add ChildPropertyAttribute.cs

        * gtk/gtk-api.raw: regenerate for parser changes (remove
        "Child"/"child_" from child property names).

        * gtk/ChildPropertyAttribute.cs: attribute used to label
        GtkContainer child properties

        * gtk/Container.custom: define the ContainerChild class, and an
        indexer to return instances of it.

        * doc/en/Gtk/: update for container child property change

svn path=/trunk/gtk-sharp/; revision=36284
2004-11-18 20:31:22 +00:00
Dan Winship
598f8e28e5 * glib/Value.cs: add new constructors for enum and boxed values
that take the name of the type rather than an object/property
        name pair; this way they work for both GObject properties and
        GtkContainer child properties.

        * glib/glue/value.c (gtksharp_value_create_from_type_name): glue
        for that

        * glib/Opaque.cs (GetOpaque): Fix this.

        * generator/Property.cs (Generate): Use the new GLib.Value
        constructors. (Fixes setting of enum-valued child properties.)

svn path=/trunk/gtk-sharp/; revision=36174
2004-11-16 18:03:58 +00:00
Mike Kestner
cd10436742 2004-11-09 Mike Kestner <mkestner@novell.com>
* */Makefile.am : make the Obsolete warnings shaddup.

svn path=/trunk/gtk-sharp/; revision=35999
2004-11-11 03:58:14 +00:00
Dan Winship
e1dc10e4c8 * glib/Object.cs (CreateNativeObject): virtualize
(Object(GType)): Mark this ctor Obsolete

	* gtk/Gtk.metadata: disable the generated GType ctor on Gtk.Widget

	* gtk/Widget.custom (Widget, CreateNativeObject,
	Widget_ParentSet): Connect to our own ParentSet event from
	CreateNativeObject and the GType ctor, and keep a static Hashtable
	of parented widgets, so that adding a managed widget to a
	container keeps both the GObject and the managed object alive.

	* generator/ObjectGen.cs (GenCtors): handle the disable_gtype_ctor
	flag. Also, mark GType ctors [Obsolete]

svn path=/trunk/gtk-sharp/; revision=35885
2004-11-09 14:22:39 +00:00
Dan Winship
df41dcc177 * parser/gapi2xml.pl (parseInitFunc, addPropElem): handle
GtkContainer child properties

	* generator/Property.cs:
	* generator/ChildProperty.cs: make Property subclassable and add a
	"ChildProperty" subclass.

	* generator/Makefile.am (sources): add ChildProperty.cs

	* generator/ClassBase.cs: handle "childprop" nodes by creating
	ChildProperty objects.

	* glib/Value.cs (explicit operator EnumWrapper): use
	g_value_get_flags() rather than g_value_get_enum() when
	appropriate.

	* glib/glue/value.c (glibsharp_value_holds_flags): glue for that

	* gtk/gtk-api.raw: regen to pick up child properties

	* gtk/Gtk.metadata:
	* gtk/Container.custom: hide the auto-generated
	Gtk.Container.ChildGetProperty and implement a nicer one by hand.

	* gtk/glue/container.c (gtksharp_container_child_get_property):
	utility function to set up an appropriate GValue for us

svn path=/trunk/gtk-sharp/; revision=35702
2004-11-05 16:47:15 +00:00
Todd Berman
532947448e 2004-11-04 Todd Berman <tberman@off.net>
* glib/ListBase.cs: In Empty, call FreeList, not Dispose.

svn path=/trunk/gtk-sharp/; revision=35665
2004-11-04 20:01:40 +00:00
Todd Berman
838882b81a 2004-11-04 Todd Berman <tberman@off.net>
* glib/ListBase.cs: Make sure to properly check if it is a
        GLib.Object subclass.

svn path=/trunk/gtk-sharp/; revision=35654
2004-11-04 19:43:10 +00:00
Todd Berman
cac3c4a368 2004-11-04 Todd Berman <tberman@off.net>
* doc/en/GLib/ListBase.xml: Add documentation for ListBase.Empty
        * glib/ListBase.cs: Add ListBase.Empty, frees the children and the
        list.
        * glib/Markup.cs: Fix Alex's tomboy crash, sending -1 instead of
        Length.
        * gtk/FileChooserDialog.custom:
        * gtk/FileChooserWidget.custom: properly free the list.

svn path=/trunk/gtk-sharp/; revision=35650
2004-11-04 19:29:01 +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
a5ee1fee3b mark Boxed [Obsolete]
svn path=/trunk/gtk-sharp/; revision=35191
2004-10-21 01:08:10 +00:00
Mike Kestner
cd85c4b3de 2004-09-29 Mike Kestner <mkestner@ximian.com>
* glib/GString.cs : new marshaling class for GStrings.  Used by
	generator to map GString params and returns onto managed strings.
	* glib/Makefile.am : add new file.

svn path=/trunk/gtk-sharp/; revision=34523
2004-09-29 17:47:51 +00:00
Mike Kestner
d75f4ef6ca 2004-09-26 Mike Kestner <mkestner@ximian.com>
* glib/Idle.cs : proxy hash keys are uints, not ints.

svn path=/trunk/gtk-sharp/; revision=34420
2004-09-27 00:28:16 +00:00
Miguel de Icaza
95978e0ce7 2004-09-18 Miguel de Icaza <miguel@ximian.com>
* 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
2004-09-20 16:43:16 +00:00
Mike Kestner
0d9c6b74e2 kill a C.WL
svn path=/trunk/gtk-sharp/; revision=33124
2004-08-31 19:18:28 +00:00
Mike Kestner
da322c565f 2004-08-31 Mike Kestner <mkestner@ximian.com>
* glib/Marshaller.cs : fix utc offseting for time_tToDateTime.
	[Fixes #60960]

svn path=/trunk/gtk-sharp/; revision=33107
2004-08-31 16:36:32 +00:00
Mike Kestner
b6bd5a901a 2004-08-30 Tambet Ingo <tambet@ximian.com>
* glib/ListBase.cs : indexing bugfix for CopyTo.

svn path=/trunk/gtk-sharp/; revision=33038
2004-08-30 13:10:44 +00:00
Mike Kestner
7a395905ac 2004-08-25 Mike Kestner <mkestner@ximian.com>
* generator/Signal.cs : use typeof instead of Type.GetType to
	specify the event args type.
	* glib/ObjectManager.cs : beef up the type lookup code using
	Assembly.LoadWithPartialName to fix a very popular win32 bug.
	[Fixes #61139 and friends]  Thanks to John Luke for expert
	patch testing on win32.

svn path=/trunk/gtk-sharp/; revision=32831
2004-08-25 18:16:17 +00:00
John Luke
0343bf93e6 2004-08-25 John Luke <john.luke@gmail.com>
* glib/MainLoop.cs: MainLoop implementation by Jeroen
        [Fixes #61493]

svn path=/trunk/gtk-sharp/; revision=32830
2004-08-25 18:11:41 +00:00
Mike Kestner
fdcc41a70b 2004-08-17 Mike Kestner <mkestner@ximian.com>
* pango/Pango.metadata : metadata for the pango audit.
	* pango/*.custom : customizations to fix audited API.
	* doc/en/* : docs for some api changes and additions.
	* glib/Marshaller.cs : some gunichar marshal-fu.
	* glib/glue/unichar.c : a new glue method.

svn path=/trunk/gtk-sharp/; revision=32462
2004-08-17 20:43:49 +00:00
Mike Kestner
5c0078ec1c 2004-07-24 Mike Kestner <mkestner@ximian.com>
* gdk/Gdk.metadata : hide Window.Destroy.
	* gdk/Window.custom : manually impl Destroy since it releases our ref.
	* glib/Object.cs : support unset of Raw values.

svn path=/trunk/gtk-sharp/; revision=31448
2004-07-24 23:36:39 +00:00
Mike Kestner
d9f518cd57 2004-07-09 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : allow null for ctor(GLib.Object).

svn path=/trunk/gtk-sharp/; revision=31408
2004-07-23 14:54:48 +00:00
Mike Kestner
652b7fc82f remove a bunch of doc comments
svn path=/trunk/gtk-sharp/; revision=30951
2004-07-09 15:25:39 +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
80726b6454 2004-06-12 Todd Berman <tberman@sevenl.net>
* glib/ObjectManager.cs: change CreateInstance overload being used
        to properly pick up protected ctors.

svn path=/trunk/gtk-sharp/; revision=29412
2004-06-12 17:48:58 +00:00
Mike Kestner
112f066abf 2004-06-11 Mike Kestner <mkestner@ximian.com>
* configure.in : deal with a csc-ism in source paths.
	* */Makefile.am : use the GENERATED_SOURCES var.
	* */glue/Makefile.am : add -no-undefined for win32 dll builds.

svn path=/trunk/gtk-sharp/; revision=29367
2004-06-11 18:19:41 +00:00
Mike Kestner
c1440d52d1 2004-06-10 Mike Kestner <mkestner@ximian.com>
* configure.in : AC_SUBST GACUTIL_FLAGS. require mono-0.95 (though
	it's really cvs bleeding edge.)
	* * AssemblyInfo.cs.in : s/pub/snk.  delaysign=no.
	* * Makefile.am : s/pub/snk.  portability fixes to csc from John
	Luke.  Switch to GACUTIL_FLAGS.
	* doc/Makefile.am : don't build docs, install raw xml to the prefix.

svn path=/trunk/gtk-sharp/; revision=29227
2004-06-10 19:45:20 +00:00
Todd Berman
32116e27c7 2004-06-09 Todd Berman <tberman@sevenl.net>
* gdk/Gdk.metadata: mark Window.SetBackPixmap as null_ok.
        * glib/Object.cs: in set_Raw, if value == IntPtr.Zero, dont put that
        in the weakref hashtable, as it creates later issues with gtk+
        returning null and gtk# mistaking if for an object.

svn path=/trunk/gtk-sharp/; revision=29126
2004-06-09 17:53:05 +00:00
Todd Berman
01e3962bc8 2004-06-04 Todd Berman <tberman@sevenl.net>
* glib/Object.cs: ConnectDefaultHandlers needs to look at public api
        as well for virtual methods.
        * gtk/CellRenderer.custom:
        * gtk/Container.custom:
        * gnome/CanvasItem.custom: Add DefaultSignalHandler to remove the need
        for the static ctor.

svn path=/trunk/gtk-sharp/; revision=28851
2004-06-05 01:01:07 +00:00
Mike Kestner
73632b2747 2004-05-28 Mike Kestner <mkestner@ximian.com>
* generator/ObjectGen.cs : adjust to ObjectManager ns change.
	* glib/ManagedValue.cs : move to GLib and internalize.
	* glib/Object.cs : adjust to ObjectManager ns change.
	* glib/ObjectManager.cs : move to GLib.
	* glib/TypeConverter.cs : move to GLib.  return ManagedValue.GType
	when we can't match a type instead of GType.None.
	* gtk/*.custom: adjust for new TypeConverter ns and behavior.

2004-05-28  Mike Kestner  <mkestner@ximian.com>

	* en/* : run updater. fix a few *Sharp copy/pastisms.

svn path=/trunk/gtk-sharp/; revision=28362
2004-05-28 16:59:21 +00:00
Mike Kestner
2eada8c950 2004-05-27 Mike Kestner <mkestner@ximian.com>
* glib/Object.cs: mark GType property public.

svn path=/trunk/gtk-sharp/; revision=28286
2004-05-27 16:35:21 +00:00
Mike Kestner
7a518421ab 2004-05-25 Mike Kestner <mkestner@ximian.com>
* configure.in : don't expand the GAPI Makefile.
	* parser/Makefile.am : remove SUBDIRS.
	* parser/gapi2xml.pl : remove GAPI::Metadata usage.
	* parser/GAPI/* : kill. long live gapi-fixup.

svn path=/trunk/gtk-sharp/; revision=28085
2004-05-25 21:27:41 +00:00
Mike Kestner
9f54a63375 2004-05-19 Mike Kestner <mkestner@ximian.com>
* gtk/Container.custom : add CallbackInvoke and use it in OnForall.

2004-05-19  Mike Kestner  <mkestner@ximian.com>

	* generator/Makefile.am : add TimeTGen.cs
	* generator/SymbolTable.cs : use new TimeTGen.
	* generator/StringGen.cs : s/GLibSharp/GLib
	* generator/TimeTGen.cs : generatable to marshal time_t.
	* glib/time_t_CustomMarshaler.cs : kill
	* glib/Makefile.am : remove time_t_CustomMarshaler.cs
	* glib/Markup.cs : s/GLibSharp/GLib
	* glib/Marshaller.cs : move to GLib namespace. Add methods to
	marshal time_t to and from DateTime.
	* glib/glue/time_t.c : kill
	* glib/glue/Makefile.am : remove time_t.c
	* glib/glue/makefile.win32 : remove time_t.o
	* gnome/*.custom : use GLib.Marshaller instead of the time_t custom
	marshaler.
	* gtk/*.custom : s/GLibSharp/GLib

svn path=/trunk/gtk-sharp/; revision=27704
2004-05-19 18:57:28 +00:00
Zoltan Varga
fed2de1fe7 2004-05-18 Zoltan Varga <vargaz@freemail.hu>
* glib/time_t_CustomMarshaler.cs: Fix custom marshalling after runtime
	changes.

svn path=/trunk/gtk-sharp/; revision=27621
2004-05-18 19:19:37 +00:00
Mike Kestner
0d052516f1 2004-05-18 Mike Kestner <mkestner@ximian.com>
* glib/MissingIntPtrCtorException.cs : new exception to throw if
	unable to access an IntPtr ctor on a GLib.Object subclass.  We need
	an IntPtr ctor to be able to wrap arbitrary object handles.
	* glib/Object.cs : have NativeType call LookupGType.
	* glib/ObjectManager.cs : throw the new exception in a try/catch.

svn path=/trunk/gtk-sharp/; revision=27563
2004-05-18 05:06:10 +00:00
Mike Kestner
ffe268c415 2004-05-17 Mike Kestner <mkestner@ximian.com>
* generator/SignalHandler.cs : fix some broken/redundant generation in
	the Object/Struct wrapping for sig params.
	* glib/Object.cs : internalize/protect lots of API that shouldn't need
	to be used by non-subclass/non-glib code. Return GType.Object as GType.
	* glib/Value.cs : use internal GLib.Object.NativeType prop.
	* sample/TestDnd.cs : use ToString instead of TypeName.

svn path=/trunk/gtk-sharp/; revision=27530
2004-05-17 17:52:00 +00:00
Todd Berman
e474eaca89 2004-05-14 Todd Berman <tberman@sevenl.net>
* glib/Object.cs: make static GLib.Object.LookupGType protected for now.        * gtk/CellRenderer.custom: code to allow for subclassing and
        implementing a custom cell renderer.
        * gtk/Makefile.am: add custom to build.
        * gtk/glue/Makefile.am: add glue to build.
        * gtk/glue/cellrenderer.c: glue code to override get_size and render
        from cellrenderer.
        * sample/CustomCellRenderer.cs: new sample to show how to implement a
        custom cell renderer.
        * sample/Makefile.am: add CustomCellRenderer sample.

svn path=/trunk/gtk-sharp/; revision=27426
2004-05-14 20:25:57 +00:00
Mike Kestner
27a3f69caf 2004-05-10 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : fix GBoxed GLib.Value setting.
	[fixes #58229]

svn path=/trunk/gtk-sharp/; revision=27045
2004-05-10 18:54:14 +00:00
Mike Kestner
c9f1eadc11 2004-05-07 Mike Kestner <mkestner@ximian.com>
[Derived from a patch by Ben Maurer]
	* generator/Ctor.cs : generate code to detect subclassing and handle
	GType registration and native object creation properly.
	* generator/Parameters.cs : add PropertyName accessor for param attr.
	* generator/Property.cs : use a new GLib.Value ctor.
	* glib/ObjectManager.cs : redo hash access.
	* glib/Object.cs : CreateNativeObject method to invoke g_object_newv
	and some refactoring of RegisterGType and LookupGType.
	* glib/Value.cs : make gtype field an IntPtr.
	* glib/glue/object.c : glue for g_object_newv use.
	* glib/glue/value.c : new glue for value creation.
	* gtk/Dialog.custom : fix a ctor declaration for auto-reg.
	* gtk/Gtk.metadata : mark a couple property_name attrs as examples.
	* sample/Subclass.cs : use auto-GType-registration now.

svn path=/trunk/gtk-sharp/; revision=26916
2004-05-07 13:42:59 +00:00
Mike Kestner
31ef54a54a 2004-05-05 Mike Kestner <mkestner@ximian.com>
* generator/BoxedGen.cs : remove g_value_init DllImport and change
	(g|s)et_boxed to use a glue method to simplify dllmapping.
	* glib/Value.cs : add Init method.
	* glib/glue/value.cs : add get/set_boxed glue methods.
	* */*.config.in : remove libgobject mappings for dlls that no longer
	need them.

svn path=/trunk/gtk-sharp/; revision=26787
2004-05-05 20:14:14 +00:00
Mike Kestner
01acd7f576 2004-05-05 Mike Kestner <mkestner@ximian.com>
* generator/Signal.cs : rmv Handle param to SignalCallback ctor calls.
	s/GtkSharp.Signal*/GLib.Signal*.
	* generator/SignalHandler.cs : rmv Handle param to ctors as it's
	redundant.  s/GtkSharp.Signal*/GLib.Signal*. Use new Connect/Disconnect
	instead of generating DllImports into libgobject directly.
	* glib/SignalArgs.cs : move the the GLib namespace.
	* glib/SignalCallback.cs : expose Connect and Disconnect methods to
	hide some pinvokes that were previously generated. Also move to the
	GLib namespace.
	gnome/*Handler.cs : update to new SignalHandler API.
	gnome/CanvasProxy.cs : ditto
	gnome/void*Signal.cs : ditto

svn path=/trunk/gtk-sharp/; revision=26778
2004-05-05 18:24:04 +00:00
Mike Kestner
57f06abbfe 2004-05-03 Mike Kestner <mkestner@ximian.com>
* */Makefile.am : fix gacutil for new package switch
	* */*.pc.in : fix -libs var for new dll path

svn path=/trunk/gtk-sharp/; revision=26644
2004-05-03 21:05:51 +00:00
Mike Kestner
866254b519 hush
svn path=/trunk/gtk-sharp/; revision=26602
2004-05-03 16:26:00 +00:00
Mike Kestner
01ef68965d 2004-04-30 Mike Kestner <mkestner@ximian.com>
* configure.in : lookup gacutil and error out if not found.
	* */Makefile.am : add install-data-local and uninstall-local targets
	for GAC installation.  Add gtk-sharp.pub target to cp the key in for
	distcheck.
	* */AssemblyInfo.cs.in : remove ../ from key path for VPATH build.

svn path=/trunk/gtk-sharp/; revision=26485
2004-05-01 03:38:54 +00:00
Mike Kestner
14e3877005 2004-04-30 Mike Kestner <mkestner@ximian.com>
* configure.in : remove BASE_DEPENDENCIES LIBS and CFLAGS and
	expose more specific versions for glue building.
	* */glue/Makefile.am : use more specific versions of LIBS and CFLAGS
	to reduce the ldd footprint.

svn path=/trunk/gtk-sharp/; revision=26438
2004-04-30 19:08:16 +00:00
Mike Kestner
5f80b97227 2004-04-30 Mike Kestner <mkestner@ximian.com>
* configure.in : AC_SUBST an API_VERSION=1.0.0.0 for the
	AssemblyVersionAttributes.
	* */AssemblyInfo.cs.in : s/@VERSION@/@API_VERSION@/

svn path=/trunk/gtk-sharp/; revision=26435
2004-04-30 18:24:16 +00:00
Mike Kestner
687219d656 2004-04-30 Mike Kestner <mkestner@ximian.com>
* */AssemblyInfo.cs.in : s/@VERSION@.0.0/@VERSION@/

svn path=/trunk/gtk-sharp/; revision=26431
2004-04-30 16:55:15 +00:00
Mike Kestner
e4c7f28e66 2004-04-29 Mike Kestner <mkestner@ximian.com>
* configure.in : expand the AssemblyInfo.cs files.
	* */AssemblyInfo.cs.in : new assembly info files.
	* */Makefile.am : dist, make, and clean assmbly info files.

svn path=/trunk/gtk-sharp/; revision=26356
2004-04-29 22:19:30 +00:00
Owen Fraser-Green
ce55d821aa Minor fixed to get gstreamer working.
svn path=/trunk/gtk-sharp/; revision=26341
2004-04-29 21:21:57 +00:00
Mike Kestner
9bc8928f88 2004-04-29 Mike Kestner <mkestner@ximian.com>
* configure.in : expand the new config files.
	* */*config.in : the per-assembly config files.
	* */Makefile.am : dist, clean, and install the configs.
	* gnome/*.c* : fix some errant DllImports.

svn path=/trunk/gtk-sharp/; revision=26301
2004-04-29 15:00:24 +00:00
Mike Kestner
3595f79bc3 2004-04-13 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : fix a csc-breaker.

svn path=/trunk/gtk-sharp/; revision=25437
2004-04-13 20:54:49 +00:00
Mike Kestner
1ac00ff205 2004-04-12 Mike Kestner <mkestner@ximian.com>
[Rework of a patch from Ben Maurer to turn GLib.Value
	into a valuetype.]
	* generator/BoxedGen.cs : fix operators for new valuetype GValues.
	* generator/ByRefGen.cs : new generatable for byref value types.
	* generator/Makefile.am : add ByRefGen.cs.
	* generator/MethodBody.cs : remove GValue special casing.
	* generator/Property.cs : rework value handling.
	* generator/Signal.cs : fix base virtual method value passing.
	* generator/SymbolTable.cs : map GValue to ByRefGen.
	* glib/Object.cs : rework GetProperty and SetProperty.
	* glib/Value.cs : make it a value type.
	* glib/ValueArray.cs : fix GValue passing.
	* glib/glue/value.c : rework for valuetype GValues.
	* gnome/Program.custom : fix GValue passing
	* gtk/Gtk.metadata : make TreeModel.GetValue value param pass_as=ref.
	* gtk/ListStore.custom : fix GValue passing
	* gtk/NodeStore.cs : fix GValue passing
	* gtk/TextTag.custom : fix GValue passing
	* gtk/TreeModelSort.custom : fix GValue passing
	* gtk/TreeStore.custom : fix GValue passing

svn path=/trunk/gtk-sharp/; revision=25368
2004-04-12 15:54:57 +00:00
Mike Kestner
e7bf3a279f 2004-04-07 Mike Kestner <mkestner@ximian.com>
* generator/ClassBase.cs : remove default ctor generation and
	hasDefaultConstructor field.
	* generator/Ctor.cs : chain to base (IntPtr.Zero).
	* generator/StructBase.cs : remove hasDefaultConstructor usage.
	* glib/Object.cs : remove Object () ctor.  Add Ben's GetGType
	method, although nothing uses it yet.  Still working on integrating
	the remainder of Ben's patch.
	* gtk/Gtk.metadata : remove all the disabledefaultctor rules.
	* */*.custom : add base (IntPtr.Zero) or this (...) chaining for
	all ctors.

svn path=/trunk/gtk-sharp/; revision=25184
2004-04-07 19:15:01 +00:00
Gonzalo Paniagua Javier
7cdacd91af 2004-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* glib/Value.cs: added StructLayout attribute as requested by the
	runtime. Now --aot works again.

svn path=/trunk/gtk-sharp/; revision=25128
2004-04-07 03:41:13 +00:00
Mike Kestner
05e4e0b9d3 2004-04-04 Mike Kestner <mkestner@ximian.com>
* generator/SymbolTable.cs : don't use StringGen for gunichar.
	* glib/glue/unichar.c : glue to fetch a gunichar as a utf8 string.
	* glib/glue/Makefile.am : add unichar.c
	* glib/glue/makefile.win32 : add unichar.c
	* gtk/Gtk.metadata : hide TextIter.GetChar
	* gtk/TextIter.custom : manually impl Char prop. [fixes #53425]

svn path=/trunk/gtk-sharp/; revision=25054
2004-04-05 18:31:34 +00:00
Mike Kestner
f445ce3b19 2004-04-01 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : NULL check for g_value_get_string Thanks to Jeroen
	Zwartepoorte for the bug report with patch [fixes #54979].

svn path=/trunk/gtk-sharp/; revision=24910
2004-04-01 17:10:27 +00:00
Mike Kestner
1a1f5e1702 2004-03-16 Mike Kestner <mkestner@ximian.com>
* generator/ObjectGen.cs : don't gen a Signals hash per class.
	* generator/Signal.cs : gen checks for [ConnectBefore].
	* generator/SignalHandler.cs : add connect_flags param to ctor.
	* glib/ConnectBeforeAttribute.cs : new attr
	* glib/Makefile.am : add new file
	* glib/Object.cs : add before/after hashes and EventLists
	* gnome/CanvasProxy.cs : use AfterSignals and AfterHandlers.

svn path=/trunk/gtk-sharp/; revision=24157
2004-03-16 19:43:04 +00:00
Mike Kestner
5e03bca76f hush
svn path=/trunk/gtk-sharp/; revision=24156
2004-03-16 19:24:53 +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
Radek Doulik
21ddf92108 2004-02-17 Radek Doulik <rodo@ximian.com>
* glib/Value.cs: use g_value_set_pointer for
	GType.Pointer/IWrapper objects

	* glib/TypeConverter.cs: return GType.Pointer for Opaque objects
	which do not have GType property

svn path=/trunk/gtk-sharp/; revision=23197
2004-02-17 21:49:24 +00:00
Mike Kestner
46b9b156a4 2004-02-16 Mike Kestner <mkestner@ximian.com>
* glib/TypeConverter.cs : check for GType prop on all types,
	not just value types, before we fall back to managed values.
	* glib/Value.cs : use handle to set_boxed for IWrappers.

svn path=/trunk/gtk-sharp/; revision=23158
2004-02-17 05:09:13 +00:00
Zoltan Varga
d39ef22678 2004-02-12 Zoltan Varga <vargaz@freemail.hu>
* glib/time_t_CustomMarshaler.cs: Update after custom marshaling
	changes.

svn path=/trunk/gtk-sharp/; revision=23018
2004-02-12 12:26:25 +00:00
Mike Kestner
cbd7afb761 2004-02-06 Mike Kestner <mkestner@ximian.com>
* glib/time_t_CustomMarshaler.cs : use TimeSpan.TotalSeconds, not
	TimeSpan.Seconds.

svn path=/trunk/gtk-sharp/; revision=22842
2004-02-06 19:49:02 +00:00
Mike Kestner
4251d47fe9 2004-02-04 Mike Kestner <mkestner@ximian.com>
* generator/CustomMarshalerGen.cs : impl MarshalReturnType.
	* generator/Method.cs : add CustomMarshalerGen return type handling.
	* generator/Property.cs : rework property type selection.
	* generator/SymbolTable.cs : add time_t mapping
	* glib/time_t_CustomMarshaler.cs : impl native to managed methods.
	* glue/time_t.c : remove debugging code.

svn path=/trunk/gtk-sharp/; revision=22772
2004-02-04 19:54:46 +00:00
Mike Kestner
1a679f2356 2004-02-03 Mike Kestner <mkestner@ximian.com>
* glib/List.cs : add a ctor overload to create empty lists with
	a specific element_type.
	* glib/SList.cs : ditto

svn path=/trunk/gtk-sharp/; revision=22765
2004-02-04 17:21:22 +00:00
Mike Kestner
75f7d1226d 2004-02-03 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : remove double free of ManagedValues. Fixes the
	unfiled (cough, tberman, cough) bug in managed types as tree
	store values.

svn path=/trunk/gtk-sharp/; revision=22745
2004-02-03 15:42:58 +00:00
Mike Kestner
d723bf3cef 2004-02-03 Mike Kestner <mkestner@ximian.com>
* glib/ManagedValue.cs : null check on Free.
	* glib/Value.cs : some ManagedValue rework because we unset now.

svn path=/trunk/gtk-sharp/; revision=22728
2004-02-03 06:24:42 +00:00
Mike Kestner
84781a4d74 2004-02-02 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : add dispose queue and idle handler so we can
	unset GValues that are created by the binding ctors.
	[Fixes #53490]

svn path=/trunk/gtk-sharp/; revision=22709
2004-02-02 18:21:02 +00:00
Mike Kestner
ae5ab001be 2004-01-29 Mike Kestner <mkestner@ximian.com>
* glib/time_t_CustomMarshaler.cs : new custom marshaler form time_t.
	* glue/time_t.c : glue for time_t.
	* glue/Makefile.am : add time_t.c
	* glue/makefile.win32 : ditto

svn path=/trunk/gtk-sharp/; revision=22595
2004-01-29 21:20:59 +00:00
Mike Kestner
d4f6f6e928 2004-01-27 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : only g_free values we allocate.
	[Fixes #51180]

svn path=/trunk/gtk-sharp/; revision=22559
2004-01-28 03:59:14 +00:00
Mike Kestner
fc42fa2c04 2004-01-27 Mike Kestner <mkestner@ximian.com>
* glib/TypeConverter.cs : lookup GTypes for boxed value types.
	* glib/Value.cs : fix boxed type handling in object ctor.
	[Fixes #51043]

svn path=/trunk/gtk-sharp/; revision=22555
2004-01-27 23:55:13 +00:00
Peter Williams
4feed7bb77 2004-01-18 Peter Williams <peter@newton.cx>
* glib/Marshaller.cs (ArrayPtrToArgv, ArgvToArrayPtr): new
	functions for marshalling and unmarshalling string arrays
	to/from char **. Not pretty, but lets us call gtk_init()
	in Gtk.

	* gtk/Application.cs (do_init): New helper function to handle
	passing args to Gtk. Uses above functions.
	(Init): Use do_init, take a new progname parameter.
	(InitCheck): Same.

doc/:

2003-01-13  Peter Williams  <peter@newton.cx>

	* en/Gtk/Application.xml: Update Init, InitCheck functions
	for new progname argument. Fix a paste-o in the docs for InitCheck.

svn path=/trunk/gtk-sharp/; revision=22237
2004-01-19 03:24:25 +00:00
Mike Kestner
6ec923833e 2004-01-13 Mike Kestner <mkestner@ximian.com>
* generator/Signal.cs : use ValueArray to assemble parms arg for
	g_signal_chain_from_overriden call.  Initialize retval GValue for
	above.
	* glib/Object.cs : g_signal_chain_from_overridden parms are IntPtrs.
	* glib/TypeConverter.cs : handle unboxed ValueTypes.
	* glib/Value.cs : handle unboxed struct types.  add ctor for init'd
	unset Values.
	* glib/ValueArray.cs : new binding for GValueArray used by VMs.
	* glue/valuearray.c : field accessors
	* glue/Makefile.am : add new glue file
	* glue/makefile.win32 : add new glue file
	[Fixes #52680]

svn path=/trunk/gtk-sharp/; revision=22069
2004-01-14 18:05:50 +00:00
Mike Kestner
6e3879ca4b 2003-12-30 Mike Kestner <mkestner@ximian.com>
* glib/Object.cs (ConnectDefaultHandlers): reflection code to
	hook up overridden default signal handlers.
	* glue/type.c  (gtksharp_override_virtual_method): peek the gtype
	and ref the class if it isn't created yet.
	* sample/Subclass.cs : update to override Button.OnClicked.

svn path=/trunk/gtk-sharp/; revision=21559
2003-12-30 22:09:42 +00:00
John Luke
7e9700901f add Idle.Remove method
svn path=/trunk/gtk-sharp/; revision=21483
2003-12-24 19:37:41 +00:00
Mike Kestner
ff263164e3 2003-12-15 Mike Kestner <mkestner@ximian.com>
* generator/BoxedGen.cs : s/uint/GLib.GType
	* generator/ManualGen.cs : add a ctor to pass ToNative handle name
	* generator/ObjectGen.cs : s/uint/GLib.GType
	* generator/Signal.cs : use GLib.GType and call OverrideVirtualMethod
	* generator/SymbolTable.cs : make GType a ManualGen and update a few
	ManualGens to the new signatures.
	* glib/DefaultSignalHandler.cs : s/Type/System.Type
	* glib/ManagedValue.cs : s/uint/GLib.GType
	* glib/Object.cs : s/uint/GLib.GType, add OverrideVirtualMethod.
	* glib/Type.cs : s/uint/IntPtr, add static fields for fundamentals.
	make it a value type and add ==, !=, Equals, and GetHashCode.
	* glib/TypeConverter.cs : use new GType statics, not fundamentals.
	* glib/Value.cs : use new GType statics, not fundamentals.
	* gnome/*.custom : s/uint/GLib.GType
	* gtk/*Store.custom : use GType statics, not fundamentals.
	* sample/Subclass.cs : s/uint/GLib.GType.

svn path=/trunk/gtk-sharp/; revision=21181
2003-12-15 16:59:25 +00:00
Mike Kestner
ba1d3996a4 2003-12-10 Mike Kestner <mkestner@ximian.com>
* generator/CallbackGen.cs : kill ref_owned generation
	* generator/ClassBase.cs : use simple GetObject w/o ref_owned
	* generator/ManagedCallString.cs : new class to generate native
	to managed method calls.
	* generator/Method.cs : kill ref_owned generation
	* generator/MethodBody.cs : kill ref_owned generation
	* generator/Property.cs : kill ref_owned generation
	* generator/Signal.cs : generate delegates and vtable connect
	methods for all signals. Mark VMs with new attr.
	* generator/StructBase.cs : kill ref_owned generation
	* glib/DefaultSignalHandlerAttribute.cs : new attr to mark
	virtual methods.
	* glib/Object.cs : add overload for GetObject that defaults
	to ref_owned=false. Add extern for VM override glue.

svn path=/trunk/gtk-sharp/; revision=21005
2003-12-10 22:56:49 +00:00
Mike Kestner
bc37b4ff76 2003-12-08 Mike Kestner <mkestner@ximian.com>
* generator/Signal.cs : add virtual method generation for the
	default signal handlers.
	* glib/Object.cs : add g_signal_chain_from_overridden extern

svn path=/trunk/gtk-sharp/; revision=20920
2003-12-09 05:01:22 +00:00
Mike Kestner
4ff326786d 2003-12-04 Mike Kestner <mkestner@ximian.com>
* glib/Object.cs : kill unused WrapperClassAttribute. [#51458]

svn path=/trunk/gtk-sharp/; revision=20781
2003-12-04 17:59:31 +00:00
Ettore Perazzoli
7a10147c5c * sample/TestDnd.cs: New.
* gtk/TargetEntry.custom: New.

* glue/dragcontext.c: New.

* glib/Object.cs: New public property TypeName in class Object.

* gdk/DragContext.custom: New.

svn path=/trunk/gtk-sharp/; revision=20754
2003-12-03 20:23:25 +00:00
Miguel de Icaza
f1e095a87b 2003-11-27 Miguel de Icaza <miguel@ximian.com>
* 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
2003-11-28 05:29:34 +00:00
Mike Kestner
912980c396 2003-11-04 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : add set to Val prop
	* glue/Makefile.am : build nodestore.c
	* glue/makefile.win32 : link nodestore.o
	* glue/nodestore.c : new, glue for TreeModel implementation
	* gtk/NodeStore.cs : new tree store implementation
	* gtk/ITreeNode.cs : new interface for nodestore node types
	* gtk/TreeNode.cs : abstract class for deriving nodestore nodes
	* gtk/TreeNodeAttribute.cs : tree node marking attr
	* gtk/TreeNodeValueAttribute.cs : node column marking attr
	* gtk/TreeView.custom : add ctor(NodeStore)

svn path=/trunk/gtk-sharp/; revision=19630
2003-11-04 23:20:15 +00:00
Daniel Kornhauser Eisenberg
737717e5a5 2003-10-27 Daniel Kornhauser Eisenberg <dkor@alum.mit.edu>
* glib/ListBase.cs : Added Indexer to allow [] based adressing
        * glib/List.cs : Added DllImport for Indexer
        * glib/SList.cs : Added DllImport for Indexer

svn path=/trunk/gtk-sharp/; revision=19420
2003-10-27 04:58:42 +00:00
Mike Kestner
686688d760 2003-10-15 Mike Kestner <mkestner@ximian.com>
* generator/Property.cs : use new Opaque value ctor and
	rework get/set blocks for Opaque types. [Fixes #47959]
	* glib/Opaque.cs : kill explicit IntPtr operator.
	* glib/Value.cs : rework Opaque value ctor.

svn path=/trunk/gtk-sharp/; revision=19088
2003-10-15 20:13:50 +00:00
Mike Kestner
3f0273bece 2003-10-10 Mike Kestner <mkestner@ximian.com>
* */makefile.win32 : remove api dir from build and fix clean target

svn path=/trunk/gtk-sharp/; revision=18864
2003-10-10 18:58:19 +00:00
Mike Kestner
732cdf7729 2003-10-08 Mike Kestner <mkestner@ximian.com>
* */Makefile.in : rework the prefix handling for duncan's packaging.

svn path=/trunk/gtk-sharp/; revision=18778
2003-10-08 22:13:47 +00:00
Mike Kestner
9eeca84abe 2003-10-07 Mike Kestner <mkestner@ximian.com>
* glib/ListBase.cs : assume ref_owned=false for GObject lists.
	[Fixes #49145]

svn path=/trunk/gtk-sharp/; revision=18710
2003-10-07 18:08:32 +00:00
Rachel Hestilow
69e51261af 2003-09-17 Rachel Hestilow <rachel@nullenvoid.com>
* glib/DelegateWrapper.cs: Remove 'RemoveIfNotAlive'
	and revamp the memory management to use destroy
	notification.

	* generator/CallbackGen.cs: Do not generate the call to
	RemoveIfNotAlive.

	* gtk/GtkSharp.GtkClipboardGetFuncNative,
	GtkSharp.GtkClipboardClearFuncNative: Do not call
	RemoveIfNotAlive.

svn path=/trunk/gtk-sharp/; revision=18163
2003-09-18 03:49:18 +00:00
Gonzalo Paniagua Javier
0663cb37ba 2003-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* gdk/Pixbuf.custom: use windows dll name. Removed DllImport that is
	already in the generated file.

	* glib/Thread.cs: use windows dll name.

	* gtk/ThreadNotify.cs: close <remark> comment.

svn path=/trunk/gtk-sharp/; revision=17731
2003-08-30 00:26:38 +00:00
Gonzalo Paniagua Javier
0996f5f7fd 2003-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* gconf/GConf/Value.cs: implemented support for lists.

	* glib/ListBase.cs: implemented the IDisposable stuff and created a
	new method, FreeList, to free the list when needed.

	* glade/HandlerNotFoundException.cs: make it derive from
	SystemException. Don't override Message, the message is created in the
	.ctor.

svn path=/trunk/gtk-sharp/; revision=17646
2003-08-26 21:26:30 +00:00
John Luke
350fd53fa7 2003-08-19 John Luke <jluke@cfl.rr.com>
* glib/ListBase.cs:  Add convenience .Append (string) method

svn path=/trunk/gtk-sharp/; revision=17416
2003-08-19 21:07:24 +00:00
Mike Kestner
23464e6514 2003-07-23 Mike Kestner <mkestner@ximian.com>
[Equal credit to Ettore Perazzoli <ettore@ximian.com> for fixing
	all the bugs in the initial patch]
	* */*.custom : fix incorrect usage of new Object (IntPtr) where
	Glib.Object.GetObject should've been used.  add ref_owned param
	to GetObject calls.
	* generator/CallbackGen.cs : setup ref_owned in bodies
	* generator/ClassBase.cs : add ref_owned to GetObject FromNative call
	* generator/Method.cs : setup ref_owned in bodies
	* generator/Property.cs : setup ref_owned in bodies
	* generator/SignalHandler.cs : pass ref_owned to GetObject
	* generator/StructBase.cs : setup ref_owned in bodies
	* glib/Object.cs : kill Ref/Unref methods.  Don't want it to be
	easy for users to screw with ref counts, or make it look like they
	should need to.
	(GetObject): add ref_owned param and ref/unref to remain at 1
	* glib/Value.cs : pass ref_owned to GetObject

svn path=/trunk/gtk-sharp/; revision=16581
2003-07-23 17:19:21 +00:00
Martin Willemoes Hansen
55683e5118 * glib/Object.cs: Changed getData, setData to a single Data property
Different keys are allowed now.

svn path=/trunk/gtk-sharp/; revision=15915
2003-07-04 07:13:19 +00:00
Martin Willemoes Hansen
34f971ceb1 glib/Type.cs: Added ToString
svn path=/trunk/gtk-sharp/; revision=15589
2003-06-23 21:46:31 +00:00
Mike Kestner
3353e2d35e 2003-06-14 Mike Kestner <mkestner@speakeasy.net>
* glib/Value.cs : cast uint to TypeFundamentals

svn path=/trunk/gtk-sharp/; revision=15386
2003-06-14 17:40:51 +00:00
Rachel Hestilow
fe699e9fbb 2003-05-29 Rachel Hestilow <rachel@nullenvoid.com>
* gconf/Value.cs: Update to use new string marshalling.

	* generator/StringGen.cs, ConstStringGen.cs: Added.
	* generator/IGeneratable.cs: Add new method ToNativeReturn.
	* generator/CallbackGen.cs: Implement ToNativeReturn. Call
	ToNativeReturn for the return statement. Fix a couple of
	places where s_ret was being used incorrectly for m_ret.
	* generator/ClassGen.cs, EnumGen.cs, ManualGen.cs,
	SimpleGen.cs, StructBase.cs: Implement ToNativeReturn.
	* generator/SignalHandler.cs: Call ToNativeReturn for the
	return statement, instead of CallByName.
	* generator/SymbolTable.cs: Use StringGen for gchar, char,
	and gunichar, and ConstStringGen for their const variants.
	Add a new method wrapper for ToNativeReturn.
	(Trim): Add a special-case for const strings so that the
	const is not stripped. Otherwise there is no way of
	resolving the const case.

	* glade/XML.custom: Update to use new string marshalling.

	* glib/Marshaller.cs: Added.
	* glib/GException.cs, Markup.cs, ObjectManager.cs,
	Value.cs: Update to use new string marshalling.
	* glib/Object.cs: Remove old g_type_name DllImport
	as it is no longer used.

	* glue/fileselection.c (gtksharp_file_selection_get_fileop_entry):
	Mark this as const return.

	* gtk/ColorSelection.custom, FileSelection.custom,
	SelectionData.custom: Update to use new string marshalling.

svn path=/trunk/gtk-sharp/; revision=15286
2003-06-10 18:09:47 +00:00
Rachel Hestilow
4faf8b6b74 2003-05-22 Rachel Hestilow <rachel@nullenvoid.com>
* glib/ManagedValue.cs, glib/Value.cs: A few old-style
	DllImports snuck in during my last commit; update them
	to use Win32 dll names.

svn path=/trunk/gtk-sharp/; revision=14819
2003-05-22 23:39:04 +00:00
Rachel Hestilow
f1a77c0e62 2003-05-19 Rachel Hestilow <rachel@nullenvoid.com>
* glib/ManagedValue.cs, TypeConverter.cs: Added.
	* glib/Value.cs: Make Value inherit from IDisposable, and
	move dtor to Dispose. Add generic object constructor
	with support for ManagedValue. Add a new Val property
	which will call the appropriate explicit cast.

	* glue/value.c: Add new glue function
	gtksharp_value_get_value_type.

	* gtk/TreeViewColumn.custom: Added.
	* gtk/ListStore.custom, TreeStore.custom: Add a number
	of SetValue overloads. Add convenience functtion
	AppendValues. Add new ctor that takes System.Type instead
	of GLib.TypeFundamentals. Add a GetValue convenience wrapper.
	* gtk/TreeView.custom: Add AppendColumn convenience
	functions.

	* sample/ManagedTreeViewDemo.cs: Added.
	* sample/Makefile.in: Update.
	* sample/TreeViewDemo.cs: Update to use new convenience
	APIs.

svn path=/trunk/gtk-sharp/; revision=14691
2003-05-19 07:18:52 +00:00
Gonzalo Paniagua Javier
1840bd7ef1 2003-04-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* glib/Object.cs:
	(GetObject): check that the target of the WeakReference is still there. Otherwise,
	create a new wrapper for the IntPtr.

	This fixes the random nullrefs when running nunit-gtk.

svn path=/trunk/gtk-sharp/; revision=13450
2003-04-09 17:50:51 +00:00
Gonzalo Paniagua Javier
3821938764 2003-04-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* generator/CallbackGen.cs: the new generated wrappers have:
		-(optional) Field of the same type returned by the callback.
		-A call to RemoveIfNotAlive at the beginning. It returns true,
		return the dummy field.
		-Added an object to the ctor signature and pass it to the base
		class.

	* generator/Ctor.cs: added a Params property.

	* generator/Method.cs: set Static property in Parameters if the method
	is static.

	* generator/Parameters.cs: added Static property. The call creation of
	the delegate wrapper (if applicable) uses the new signature. Pass a null
	as object is the method is static.

	* generator/StructBase.cs: set Static for the parameters of the ctors.

	* glib/DelegateWrapper.cs: the ctor takes an object (the one creating
	the wrapper or null) and creates a weak reference to it. Store it in
	a static Hashtable (this way the wrapper itself is not garbage
	collected).
	(RemoveIfNotAlive): called from the native delegate callbacks. If the
	target of the weak reference has been garbage collected, removes itself
	from the hashtable to let the GC dispose this instance and returns true.

	* gdk/Pixbuf.custom:
	* gtk/Clipboard.custom:
	* gtk/GtkSharp.GtkClipboardClearFuncNative.cs:
	* gtk/GtkSharp.GtkClipboardGetFuncNative.cs:
	* glade/XML.custom: changed delegate wrappers to match the new
	signature.

svn path=/trunk/gtk-sharp/; revision=13237
2003-04-06 09:21:15 +00:00
Martin Baulig
73ae9d533f 2003-03-23 Martin Baulig <martin@ximian.com>
* glib/Object.cs (Dispose): Call `Objects.Remove (_obj)' here
	instead of in PerformQueuedUnrefs().

svn path=/trunk/gtk-sharp/; revision=12764
2003-03-23 18:05:36 +00:00
Miguel de Icaza
215133d780 2003-03-15 Miguel de Icaza <miguel@ximian.com>
* sample: Update samples to new Glade.Widget.

	* glade/WidgetAttribute.cs: Moved the old GladeWidgetattribute
	here.   Now its called `Glade.WidgetAttribute'.

	* glade/GladeWidgetAttribute.cs: Removed

	* glib/Idle.cs: Do not allow Idle class to be instantiated.

svn path=/trunk/gtk-sharp/; revision=12554
2003-03-15 21:02:25 +00:00
Miguel de Icaza
1c5b25f9a1 2003-03-11 Miguel de Icaza <miguel@ximian.com>
* gtk/Application.cs (CurrentEvent): Property implementing the
	suggestion from Paolo.

	* glib/Object.cs (Dispose): Destructor might be invoked in a
	thread, queue the object for destruction using the Gtk idle
	handler.   We perform the real destruction of the object in the
	same thread as the Gtk+ main thread.

svn path=/trunk/gtk-sharp/; revision=12551
2003-03-15 20:49:37 +00:00
petr
9d2efb1474 RegisterGType can handle deeper namespace levels now
svn path=/trunk/gtk-sharp/; revision=12420
2003-03-11 08:33:24 +00:00
Miguel de Icaza
e547fa0e3f 2003-03-02 Miguel de Icaza <miguel@ximian.com>
* glib/Markup.cs: Add new file.

svn path=/trunk/gtk-sharp/; revision=12114
2003-03-03 01:42:26 +00:00
Gonzalo Paniagua Javier
4a6b18ee0f 2003-02-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* generator/Parser.cs: use XmlDocument.Load (Stream). The one using
	(String) expects an uri.

	* generator/Signal.cs: always remove the delegate from the signal
	callback (prior to this, the last handler was not being removed).
	Dispose the callback (ie, disconnect from the signal) when there are
	no registered delegates to handle it.

	* generator/SignalHandler.cs: added 2 new fields to hold the instance
	and the handler ID. The finalization is now done in Dispose and
	disconnects the signal handler when no delegate will handle the signal.
	Changed gobject-2.0 to libgobject-2.0-0.dll.

	* glib/SignalCallback.cs: implemented IDisposable interface.

svn path=/trunk/gtk-sharp/; revision=11976
2003-02-26 02:16:38 +00:00
Mike Kestner
470c852770 oops forgot a cvs add
svn path=/trunk/gtk-sharp/; revision=11921
2003-02-24 06:44:54 +00:00
Mike Kestner
95fc33f785 2003-02-24 Mike Kestner <mkestner@speakeasy.net>
* generator/ObjectGen.cs : gen GLib.Value ctor, not uint
	* glib/Object.cs : use GLib.Type in RegisterGType and
	  make the g_object_new ctor use GLib.Type.
	* glib/Type.cs : new thin wrapper for GValue type
	* glib/*.cs : s/Type/System.Type

svn path=/trunk/gtk-sharp/; revision=11920
2003-02-24 06:39:30 +00:00
Mike Kestner
c0b574a686 2003-02-21 Mike Kestner <mkestner@speakeasy.net>
* mapdllnames.pl : a little whitespace action
	* api/*-api.xml : move to win32 dllnames
	* */makefile.win32 : remove the mapdllnames step
	* */*.cs : move to win32 dllnames
	* */*.custom : move to win32 dllnames
	* sources/gtk-sharp.sources : move to win32 dllnames

svn path=/trunk/gtk-sharp/; revision=11823
2003-02-22 04:34:56 +00:00
Mike Kestner
2c3cae3be8 2003-02-13 Mike Kestner <mkestner@speakeasy.net>
* glib/Boxed.cs : fix a ctor bug reported to the list by
	u900842@oz.nthu.edu.tw.

svn path=/trunk/gtk-sharp/; revision=11564
2003-02-14 01:16:05 +00:00
Radek Doulik
395c0cdf6f 2003-02-08 Radek Doulik <rodo@ximian.com>
* glib/MainContext.cs: beginning of MainContext class, just
	Iteration and Pending methods to be able to refresh Gtk in the
	middle of time consuming function where it's not worth while to
	use threads

	* glue/style.c (gtksharp_gtk_style_get_font_description): new
	function to access style's font_description field

	* gtk/Style.custom: added font description property

svn path=/trunk/gtk-sharp/; revision=11358
2003-02-08 17:33:17 +00:00
Gonzalo Paniagua Javier
97fec24e46 2003-02-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* glib/SignalCallback.cs: new methods AddDelegate and RemoveDelegate.

	* generator/Signal.cs: add/remove signal handlers from the delegate used
	to invoke them.

	* generator/SignalHandler.cs: use Delegate instead of MulticastDelegate.

svn path=/trunk/gtk-sharp/; revision=11255
2003-02-06 00:58:02 +00:00
Radek Doulik
0d2387f900 make Unref method public, it's needed for reparenting widgets
svn path=/trunk/gtk-sharp/; revision=10792
2003-01-21 21:43:12 +00:00
Johannes Roith
01f0577b8c remove console printings
svn path=/trunk/gtk-sharp/; revision=10364
2003-01-10 22:23:19 +00:00
Mike Kestner
f750d78d6a 2002-12-24 Mike Kestner <mkestner@speakeasy.net>
* generator/ObjectGen.cs : generate protected GType ctors
	* generator/SymbolTable.cs : map GType to uint
	* glib/Object.cs : add GType ctor. add RegisterGType.
	* glue/type.c (gtksharp_register_type): new GType registrar
	* */*.custom : make GType params uints
	* sample/Subclass.cs : a simple type registration example

svn path=/trunk/gtk-sharp/; revision=9870
2002-12-25 00:36:00 +00:00
Alp Toker
0098411b00 2002-12-23 Alp Toker <alp@atoker.com>
* glib/Thread.cs: Add a class for thread awareness
        * gdk/Threads.cs: ditto

svn path=/trunk/gtk-sharp/; revision=9839
2002-12-23 04:35:44 +00:00
Robert McQueen
5c87903756 2002-12-22 Robert McQueen <robot101@debian.org>
* makefile: when doing distclean, attempt distclean on all the
        C# subdirs too
        * gconf/Makefile.in: added distclean target to rm the Makefiles
        in the subdirs of gconf/
        * glue/Makefile.am: build libgtksharpglue as an unversioned
        module to avoid so -> so.0 -> so.0.0 symlink mess
        * */Makefile.in: call mkinstalldirs before installing any files
        so that subdirs can be installed seperately or in any sequence
        (eg binding dirs before native dirs)

svn path=/trunk/gtk-sharp/; revision=9828
2002-12-22 05:08:52 +00:00
Gonzalo Paniagua Javier
41ed17399e 2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* glib/Log.cs: removed the IntPtr argument and keep a reference to
	the delegate passed to unmanaged world as suggested by rachel.

svn path=/trunk/gtk-sharp/; revision=9586
2002-12-12 06:51:47 +00:00
Gonzalo Paniagua Javier
3b3535767f Fixed build with csc. Thanks Mike!
svn path=/trunk/gtk-sharp/; revision=9520
2002-12-10 07:00:48 +00:00
Gonzalo Paniagua Javier
f88c5e2603 2002-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* glib/Log.cs: New file. Wraps a few logging functions. Useful for
	debugging.

svn path=/trunk/gtk-sharp/; revision=9517
2002-12-10 05:41:56 +00:00
Radek Doulik
07b8de88cc 2002-11-17 Radek Doulik <rodo@ximian.com>
* glib/Value.cs: cast Typefundamentals.* to uint (GType is
	unsigned int), fix Value (GLib.Object) - use new GetGType method

	* glib/Object.cs: new GetGType method, returns _obj GType

svn path=/trunk/gtk-sharp/; revision=9063
2002-11-18 18:55:39 +00:00
Vladimir Vukicevic
58f6f01d45 * glib/Object.cs: add needs_ref boolean that controls whether
we need to ref this object once we have a pointer to it or not.
By default this is set to true -- constructors and other functions
where we do own the object need to set this to false before setting
the "Raw" property.  Also added Unref and RefCount methods.

* glue/object.c, glue/type.c: some utility functions for
refcounting support

* gdk/Pixbuf.custom: manually wrap a few functions so that
the refcount ends up being correct at the end (need an extra Unref)

* api/gdk-api.xml, sources/Gdk.metadata: metadata updates for
hiding manually-wrapped Pixbuf stuff

svn path=/trunk/gtk-sharp/; revision=8913
2002-11-10 10:09:05 +00:00
Mike Kestner
b2f04c1d80 2002-10-26 Mike Kestner <mkestner@speakeasy.net>
Much of this patch from Vlad, with substantial rework by mk.
	* */makefile.win32 : introduce mapdllnames.pl, api, and glue
	* generator/CallbackGen.cs : rework namespacing for csc compilation
	* generator/Parameters.cs : ditto
	* generator/Signal.cs : ditto
	* generator/SignalHandler.cs : ditto
	* glue/win32dll.c : new dll construction source
	* glib/Value.cs : new ushort ctor/cast operator
	* gtk/Table.custom : comment this out until we add a default ctor tag
	* gtk/ThreadNotify.cs : make ReadyEvent public
	* sources/Gdk.metadata : mark a Parse() param as ref

svn path=/trunk/gtk-sharp/; revision=8590
2002-10-27 02:30:51 +00:00
Ettore Perazzoli
cf139575c2 Changed so that Objects is a hash of
WeakReferences instead of hashing the real objects.  Without this
change, GObjects were never collected.
(Raw, set): Put a WeakReference to the object in Objects.
(Object.GetObject): Get the WeakReference from Objects, and from
there the actual object.
(Object.DisposeNative): Remove the Raw pointer from Objects.

svn path=/trunk/gtk-sharp/; revision=8578
2002-10-26 08:37:48 +00:00
Mike Kestner
2e07bf7e87 2002-10-26 Mike Kestner <mkestner@speakeasy.net>
* api/*.xml : get libgda and libgnomedb metadata setup
	* gconf/*/Makefile.in : patch from MauricioC for -L's and /r's
	* gnomedb/Makefile.in : patch from MauricioC for -L's and /r's
	* generator/ClassBase.cs (ctor): mangle hash names for sigs and props
	* generator/Parameters.cs (MangleName): handle params, null, and ref
	* generator/Parser.cs (ParseNamespace): ignore "hidden" types
	* generator/StructBase.cs (MangleName): handle params, null, and ref
	* glib/Object.cs (Equals): kill, also kill == and !=
	* sources/Gda.metadata : new, make Gda behave without hand edits
	* sources/GnomeDb.metadata : ditto

svn path=/trunk/gtk-sharp/; revision=8577
2002-10-26 08:03:16 +00:00
Miguel de Icaza
f95bf9dbbd 2002-10-20 Miguel de Icaza <miguel@ximian.com>
* glib/Object.cs: Avoid recursive calls with the previous operator
	!= and operator ==

svn path=/trunk/gtk-sharp/; revision=8418
2002-10-20 07:16:22 +00:00
Duncan Mak
f94df39a18 2002-10-19 Duncan Mak <duncan@ximian.com>
* glib/Source.cs: Added.

svn path=/trunk/gtk-sharp/; revision=8412
2002-10-19 23:18:59 +00:00
Miguel de Icaza
39885119ee Am very sorry, very sorry
svn path=/trunk/gtk-sharp/; revision=8411
2002-10-19 23:15:05 +00:00
Miguel de Icaza
88d38246f5 2002-10-19 Miguel de Icaza <miguel@ximian.com>
* glib/Object.cs: Added operator != and operator == overloads.

svn path=/trunk/gtk-sharp/; revision=8400
2002-10-19 20:03:51 +00:00
Mike Kestner
58b5241e6f 2002-10-14 Mike Kestner <mkestner@speakeasy.net>
* glib/Object.cs (GetObject): remove (int) cast

svn path=/trunk/gtk-sharp/; revision=8277
2002-10-15 04:07:24 +00:00
Martin Baulig
604034053a 2002-10-11 Martin Baulig <martin@gnome.org>
* glib/ListBase.cs (ListBase.Append): New public method.
	(ListBase.Prepend): New public method.

svn path=/trunk/gtk-sharp/; revision=8168
2002-10-11 15:43:52 +00:00
Martin Baulig
52f04d5a61 2002-10-11 Martin Baulig <martin@gnome.org>
* glib/FileUtils.cs: New file.  Wrapped g_file_get_contents() here.

svn path=/trunk/gtk-sharp/; revision=8167
2002-10-11 15:41:49 +00:00
Vladimir Vukicevic
f0f44bf010 * glib/GException.cs: g_clear_error takes
a GError **, not a GError *.  Added refs to get the **.

svn path=/trunk/gtk-sharp/; revision=8026
2002-10-06 02:12:04 +00:00
Vladimir Vukicevic
dd061f70b1 * glib/ObjectManager.cs, glue/type.c: If there isn't
an exact match for a C GObject class (i.e. BluecurveStyle),
walk up the gobject type hierarchy until we find a type
that we do have a wrapper for, and return that.  This means
that you'll always, worst-case, end up with a GObject.

* glib/Value.cs, glue/value.c: Added default constructor
to GLib.Value() that creates a new value with a type of
INVALID, and changed the glue function to not call
gtk_type_init if INVALID is passed.

svn path=/trunk/gtk-sharp/; revision=7994
2002-10-05 05:12:00 +00:00
Ricardo Fernández Pascual
f1011f687e 2002-09-13 Ricardo Fernndez Pascual <ric@users.sourceforge.net>
* glade/HandlerNotFoundExeception.cs: Added.
	* glade/Makefile.in
	* glade/XML.custom: Support for autoconnecting signals using
	reflection.
	* glib/SignalAttribute.cs: Added.
	* generator/Signal.cs: Mark events generated from glib signals
	with the "Signal" attribute.
	* sample/GladeTest.cs
	* sample/Makefile.in
	* sample/test.glade: Test of signal autoconnection.

svn path=/trunk/gtk-sharp/; revision=7430
2002-09-13 11:38:36 +00:00