(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
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
if "disable_raw_ctor" is set on the opaque type.
* gtk/Gtk.metadata: Make GtkTargetList opaque (fixes a crash in
Gtk.Drag.Begin), hide the generated constructor and ref/unref
methods, and fix up the interpretation of AddTable.
* gtk/TargetList.custom (TargetList, ~TargetList): Implement the
suppressed constructors and add a finalizer, which handle
refcounting the underlying struct.
(Add, Find, Remove): convenience overloads that take string
instead of Gdk.Atom.
* gtk/Makefile.am (customs): add TargetList.custom
svn path=/trunk/gtk-sharp/; revision=35135
* 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
* doc/en/*/*.xml : update to remove Override* methods.
* generator/Signal.cs : make the Override* methods private. They
should not ever be called manually and it saves about 800 "do not
call this method" doc entries.
svn path=/trunk/gtk-sharp/; revision=29388
* generator/Field.cs : add field hiding, for manual impl.
* generator/StructBase.cs : support disable_new, for manual impl.
svn path=/trunk/gtk-sharp/; revision=28715
* generator/ObjectGen.cs : generate protected ctor () for all
GLib.Objects that don't have any ctors.
* gtk/CellRenderer.custom : remove ctor ().
* gtkhtml/Gtk.metadata : add a disable_void_ctor rule for HTML.
svn path=/trunk/gtk-sharp/; revision=28645
* 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
* generator/ObjectGen.cs : Generate a .cctor that calls the assembly's
ObjectManager.Initialize method if the class will need to be registered
with GLib.ObjectManager. Enhance the Initialize method to allow
multiple invocations.
svn path=/trunk/gtk-sharp/; revision=27554
* 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
[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
* generator/Method.cs: Don't use the "unsafe" modifier for methods which
are part of an interface [fixes#58059].
svn path=/trunk/gtk-sharp/; revision=26843
* 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
* generator/GObjectGen.cs: Added new generatable to handle
plain GObjects the same way we do subclasses.
* generator/ManualGen.cs: Make FromNative/FromNativeReturn virtual
to allow overriding.
* generator/SymbolTable.cs: Use GObjectGen instead of
ManualGen for GObject.
* generator/Makefile.am: Add GObjectGen.cs.
svn path=/trunk/gtk-sharp/; revision=25651
* 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
* 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
* */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
* generator/ObjectGen.cs : ignore virtual_method elems for now.
* parser/gapi2xml.pl : parse the non-signal class methods and add as
virtual_method elements in the API xml
* */*-api.xml : regen
svn path=/trunk/gtk-sharp/; revision=23809
* gconf/GConf.PropertyEditors/PropertyEditorColorPicker.cs :
nuke a GnomeSharp.
* generator/Signal.cs : move eventhandlers and args into the
base namespace instead of a *Sharp namespace.
* sample/*.cs : nuke using *Sharp.
svn path=/trunk/gtk-sharp/; revision=22956
* art/Art.metadata : mark a field private
* art/art-api.xml : regen
* gda/Gda.metadata : mark a few structs opaque
* gda/gda-api.xml : regen
* gdk/*.custom : fix changed field names
* gdk/gdk-api.xml : regen
* generator/Field.cs : StudlyCase simple typed field names.
* gnome/Gnome.metadata : mark FontEntry.weight private to
avoid collision with Weight field. s|//|/api/namespace|g
* gnome/gnome-api.xml : regen
* gtk/Gtk.metadata : rename AccelKey.accel_key to key to
avoid collision with type name.
* gtk/*.custom : fix changed field names
* gtk/gtk-api.xml : regen
* pango/pango-api.xml : regen
* parser/gapi_pp.pl : add a private_regex to hide BACKEND
and ENGINE apis, which are by convention private.
* sample/* : make compile
* sample/GtkDemo/* : make compile
* sample/test/* : make compile
* sources/gtk-sharp-sources.xml : exclude a bunch of pango
source files.
svn path=/trunk/gtk-sharp/; revision=22947
* generator/Method.cs : for Opaque/Object retvals, if raw_ret is
NULL, return null instead of an object with a NULL handle.
svn path=/trunk/gtk-sharp/; revision=22847
* generator/CustomMarshalerGen.cs : beginnings of a new generatable.
* generator/SymbolTable.cs : mangle interface keyword to iface.
svn path=/trunk/gtk-sharp/; revision=22712
* generator/BoxedGen.cs : gen a Value to Boxed explicit cast op.
* generator/Property.cs : use new cast in Boxed getters.
[Fixes#53414]
svn path=/trunk/gtk-sharp/; revision=22553