2003-10-14 20:29:59 +00:00
|
|
|
<?xml version="1.0"?>
|
|
|
|
<metadata>
|
2005-05-04 11:47:25 +00:00
|
|
|
<attr path="/api/namespace/*/method/*/*[@type='GtkDestroyNotify']" name="type">GDestroyNotify</attr>
|
2004-01-28 04:08:29 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkAccelKey']/field[@cname='accel_key']" name="type">GdkKey</attr>
|
2005-02-23 17:37:33 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkAccelKey']/field[@cname='accel_key']" name="name">Key</attr>
|
2004-01-28 04:08:29 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkAccelKey']/field[@cname='accel_mods']" name="type">GdkModifierType</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkAccelKey']/field[@cname='accel_flags']" name="type">GtkAccelFlags</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkActionEntry']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkRadioActionEntry']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkToggleActionEntry']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTypeInfo']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkBorder']" name="hidden">1</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkIconInfo']/method[@name='Free']" name="deprecated">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkIconSet']/method[@name='GetSizes']" name="hidden">1</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkIconSet']/method[@name='Ref']" name="deprecated">1</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkIconSet']/method[@name='Unref']" name="deprecated">1</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkIconSource']/method[@name='Free']" name="deprecated">1</attr>
|
* parser/gapi2xml.pl (addFuncElems): if a struct or boxed type has
a constructor or a ref, unref, or destroy method, then it must be
a reference type, so mark it "opaque" but then also mark all of
its fields public and writable.
* */*-api*.raw: Regen
* generator/Parser.cs (ParseNamespace): make the opaque attribute
check actually look at the value of the attribute rather than just
checking if it's there, so that you can change a struct's opaque
attribute from "true" to "false" via metadata and have that work.
* generator/BoxedGen.cs (Generate): do not generate the boxed's
"Free" method (since it's guaranteed to crash when we pass it a
stack pointer). If "Copy" is marked deprecated, create a
deprecated no-op for it, otherwise just skip it (since otherwise
it will just leak memory when we copy its result onto the stack).
* pango/Pango.metadata: deprecate Pango.Color.Copy and
Pango.Matrix.Copy. Hide some array fields in Pango.GlyphString
that we've never generated correctly. Tweak Pango.LayoutLine
fields to be the same as they used to be.
* pango/GlyphItem.custom (glyphs, item):
* pango/GlyphString.custom (Zero, New):
* pango/Item.custom (Zero, New):
* pango/LayoutRun.custom (glyphs, item): add deprecated API compat
* gdk/Gdk.metadata: undo the parser's new opaquification of
Gdk.Font; it's been deprecated since pre-gtk# times, and no one
should be using it, so there's no point in fixing it now. Fix up a
few other things to match how they used to be. Fix RgbCmap's
constructor args.
* gdk/RgbCmap.custom (Zero, New): deprecated API compat
* gdk/PangoAttrEmbossed.custom:
* gdk/PangoAttrStipple.custom (Zero, New, Attr): deprecated API
compat
(explicit operator ...): allow casting back and forth between
Pango.Attribute. (We can't usefully make them real subclasses of
Pango.Attribute, because there's no way for
Pango.Attribute.GetAttribute() to be able to dtrt with them.)
* gtk/Gtk.metadata: deprecate Gtk.Requisition.Copy,
Gtk.TextIter.Copy, and Gtk.TreeIter.Copy. Mark the return value of
TextView.DefaultAttributes as "owned". Mark TargetList's fields
private so it stays how it used to be.
* gtk/TextAttributes.custom (Zero, New): deprecated API compat
* gnomevfs/Gnomevfs.metadata: remove a bunch of opaque
declarations that the parser figures out on its own now.
* art/Art.metadata:
* glade/Glade.metadata:
* rsvg/Rsvg.metadata: un-mark everything the parser marked opaque
in these libraries, because all of the structs in question would
still be unusably broken, so the API churn would be pointless.
svn path=/trunk/gtk-sharp/; revision=48387
2005-08-15 15:15:57 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkRequisition']/method[@name='Copy']" name="deprecated">1</attr>
|
2003-12-26 15:14:07 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']" name="opaque">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/field[@name='Length']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/field[@name='Format']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/field[@name='Selection']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/field[@name='Target']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/field[@name='Type']" name="access">public</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/method[@name='Free']" name="deprecated">1</attr>
|
2004-10-05 14:09:05 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/method[@name='GetTargets']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/method[@name='GetText']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/method[@name='SetText']" name="hidden">1</attr>
|
2004-04-03 21:42:43 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/method[@name='Set']/*/*[@name='data']" name="type">guchar</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkSelectionData']/method[@name='Set']/*/*[@name='data']" name="array">1</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='BackwardFindChar']/*/*[@name='pred']" name="scope">call</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='BackwardSearch']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
* parser/gapi2xml.pl (addFuncElems): if a struct or boxed type has
a constructor or a ref, unref, or destroy method, then it must be
a reference type, so mark it "opaque" but then also mark all of
its fields public and writable.
* */*-api*.raw: Regen
* generator/Parser.cs (ParseNamespace): make the opaque attribute
check actually look at the value of the attribute rather than just
checking if it's there, so that you can change a struct's opaque
attribute from "true" to "false" via metadata and have that work.
* generator/BoxedGen.cs (Generate): do not generate the boxed's
"Free" method (since it's guaranteed to crash when we pass it a
stack pointer). If "Copy" is marked deprecated, create a
deprecated no-op for it, otherwise just skip it (since otherwise
it will just leak memory when we copy its result onto the stack).
* pango/Pango.metadata: deprecate Pango.Color.Copy and
Pango.Matrix.Copy. Hide some array fields in Pango.GlyphString
that we've never generated correctly. Tweak Pango.LayoutLine
fields to be the same as they used to be.
* pango/GlyphItem.custom (glyphs, item):
* pango/GlyphString.custom (Zero, New):
* pango/Item.custom (Zero, New):
* pango/LayoutRun.custom (glyphs, item): add deprecated API compat
* gdk/Gdk.metadata: undo the parser's new opaquification of
Gdk.Font; it's been deprecated since pre-gtk# times, and no one
should be using it, so there's no point in fixing it now. Fix up a
few other things to match how they used to be. Fix RgbCmap's
constructor args.
* gdk/RgbCmap.custom (Zero, New): deprecated API compat
* gdk/PangoAttrEmbossed.custom:
* gdk/PangoAttrStipple.custom (Zero, New, Attr): deprecated API
compat
(explicit operator ...): allow casting back and forth between
Pango.Attribute. (We can't usefully make them real subclasses of
Pango.Attribute, because there's no way for
Pango.Attribute.GetAttribute() to be able to dtrt with them.)
* gtk/Gtk.metadata: deprecate Gtk.Requisition.Copy,
Gtk.TextIter.Copy, and Gtk.TreeIter.Copy. Mark the return value of
TextView.DefaultAttributes as "owned". Mark TargetList's fields
private so it stays how it used to be.
* gtk/TextAttributes.custom (Zero, New): deprecated API compat
* gnomevfs/Gnomevfs.metadata: remove a bunch of opaque
declarations that the parser figures out on its own now.
* art/Art.metadata:
* glade/Glade.metadata:
* rsvg/Rsvg.metadata: un-mark everything the parser marked opaque
in these libraries, because all of the structs in question would
still be unusably broken, so the API churn would be pointless.
svn path=/trunk/gtk-sharp/; revision=48387
2005-08-15 15:15:57 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='Copy']" name="deprecated">1</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='ForwardFindChar']/*/*[@name='pred']" name="scope">call</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='ForwardSearch']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
2004-04-05 18:31:34 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='GetChar']" name="hidden">1</attr>
|
2004-02-11 23:12:14 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='GetMarks']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='GetTags']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTextIter']/method[@name='GetToggledTags']" name="hidden">1</attr>
|
* parser/gapi2xml.pl (addFuncElems): if a struct or boxed type has
a constructor or a ref, unref, or destroy method, then it must be
a reference type, so mark it "opaque" but then also mark all of
its fields public and writable.
* */*-api*.raw: Regen
* generator/Parser.cs (ParseNamespace): make the opaque attribute
check actually look at the value of the attribute rather than just
checking if it's there, so that you can change a struct's opaque
attribute from "true" to "false" via metadata and have that work.
* generator/BoxedGen.cs (Generate): do not generate the boxed's
"Free" method (since it's guaranteed to crash when we pass it a
stack pointer). If "Copy" is marked deprecated, create a
deprecated no-op for it, otherwise just skip it (since otherwise
it will just leak memory when we copy its result onto the stack).
* pango/Pango.metadata: deprecate Pango.Color.Copy and
Pango.Matrix.Copy. Hide some array fields in Pango.GlyphString
that we've never generated correctly. Tweak Pango.LayoutLine
fields to be the same as they used to be.
* pango/GlyphItem.custom (glyphs, item):
* pango/GlyphString.custom (Zero, New):
* pango/Item.custom (Zero, New):
* pango/LayoutRun.custom (glyphs, item): add deprecated API compat
* gdk/Gdk.metadata: undo the parser's new opaquification of
Gdk.Font; it's been deprecated since pre-gtk# times, and no one
should be using it, so there's no point in fixing it now. Fix up a
few other things to match how they used to be. Fix RgbCmap's
constructor args.
* gdk/RgbCmap.custom (Zero, New): deprecated API compat
* gdk/PangoAttrEmbossed.custom:
* gdk/PangoAttrStipple.custom (Zero, New, Attr): deprecated API
compat
(explicit operator ...): allow casting back and forth between
Pango.Attribute. (We can't usefully make them real subclasses of
Pango.Attribute, because there's no way for
Pango.Attribute.GetAttribute() to be able to dtrt with them.)
* gtk/Gtk.metadata: deprecate Gtk.Requisition.Copy,
Gtk.TextIter.Copy, and Gtk.TreeIter.Copy. Mark the return value of
TextView.DefaultAttributes as "owned". Mark TargetList's fields
private so it stays how it used to be.
* gtk/TextAttributes.custom (Zero, New): deprecated API compat
* gnomevfs/Gnomevfs.metadata: remove a bunch of opaque
declarations that the parser figures out on its own now.
* art/Art.metadata:
* glade/Glade.metadata:
* rsvg/Rsvg.metadata: un-mark everything the parser marked opaque
in these libraries, because all of the structs in question would
still be unusably broken, so the API churn would be pointless.
svn path=/trunk/gtk-sharp/; revision=48387
2005-08-15 15:15:57 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTreeIter']/method[@name='Copy']" name="deprecated">1</attr>
|
2005-04-11 17:15:38 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTreePath']/constructor[@cname='gtk_tree_path_new_from_indices']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTreePath']/method[@name='GetIndices']" name="hidden">1</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTreePath']/method[@name='Free']" name="deprecated">1</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTreeRowReference']/method[@name='Free']" name="deprecated">1</attr>
|
|
|
|
<attr path="/api/namespace/boxed[@cname='GtkTreeRowReference']/method[@name='GetPath']/return-type" name="owned">true</attr>
|
2005-01-07 21:29:38 +00:00
|
|
|
<attr path="/api/namespace/callback[@cname='GtkItemFactoryCallback2']" name="hidden">1</attr>
|
2005-04-22 19:43:46 +00:00
|
|
|
<attr path="/api/namespace/callback[@cname='GtkModuleDisplayInitFunc']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/callback[@cname='GtkModuleInitFunc']" name="hidden">1</attr>
|
2004-02-11 21:58:47 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkAccel_']/method[@name='GroupsFromObject']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkAccelerator_']/method[@name='GetDefaultModMask']/return-type" name="type">GdkModifierType</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkBindings_']/method[@name='Activate']" name="name">BindingsActivate</attr>
|
2004-05-27 15:58:15 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkCtree_']" name="hidden">1</attr>
|
2003-11-17 03:44:32 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkDrag_']/method[@name='DestSet']/*/*[@name='targets']" name="array">1</attr>
|
2005-09-08 19:01:01 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkDrag_']/method[@name='SetIconDefault']" name="hidden">1</attr>
|
2003-11-30 03:45:41 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkDrag_']/method[@name='SourceSet']/*/*[@name='targets']" name="array">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkFile_']" name="hidden">1</attr>
|
2004-05-10 18:23:51 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='EventsPending']/return-type" name="type">gboolean</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='EventsPending']" name="name">GetEventsPending</attr>
|
2004-12-03 17:30:29 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='CellTypeGetType']" name="hidden">1</attr>
|
2004-07-16 19:24:58 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='CheckVersion']/return-type" name="type">const-gchar*</attr>
|
2004-12-03 17:30:29 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='ClistDragPosGetType']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='DebugFlagGetType']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='IdentifierGetType']" name="hidden">1</attr>
|
2004-08-24 21:03:57 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintPolygon']/*/*[@name='points']" name="array">1</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintPolygon']/*/*[@name='npoints']" name="name">n_points</attr>
|
2004-12-03 17:30:29 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PrivateFlagsGetType']" name="hidden">1</attr>
|
2004-12-22 19:37:58 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='TextLayoutDraw']" name="hidden">1</attr>
|
2005-08-01 18:32:19 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintArrow']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintBoxGap']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintBox']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintCheck']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintDiamond']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintExpander']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintExtension']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintFlatBox']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintFocus']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintHandle']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintHline']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintLayout']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintOption']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintPolygon']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintResizeGrip']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintShadowGap']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintShadow']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintSlider']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintTab']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintVline']/*/*[@name='window']" name="type">GdkDrawable*</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkIdle_']" name="hidden">1</attr>
|
2004-09-03 15:59:29 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkInit_']/method[@name='Check']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkInit_']/method[@name='CheckAbiCheck']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkInit_']/method[@name='AbiCheck']" name="hidden">1</attr>
|
2005-04-05 20:14:02 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkInput_']/method[@name='AddFull']" name="hidden">1</attr>
|
2005-04-11 17:15:38 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkQuit_']/method[@name='Add']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkQuit_']/method[@name='AddFull']" name="hidden">1</attr>
|
2005-01-06 16:48:16 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkSignal_']" name="hidden">1</attr>
|
2005-01-18 03:06:15 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkStock_']" name="hidden">1</attr>
|
2005-04-05 20:14:02 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkTimeout_']" name="hidden">1</attr>
|
2004-09-29 18:45:59 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkTree_']/method[@name='GetRowDragData']/*/*[@name='tree_model']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/class[@cname='GtkTree_']/method[@name='GetRowDragData']/*/*[@name='path']" name="pass_as">out</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkTree_']/method[@name='GetRowDragData']/*/*[@name='path']" name="owned">true</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/class[@cname='GtkType_']" name="hidden">1</attr>
|
2005-05-24 18:11:33 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkArgFlags']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkDebugFlag']" name="hidden">1</attr>
|
2005-01-26 22:46:24 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkIMPreeditStyle']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/enum[@cname='GtkIMStatusStyle']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkObjectFlags']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/enum[@cname='GtkPathPriorityType']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/enum[@cname='GtkPathType']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/enum[@cname='GtkRcFlags']" name="hidden">1</attr>
|
2005-05-24 18:11:33 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkRcTokenType']" name="hidden">1</attr>
|
2005-01-06 16:48:16 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkSignalRunType']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkToolbarSpaceStyle']" name="hidden">1</attr>
|
2004-12-03 17:09:37 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkVisibility']" name="hidden">1</attr>
|
2005-12-13 17:11:31 +00:00
|
|
|
<attr path="/api/namespace/enum[@cname='GtkWin32EmbedMessageType']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkCellEditable']/method[@name='EditingDone']" name="name">FinishEditing</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkCellEditable']/signal[@name='RemoveWidget']" name="name">WidgetRemoved</attr>
|
2005-01-04 18:54:02 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkCellLayout']/method[@name='SetAttributes']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkEditable']/method[@name='GetEditable']" name="name">GetIsEditable</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkEditable']/method[@name='InsertText']/*/*[@name='position']" name="pass_as">ref</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkEditable']/method[@name='SetEditable']" name="name">SetIsEditable</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkEditable']/signal[@name='DeleteText']" name="name">TextDeleted</attr>
|
2004-12-16 23:38:35 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkEditable']/signal[@name='InsertText']/*/*[@name='position']" name="pass_as">ref</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkEditable']/signal[@name='InsertText']" name="name">TextInserted</attr>
|
2005-06-02 16:16:28 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='GetCurrentFolder']/return-type" name="type">gfilename*</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='GetFilename']/return-type" name="type">gfilename*</attr>
|
2004-10-30 02:40:00 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='GetFilenames']" name="hidden">1</attr>
|
2005-06-23 22:28:06 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='GetPreviewFilename']/return-type" name="type">gfilename*</attr>
|
2005-06-02 16:16:28 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method/parameters/*[@name='filename']" name="type">const-gfilename*</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method/parameters/*[@name='folder']" name="type">const-gfilename*</attr>
|
2005-06-23 22:28:06 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='GetUris']/return-type" name="element_type">gchar*</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='GetUris']/return-type" name="elements_owned">true</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='GetUris']/return-type" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@cname='gtk_file_chooser_list_filters']" name="name">GetFilters</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@cname='gtk_file_chooser_list_filters']/return-type" name="element_type">GtkFileFilter*</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@cname='gtk_file_chooser_list_filters']/return-type" name="owned">true</attr>
|
2004-11-04 20:33:35 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@name='ListShortcutFolders']" name="hidden">1</attr>
|
2005-06-23 22:28:06 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@cname='gtk_file_chooser_list_shortcut_folder_uris']" name="name">GetShortcutFolderUris</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@cname='gtk_file_chooser_list_shortcut_folder_uris']/return-type" name="element_type">gchar*</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@cname='gtk_file_chooser_list_shortcut_folder_uris']/return-type" name="elements_owned">true</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkFileChooser']/method[@cname='gtk_file_chooser_list_shortcut_folder_uris']/return-type" name="owned">true</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='Foreach']/*/*[@name='func']" name="scope">call</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='GetIterFirst']/*/*[@name='iter']" name="pass_as">out</attr>
|
2004-09-29 18:45:59 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='Get']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='GetIterFromString']/*/*[@name='iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='GetIter']/*/*[@name='iter']" name="pass_as">out</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='GetPath']/return-type" name="owned">true</attr>
|
2004-04-12 15:54:57 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='GetValue']/*/*[@name='value']" name="pass_as">ref</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='IterChildren']/*/*[@name='iter']" name="pass_as">out</attr>
|
2004-05-28 17:47:43 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='IterNext']/*/*[@name='iter']" name="pass_as">ref</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='IterNthChild']/*/*[@name='iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='IterParent']/*/*[@name='iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='RowChanged']" name="name">EmitRowChanged</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='RowDeleted']" name="name">EmitRowDeleted</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='RowHasChildToggled']" name="name">EmitRowHasChildToggled</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='RowInserted']" name="name">EmitRowInserted</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeModel']/method[@name='RowsReordered']" name="name">EmitRowsReordered</attr>
|
|
|
|
<attr path="/api/namespace/interface[@cname='GtkTreeSortable']/method[@name='SortColumnChanged']" name="name">ChangeSortColumn</attr>
|
2004-05-07 18:41:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelLabel']/constructor[@cname='gtk_accel_label_new']/*/*[@name='string']" name="property_name">label</attr>
|
2005-06-01 17:58:28 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAboutDialog']/method[@name='GetArtists']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAboutDialog']/method[@name='GetAuthors']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAboutDialog']/method[@name='GetDocumenters']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAboutDialog']/method[@name='SetArtists']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAboutDialog']/method[@name='SetAuthors']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAboutDialog']/method[@name='SetDocumenters']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAction']/signal[@name='Activate']" name="name">Activated</attr>
|
2005-12-09 23:16:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAction']/method[@name='GetAccelClosure']" name="hidden">1</attr>
|
2004-12-07 01:31:50 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAction']/method[@name='GetProxies']" name="hidden">1</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelGroup']/method[@name='Find']/*/*[@name='find_func']" name="scope">call</attr>
|
2005-02-23 20:16:40 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelGroup']/signal[@name='AccelActivate']/*/*[@name='inst']" name="name">accel_group</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelGroup']/signal[@name='AccelActivate']/*/*[@name='p0']" name="name">acceleratable</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelGroup']/signal[@name='AccelActivate']/*/*[@name='p1']" name="name">keyval</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelGroup']/signal[@name='AccelActivate']/*/*[@name='p2']" name="name">modifier</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelMap']/method[@name='Foreach']/*/*[@name='foreach_func']" name="scope">call</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelMap']/method[@name='ForeachUnfiltered']/*/*[@name='foreach_func']" name="scope">call</attr>
|
2005-02-23 20:16:40 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelMap']/signal[@name='Changed']" name="name">MapChanged</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelMap']/signal[@name='MapChanged']/*/*[@name='inst']" name="name">map</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelMap']/signal[@name='MapChanged']/*/*[@name='p0']" name="name">accel_path</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelMap']/signal[@name='MapChanged']/*/*[@name='p1']" name="name">accel_key</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAccelMap']/signal[@name='MapChanged']/*/*[@name='p2']" name="name">accel_mods</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddAction']" name="name">Add</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddActions']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddActionsFull']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddActionWithAccel']" name="name">Add</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddRadioActions']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddRadioActionsFull']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddToggleActions']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='AddToggleActionsFull']" name="hidden">1</attr>
|
2004-12-07 01:31:50 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='ListActions']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/method[@name='RemoveAction']" name="name">Remove</attr>
|
2005-02-23 20:16:40 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='ConnectProxy']/*/*[@name='inst']" name="name">action_group</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='ConnectProxy']/*/*[@name='p0']" name="name">action</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='ConnectProxy']/*/*[@name='p1']" name="name">proxy</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='DisconnectProxy']/*/*[@name='inst']" name="name">action_group</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='DisconnectProxy']/*/*[@name='p0']" name="name">action</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='DisconnectProxy']/*/*[@name='p1']" name="name">proxy</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='PreActivate']/*/*[@name='inst']" name="name">action_group</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='PreActivate']/*/*[@name='p0']" name="name">action</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='PostActivate']/*/*[@name='inst']" name="name">action_group</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkActionGroup']/signal[@name='PostActivate']/*/*[@name='p0']" name="name">action</attr>
|
2004-05-07 18:41:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAdjustment']/constructor[@cname='gtk_adjustment_new']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkAdjustment']/method[@name='Changed']" name="name">Change</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkAdjustment']/method[@name='ValueChanged']" name="name">ChangeValue</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkArrow']/method[@name='Set']" name="hidden">1</attr>
|
2004-09-24 15:58:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkBin']/method[@name='GetChild']" name="hidden">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkBox']/field[@name='Children']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkBox']/method[@name='PackEndDefaults']" name="name">PackEnd</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkBox']/method[@name='PackStartDefaults']" name="name">PackStart</attr>
|
2005-01-24 18:25:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/constructor[@cname='gtk_button_new_with_label']" name="shared">true</attr>
|
2004-06-15 13:38:44 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/constructor[@cname='gtk_button_new_from_stock']" name="hidden">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/field[@name='InButton']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/field[@name='InButton']" name="writeable">true</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/method[@name='Clicked']" name="name">Click</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/method[@name='Pressed']" name="name">Press</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/method[@name='Released']" name="name">Release</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/signal[@name='Activate']" name="name">Activated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/signal[@name='Enter']" name="name">Entered</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkButton']/signal[@name='Leave']" name="name">Left</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkCalendar']/method[@name='DisplayOptions']" name="name">SetDisplayOptions</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCellRenderer']/method[@name='EditingCanceled']" name="name">CancelEditing</attr>
|
2004-06-04 04:55:48 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCellRenderer']/method[@name='StartEditing']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkCellRenderer']/method[@name='GetSize']" name="hidden">1</attr>
|
2005-01-04 15:53:39 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCellViewMenuItem']/constructor[@cname='gtk_cell_view_menu_item_new_with_text']" name="preferred">1</attr>
|
2005-01-04 18:54:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCellView']/method[@name='SetValues']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCheckButton']/constructor[@cname='gtk_check_button_new_with_mnemonic']" name="preferred">1</attr>
|
2004-05-07 17:32:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCheckMenuItem']/constructor[@cname='gtk_check_menu_item_new_with_mnemonic']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkCheckMenuItem']/constructor[@cname='gtk_check_menu_item_new_with_label']" name="hidden">1</attr>
|
2004-12-21 18:46:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCheckMenuItem']/method[@name='Toggled']" name="name">EmitToggled</attr>
|
2005-04-01 16:46:43 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkClipboard']/method[@name='SetWithData']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkClipboard']/method[@name='SetWithOwner']" name="hidden">1</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkClipboard']/method[@name='WaitForContents']/return-type" name="owned">true</attr>
|
2004-12-17 17:55:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorButton']/method[@name='GetColor']/*/*[@name='color']" name="pass_as">out</attr>
|
2004-11-15 17:02:37 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='GetColor']" name="hidden">1</attr>
|
2004-12-17 17:55:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='GetCurrentColor']/*/*[@name='color']" name="pass_as">out</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='GetPreviousColor']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='PaletteFromString']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='PaletteToString']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='SetChangePaletteHook']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='SetChangePaletteWithScreenHook']" name="hidden">1</attr>
|
2004-11-15 17:02:37 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='SetColor']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkColorSelection']/method[@name='SetPreviousColor']" name="hidden">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCombo']/field[@name='Button']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkCombo']/field[@name='Button']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkCombo']/field[@name='Entry']" name="type">GtkEntry*</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkCombo']/method[@name='SetPopdownStrings']" name="hidden">1</attr>
|
2005-05-04 11:47:25 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkComboBox']/method[@name='GetActiveIter']/*/*[@type='GtkTreeIter*']" name="pass_as">out</attr>
|
2005-04-11 20:35:56 +00:00
|
|
|
<add-node path="/api/namespace/object[@cname='GtkContainer']"><implements><interface name="IEnumerable" /></implements></add-node>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/field[@name='FocusChild']" name="access">public</attr>
|
2004-11-05 16:47:15 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@name='ChildGetProperty']" name="hidden">1</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@name='Forall']/*/*[@name='callback']" name="scope">call</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@name='Foreach']/*/*[@name='callback']" name="scope">call</attr>
|
* parser/gapi2xml.pl (addParamsElem): change the handling of
anonymous function pointer types in method signatures. Before, we
added a <callback> child to the <parameters> node, but the
generator just ignored it. Now we add the callback (with a made-up
name) to the toplevel node, and add an ordinary <param> node
referencing it to the <parameters> node. Also, if the last param
of the callback is a gpointer, rename it from "arg#" to "data" so
it will be treated correctly (as the user data passed from the
calling method). [Fixes #66241]
* art/art-api.raw:
* gdk/gdk-api-2.4.raw:
* gdk/gdk-api-2.6.raw: Regen
* generator/Parameters.cs (IsHidden): loosen the definition of
hideable user_data; it doesn't have to occur at the end of the
parameter list, as long as there's a callback arg before it.
* generator/MethodBody.cs (GetCallString): Use Parameters.IsHidden
to decide whether or not to squash user_data params, rather than
trying to duplicate its logic. As a side effect, this also causes
a handful of methods that take non-hidden IntPtr arguments to
start actually passing those arguments to C rather than always
passing IntPtr.Zero.
* generator/Method.cs (Equals, GetHashCode): Remove unnecessary
and possibly erroneous hashing overrides.
* gtk/Gtk.metadata: Hide Gtk.Container.ForeachFull, since it's
useless and wasn't in gtk# 1.0
* gtk/Menu.custom (Popup):
* gtk/TextIter.custom (ForwardFindChar, BackwardFindChar):
* gnome/App.custom (CreateMenusInterp, InsertMenusInterp,
CreateToolbarInterp):
* gnome/Client.custom (RequestInteractionInterp):
* gnome/Popup.custom (MenuDoPopupModal, MenuDoPopup): Add
[Obsolete] compat overloads for methods that have now lost a
useless IntPtr.
svn path=/trunk/gtk-sharp/; revision=47566
2005-07-22 19:10:04 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@name='ForeachFull']" name="hidden">1</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@name='GetChildren']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@name='GetFocusChain']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@name='SetFocusChain']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/signal[@name='Add']" name="name">Added</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/signal[@name='CheckResize']" name="name">ResizeChecked</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/signal[@name='Remove']" name="name">Removed</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/signal[@name='SetFocusChild']" name="name">FocusChildSet</attr>
|
2004-06-10 18:37:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkContainer']/method[@cname='gtk_container_child_type']" name="hidden">1</attr>
|
2005-01-28 16:03:27 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/constructor[@cname='gtk_dialog_new_with_buttons']" name="hidden">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/field[@name='ActionArea']" name="type">GtkHButtonBox*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/field[@name='Vbox']" name="name">VBox</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/field[@name='VBox']" name="type">GtkVBox*</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/method[@name='Response']" name="name">Respond</attr>
|
2004-05-10 20:00:08 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/method[@name='SetDefaultResponse']/*/*[@name='response_id']" name="type">GtkResponseType</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/method[@name='SetResponseSensitive']/*/*[@name='response_id']" name="type">GtkResponseType</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkDialog']/signal[@name='Response']/*/*[@name='response_id']" name="type">GtkResponseType</attr>
|
2005-08-22 16:55:20 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/method[@name='SetEditable']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/method[@name='SetPosition']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/method[@name='SelectRegion']" name="hidden">1</attr>
|
2005-08-22 16:55:20 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/property[@name='Editable']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/signal[@name='Activate']" name="name">Activated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/signal[@name='CopyClipboard']" name="name">ClipboardCopied</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/signal[@name='CutClipboard']" name="name">ClipboardCut</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntry']/signal[@name='PasteClipboard']" name="name">ClipboardPasted</attr>
|
2005-04-21 17:10:54 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkEntryCompletion']/signal[@name='InsertPrefix']" name="name">PrefixInserted</attr>
|
2004-12-07 01:34:17 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkExpander']/constructor[@cname='gtk_expander_new_with_mnemonic']" name="preferred">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkExpander']/signal[@name='Activate']" name="name">Activated</attr>
|
2005-01-28 16:03:27 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileChooserDialog']/constructor[@cname='gtk_file_chooser_dialog_new']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileChooserDialog']/constructor[@cname='gtk_file_chooser_dialog_new_with_backend']" name="hidden">1</attr>
|
2005-06-24 19:27:01 +00:00
|
|
|
<remove-node path="/api/namespace/object[@cname='GtkFileChooserWidget']/implements/interface[@cname='GtkFileChooserEmbed']" />
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='ActionArea']" name="type">GtkHButtonBox*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='ActionArea']" name="new_flag">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='ButtonArea']" name="type">GtkHButtonBox*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='CmplState']" name="access">private</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='CancelButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='DirList']" name="type">GtkTreeView*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='FileList']" name="type">GtkTreeView*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='FileopCDir']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='FileopDelFile']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='FileopDialog']" name="type">GtkMessageDialog*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='FileopEntry']" name="type">GtkEntry*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='FileopRenFile']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='HelpButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='HistoryList']" name="access">private</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='HistoryMenu']" name="type">GtkMenu*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='HistoryPulldown']" name="type">GtkOptionMenu*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='MainVbox']" name="name">MainVBox</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='MainVBox']" name="type">GtkVBox*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='OkButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='SelectionEntry']" name="type">GtkEntry*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/field[@name='SelectionText']" name="type">GtkLabel*</attr>
|
2005-06-02 14:16:52 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/method[@name='GetFilename']/return-type" name="type">const-gfilename*</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/method[@name='GetSelections']" name="hidden">1</attr>
|
2005-06-02 14:16:52 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/method[@name='SetFilename']/*/*[@name='filename']" name="type">const-gfilename*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFileSelection']/property[@name='Filename']" name="type">gfilename*</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFilePath']" name="parent">GObject</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFontSelectionDialog']/field[@name='ApplyButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFontSelectionDialog']/field[@name='ApplyButton']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFontSelectionDialog']/field[@name='CancelButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFontSelectionDialog']/field[@name='CancelButton']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFontSelectionDialog']/field[@name='OkButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFontSelectionDialog']/field[@name='OkButton']" name="access">public</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkFrame']/method[@name='GetLabelAlign']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkFrame']/method[@name='SetLabelAlign']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkHandleBox']/property[@name='ShadowType']" name="hidden">1</attr>
|
2004-05-07 19:04:03 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkHScale']/constructor[@cname='gtk_hscale_new_with_range']" name="hidden">1</attr>
|
2005-05-11 22:43:04 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconTheme']/method[@name='GetIconSizes']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconTheme']/method[@name='GetSearchPath']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconTheme']/method[@name='ListIcons']" name="hidden">1</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconTheme']/method[@name='LookupIcon']/return-type" name="owned">true</attr>
|
* generator/Parameters.cs (IsHidden): method to check if a
parameter should be hidden in the managed sig (eg, because it's
user_data, or it's the length of the preceding array/string, etc).
(VisibleCount): the number of parameters that will actually be
exposed in the managed signature.
(IsAccessor): test VisibleCount, not Count
(AccessorReturnType, AccessorName): deal with the fact that the
accessor parameter might not be the first one.
* generator/CallbackGen.cs:
* generator/Signature.cs: use Parameters.IsHidden.
* generator/Method.cs (Initialize): set is_set based on
VisibleCount, not Count.
(Validate): call base.Validate() before Initialize() so that
VisibleCount will be correct in Initialize.
* generator/MethodBody.cs (GetCallString, CallArrayLength,
Initialize): update to deal with accessors with multiple args.
* gtk/Clipboard.custom (SetText): implement as an Obsolete variant
of the Text property
* gtk/IconTheme.custom (SearchPath, SetSearchPath): obsolete
SetSearchPath, implement a setter on SearchPath instead.
* gtk/ListStore.custom (SetColumnTypes):
* gtk/TreeStore.custom (SetColumnTypes): implement as an Obsolete
variant of the ColumnTypes property.
* glade/XML.custom (CustomHandler): implement as a property
(SetCustomHandler): Mark this obsolete
* glade/Global.custom (SetCustomHandler): deprecate in favor of
XML.CustomHandler.
* gnomedb/Editor.custom (SetText): implement as an Obsolete
variant of the Text property
svn path=/trunk/gtk-sharp/; revision=43898
2005-05-02 20:10:03 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconTheme']/method[@name='SetSearchPath']" name="hidden">1</attr>
|
2005-04-21 17:10:54 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='ItemActivated']" name="name">ActivateItem</attr>
|
2005-12-09 23:16:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='EnableModelDragDest']/*/*[@name='targets']" name="array">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='EnableModelDragSource']/*/*[@name='targets']" name="array">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetCursor']/*/parameter" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetCursor']/*/*[@name='path']" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetDestItemAtPos']/*/*[@name='path']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetDestItemAtPos']/*/*[@name='path']" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetDragDestItem']/*/*[@name='path']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetDragDestItem']/*/*[@name='path']" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetItemAtPos']/*/*[@name='path']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetItemAtPos']/*/*[@name='cell']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetItemAtPos']/*/*[@name='path']" name="owned">true</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetPathAtPos']/return-type" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetSelectedItems']/return-type" name="element_type">GtkTreePath*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetSelectedItems']/return-type" name="elements_owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetSelectedItems']/return-type" name="owned">true</attr>
|
2005-12-09 23:16:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetVisibleRange']/*/parameter" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='GetVisibleRange']/*/parameter" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/method[@name='ScrollToPath']" name="hidden">1</attr>
|
2005-04-21 17:10:54 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/signal[@name='SelectAll']" name="name">AllSelected</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/signal[@name='SetScrollAdjustments']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIconView']/signal[@name='UnselectAll']" name="name">AllUnselected</attr>
|
2004-05-07 17:32:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkImageMenuItem']/constructor[@cname='gtk_image_menu_item_new_with_mnemonic']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImageMenuItem']/constructor[@cname='gtk_image_menu_item_new_with_label']" name="hidden">1</attr>
|
2004-05-10 17:37:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/constructor[@cname='gtk_image_new_from_animation']/*/*[@name='animation']" name="property_name">pixbuf_animation</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/constructor[@cname='gtk_image_new_from_file']/*/*[@name='filename']" name="property_name">file</attr>
|
2005-04-21 17:10:54 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/constructor[@cname='gtk_image_new_from_icon_name']" name="shared">true</attr>
|
2005-01-07 19:32:23 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/constructor[@cname='gtk_image_new_from_icon_set']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/constructor[@cname='gtk_image_new_from_stock']" name="hidden">1</attr>
|
2004-12-17 17:55:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/method[@name='GetIconSet']/*/*[@name='icon_set']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/method[@name='GetImage']/*/*[@name='gdk_image']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/method[@name='GetImage']/*/*[@name='mask']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/method[@name='GetPixmap']/*/*[@name='pixmap']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/method[@name='GetPixmap']/*/*[@name='mask']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkImage']/method[@name='GetStock']/*/*[@name='stock_id']" name="pass_as">out</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIMContext']/signal[@name='DeleteSurrounding']" name="name">SurroundingDeleted</attr>
|
2005-01-04 19:25:29 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIMContext']/method[@name='GetPreeditString']/*/*[@name='str']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkIMContext']/method[@name='GetPreeditString']/*/*[@name='attrs']" name="pass_as">out</attr>
|
2005-01-04 19:19:57 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkIMContext']/method[@name='GetSurrounding']/*/*[@name='text']" name="pass_as">out</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkInputDialog']/field[@name='CloseButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkInputDialog']/field[@name='CloseButton']" name="access">public</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkInputDialog']/field[@name='SaveButton']" name="type">GtkButton*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkInputDialog']/field[@name='SaveButton']" name="access">public</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkInvisible']/property[@name='Screen']" name="new_flag">1</attr>
|
2004-05-10 17:37:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkItemFactory']/constructor[@cname='gtk_item_factory_new']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkItemFactory']/method[@name='GetItemByAction']" name="name">GetItem</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkItemFactory']/method[@name='GetWidgetByAction']" name="name">GetWidget</attr>
|
2005-05-04 11:47:25 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkItemFactory']/method[@name='PopupWithData']/*/*[@name='destroy']" name="type">GtkDestroyNotify</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkItem']/signal[@name='Deselect']" name="name">Deselected</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkItem']/signal[@name='Select']" name="name">Selected</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkItem']/signal[@name='Toggle']" name="name">Toggled</attr>
|
2003-12-31 02:10:08 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkLabel']/constructor[@cname='gtk_label_new_with_mnemonic']" name="preferred">1</attr>
|
2004-05-07 13:42:59 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkLabel']/constructor[@cname='gtk_label_new_with_mnemonic']/*/*[@name='str']" name="property_name">label</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkLayout']/signal[@name='SetScrollAdjustments']" name="name">ScrollAdjustmentsSet</attr>
|
2005-05-11 19:41:45 +00:00
|
|
|
<add-node path="/api/namespace/object[@name='ListStore']"><implements><interface name="IEnumerable" /></implements></add-node>
|
2004-09-29 18:45:59 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/constructor[@cname='gtk_list_store_new']" name="hidden">1</attr>
|
2004-05-07 19:33:09 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/constructor[@cname='gtk_list_store_newv']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='Append']/*/*[@name='iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='InsertAfter']/*/*[@name='iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='InsertBefore']/*/*[@name='iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='Insert']/*/*[@name='iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='Prepend']/*/*[@name='iter']" name="pass_as">out</attr>
|
2004-04-28 20:35:39 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='Remove']/*/*[@name='iter']" name="pass_as">ref</attr>
|
2005-04-05 20:14:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='Set']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='SetColumnTypes']/*/*[@name='types']" name="array">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/constructor[@cname='gtk_menu_item_new_with_mnemonic']" name="preferred">1</attr>
|
2004-05-07 15:48:25 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/constructor[@cname='gtk_menu_item_new_with_mnemonic']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/constructor[@cname='gtk_menu_item_new_with_label']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='Activate']" name="name">Activated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='ChildNotify']" name="name">ChildNotified</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='Deactivate']" name="name">Deactivated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='MnemonicActivate']" name="name">MnemonicActivated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='RemoveWidget']" name="name">WidgetRemoved</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='SizeAllocate']" name="name">SizeAllocated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='SizeRequest']" name="name">SizeRequested</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='ToggleSizeAllocate']" name="name">ToggleSizeAllocated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuItem']/signal[@name='ToggleSizeRequest']" name="name">ToggleSizeRequested</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenu']/method[@name='Popup']/*/*[@name='func']" name="scope">call</attr>
|
2005-02-12 06:30:56 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenu']/method[@name='SetScreen']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuShell']/signal[@name='Cancel']" name="name">Canceled</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkMenuShell']/signal[@name='Deactivate']" name="name">Deactivated</attr>
|
2005-01-20 15:45:13 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkMessageDialog']/constructor[@cname='gtk_message_dialog_new']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkMessageDialog']/constructor[@cname='gtk_message_dialog_new_with_markup']" name="hidden">1</attr>
|
2005-08-22 16:55:20 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkNotebook']/property[@name='Homogeneous']" name="deprecated">1</attr>
|
2004-09-29 18:45:59 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/constructor[@cname='gtk_object_new']" name="hidden">1</attr>
|
2004-12-17 23:21:53 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/method[@name='Destroy']" name="hidden">1</attr>
|
2005-04-06 15:47:17 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/method[@name='Get']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/method[@name='Set']" name="hidden">1</attr>
|
2005-05-04 11:47:25 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/method[@name='SetDataFull']/*/*[@name='destroy']" name="type">GtkDestroyNotify</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/method[@name='SetDataByIdFull']/*/*[@name='destroy']" name="type">GtkDestroyNotify</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/method[@name='Weakref']/*/*[@name='notify']" name="type">GtkDestroyNotify</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/method[@name='Weakunref']/*/*[@name='notify']" name="type">GtkDestroyNotify</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkObject']/signal[@name='Destroy']" name="name">Destroyed</attr>
|
2004-05-10 17:37:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkPlug']/constructor[@cname='gtk_plug_new']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkPlug']/constructor[@cname='gtk_plug_new_for_display']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkProgressBar']" name="parent">GtkWidget</attr>
|
2004-01-09 19:58:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioButton']/constructor[@cname='gtk_radio_button_new']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioButton']/constructor[@cname='gtk_radio_button_new_with_label_from_widget']" name="hidden">1</attr>
|
2004-05-07 21:55:11 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioButton']/constructor[@cname='gtk_radio_button_new_from_widget']/*/*[@name='group']" name="property_name">group</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioButton']/constructor[@cname='gtk_radio_button_new_with_mnemonic_from_widget']/*/*[@name='group']" name="property_name">group</attr>
|
2004-01-09 19:58:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioButton']/constructor[@cname='gtk_radio_button_new_with_label']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioButton']/constructor[@cname='gtk_radio_button_new_with_mnemonic']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioButton']/property[@name='Group']" name="hidden">1</attr>
|
2004-02-06 18:56:00 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioMenuItem']/constructor[@cname='gtk_radio_menu_item_new']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioMenuItem']/constructor[@cname='gtk_radio_menu_item_new_with_label']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkRadioMenuItem']/constructor[@cname='gtk_radio_menu_item_new_with_label_from_widget']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkRcStyle']/method[@name='Ref']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkRcStyle']/method[@name='Unref']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkReadyEvent']" name="hidden">1</attr>
|
2005-12-09 23:16:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkScrolledWindow']/field[@name='Hscrollbar']" name="access">private</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkScrolledWindow']/field[@name='Vscrollbar']" name="access">private</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkScrolledWindow']/method[@name='GetHscrollbar']" name="name">GetHScrollbar</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkScrolledWindow']/method[@name='GetPolicy']/*/*[@type='GtkPolicyType*']" name="pass_as">out</attr>
|
2005-12-09 23:16:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkScrolledWindow']/method[@name='GetVscrollbar']" name="name">GetVScrollbar</attr>
|
2004-12-21 18:46:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkSeparatorToolItem']/property[@name='Draw']" name="new_flag">1</attr>
|
2004-05-07 19:41:36 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkSpinButton']/constructor[@cname='gtk_spin_button_new_with_range']" name="hidden">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkStyle']/field[@type='GdkColor*']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkStyle']/field[@type='GdkGC*']" name="hidden">1</attr>
|
2004-05-07 21:31:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTable']/constructor[@cname='gtk_table_new']/*/*[@name='columns']" name="property_name">n_columns</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTable']/constructor[@cname='gtk_table_new']/*/*[@name='rows']" name="property_name">n_rows</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTable']/method[@name='AttachDefaults']" name="name">Attach</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTable']/method[@name='SetColSpacings']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTable']/method[@name='SetRowSpacings']" name="hidden">1</attr>
|
2004-05-10 17:37:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/constructor[@cname='gtk_text_buffer_new']/*/*[@type='GtkTextTagTable*']" name="property_name">tag_table</attr>
|
2004-12-03 18:00:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method/*/*[@type='GtkTextIter*']" name="pass_as">ref</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='ApplyTagByName']" name="name">ApplyTag</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='DeleteMarkByName']" name="name">DeleteMark</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetBounds']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetEndIter']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetInsert']" name="name">GetInsertMark</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetIterAtChildAnchor']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
2004-12-03 18:00:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetIterAtLine']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetIterAtLineIndex']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetIterAtLineOffset']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetIterAtMark']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetIterAtOffset']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetSelectionBounds']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='GetStartIter']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
2004-08-13 17:33:46 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='Insert']" name="hidden">1</attr>
|
2004-12-03 18:00:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='InsertAtCursor']" name="hidden">1</attr>
|
2004-08-19 15:42:15 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='InsertInteractive']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='InsertInteractiveAtCursor']" name="hidden">1</attr>
|
2004-12-03 18:00:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='InsertWithTags']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='InsertWithTagsByName']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='MoveMarkByName']" name="name">MoveMark</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='RemoveTagByName']" name="name">RemoveTag</attr>
|
2004-12-03 18:00:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/method[@name='SetText']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/signal[@name='ApplyTag']" name="name">TagApplied</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/signal[@name='BeginUserAction']" name="name">UserActionBegun</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/signal[@name='EndUserAction']" name="name">UserActionEnded</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/signal[@name='InsertChildAnchor']" name="name">ChildAnchorInserted</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/signal[@name='InsertPixbuf']" name="name">PixbufInserted</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/signal[@name='RemoveChildAnchor']" name="name">ChildAnchorRemoved</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextBuffer']/signal[@name='RemoveTag']" name="name">TagRemoved</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextChildAnchor']/method[@name='GetWidgets']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextLayout']/method[@name='GetIterAtLine']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkText']/signal[@name='SetScrollAdjustments']" name="name">ScrollAdjustmentsSet</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextTag']/method[@name='Event']" name="name">ProcessEvent</attr>
|
2003-12-12 16:45:51 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextTag']/property[@name='Weight']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextTag']/signal[@name='Event']" name="name">TextEvent</attr>
|
2005-06-14 15:45:06 +00:00
|
|
|
<add-node path="/api/namespace/object[@cname='GtkTextTag']">
|
|
|
|
<property name="BackgroundSet" cname="background_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="BackgroundFullHeightSet" cname="background_full_height_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="BackgroundStippleSet" cname="background_stipple_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="ForegroundSet" cname="foreground_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="ForegroundStippleSet" cname="foreground_stipple_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="EditableSet" cname="editable_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="FamilySet" cname="family_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="StyleSet" cname="style_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="VariantSet" cname="variant_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="WeightSet" cname="weight_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="StretchSet" cname="stretch_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="SizeSet" cname="size_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="ScaleSet" cname="scale_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="JustificationSet" cname="justification_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="LanguageSet" cname="language_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="LeftMarginSet" cname="left_margin_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="IndentSet" cname="indent_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="RiseSet" cname="rise_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="PixelsAboveLinesSet" cname="pixels_above_lines_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="PixelsBelowLinesSet" cname="pixels_below_lines_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="PixelsInsideWrapSet" cname="pixels_inside_wrap_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="StrikethroughSet" cname="strikethrough_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="RightMarginSet" cname="right_margin_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="UnderlineSet" cname="underline_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="WrapModeSet" cname="wrap_mode_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="TabsSet" cname="tabs_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
<property name="InvisibleSet" cname="invisible_set" type="gboolean" readable="true" writeable="true" />
|
|
|
|
</add-node>
|
|
|
|
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextTagTable']/method[@name='Foreach']/*/*[@name='func']" name="scope">call</attr>
|
2004-05-07 21:31:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/constructor[@cname='gtk_text_view_new_with_buffer']" name="hidden">1</attr>
|
2004-12-03 18:00:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='BackwardDisplayLine']/*/*[@type='GtkTextIter*']" name="pass_as">ref</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='BackwardDisplayLineStart']/*/*[@type='GtkTextIter*']" name="pass_as">ref</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='ForwardDisplayLine']/*/*[@type='GtkTextIter*']" name="pass_as">ref</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='ForwardDisplayLineEnd']/*/*[@type='GtkTextIter*']" name="pass_as">ref</attr>
|
* parser/gapi2xml.pl (addFuncElems): if a struct or boxed type has
a constructor or a ref, unref, or destroy method, then it must be
a reference type, so mark it "opaque" but then also mark all of
its fields public and writable.
* */*-api*.raw: Regen
* generator/Parser.cs (ParseNamespace): make the opaque attribute
check actually look at the value of the attribute rather than just
checking if it's there, so that you can change a struct's opaque
attribute from "true" to "false" via metadata and have that work.
* generator/BoxedGen.cs (Generate): do not generate the boxed's
"Free" method (since it's guaranteed to crash when we pass it a
stack pointer). If "Copy" is marked deprecated, create a
deprecated no-op for it, otherwise just skip it (since otherwise
it will just leak memory when we copy its result onto the stack).
* pango/Pango.metadata: deprecate Pango.Color.Copy and
Pango.Matrix.Copy. Hide some array fields in Pango.GlyphString
that we've never generated correctly. Tweak Pango.LayoutLine
fields to be the same as they used to be.
* pango/GlyphItem.custom (glyphs, item):
* pango/GlyphString.custom (Zero, New):
* pango/Item.custom (Zero, New):
* pango/LayoutRun.custom (glyphs, item): add deprecated API compat
* gdk/Gdk.metadata: undo the parser's new opaquification of
Gdk.Font; it's been deprecated since pre-gtk# times, and no one
should be using it, so there's no point in fixing it now. Fix up a
few other things to match how they used to be. Fix RgbCmap's
constructor args.
* gdk/RgbCmap.custom (Zero, New): deprecated API compat
* gdk/PangoAttrEmbossed.custom:
* gdk/PangoAttrStipple.custom (Zero, New, Attr): deprecated API
compat
(explicit operator ...): allow casting back and forth between
Pango.Attribute. (We can't usefully make them real subclasses of
Pango.Attribute, because there's no way for
Pango.Attribute.GetAttribute() to be able to dtrt with them.)
* gtk/Gtk.metadata: deprecate Gtk.Requisition.Copy,
Gtk.TextIter.Copy, and Gtk.TreeIter.Copy. Mark the return value of
TextView.DefaultAttributes as "owned". Mark TargetList's fields
private so it stays how it used to be.
* gtk/TextAttributes.custom (Zero, New): deprecated API compat
* gnomevfs/Gnomevfs.metadata: remove a bunch of opaque
declarations that the parser figures out on its own now.
* art/Art.metadata:
* glade/Glade.metadata:
* rsvg/Rsvg.metadata: un-mark everything the parser marked opaque
in these libraries, because all of the structs in question would
still be unusably broken, so the API churn would be pointless.
svn path=/trunk/gtk-sharp/; revision=48387
2005-08-15 15:15:57 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='GetDefaultAttributes']/return-type" name="owned">true</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='GetIterAtLocation']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='GetLineAtY']/*/*[@type='GtkTextIter*']" name="pass_as">out</attr>
|
2004-01-30 16:03:47 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='GetIterLocation']/*/*[@type='GdkRectangle*']" name="pass_as">out</attr>
|
2005-03-09 15:06:38 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='GetVisibleRect']/*/*[@type='GdkRectangle*']" name="pass_as">out</attr>
|
2004-12-03 18:00:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/method[@name='MoveVisually']/*/*[@type='GtkTextIter*']" name="pass_as">ref</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTextView']/signal[@name='SetScrollAdjustments']" name="name">ScrollAdjustmentsSet</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkToggleAction']/method[@name='Toggled']" name="name">Toggle</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkToggleButton']/constructor[@cname='gtk_toggle_button_new_with_mnemonic']" name="preferred">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToggleButton']/method[@name='Toggled']" name="name">Toggle</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/field[@name='Children']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/field[@name='Style']" name="hidden">1</attr>
|
2005-01-25 15:28:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/method[@name='AppendElement']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/method[@name='AppendItem']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/method[@name='InsertElement']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/method[@name='InsertItem']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/method[@name='InsertStock']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/method[@name='PrependElement']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolbar']/method[@name='PrependItem']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkToolItem']/signal[@name='SetTooltip']" name="name">TooltipSet</attr>
|
2004-11-07 16:19:10 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelFilter']/method[@name='ConvertIterToChildIter']/*/*[@name='child_iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelFilter']/method[@name='ConvertChildIterToIter']/*/*[@name='filter_iter']" name="pass_as">out</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelFilter']/method[@name='ConvertChildPathToPath']/return-type" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelFilter']/method[@name='ConvertPathToChildPath']/return-type" name="owned">true</attr>
|
2005-04-01 17:38:51 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelFilter']/method[@name='SetModifyFunc']" name="hidden">1</attr>
|
2004-05-07 21:31:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelSort']/constructor[@cname='gtk_tree_model_sort_new_with_model']/*/*[@name='child_model']" name="property_name">model</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelSort']/method[@name='ConvertChildIterToIter']/*/*[@name='sort_iter']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelSort']/method[@name='ConvertIterToChildIter']/*/*[@name='child_iter']" name="pass_as">out</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelSort']/method[@name='ConvertChildPathToPath']/return-type" name="owned">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeModelSort']/method[@name='ConvertPathToChildPath']/return-type" name="owned">true</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeSelection']/method[@name='GetSelected']/*/*" name="pass_as">out</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeSelection']/method[@name='GetSelectedRows']" name="hidden">1</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeSelection']/method[@name='SelectedForeach']/*/*[@name='func']" name="scope">call</attr>
|
2004-09-29 18:45:59 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/constructor[@cname='gtk_tree_store_new']" name="hidden">1</attr>
|
2004-05-07 19:33:09 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/constructor[@cname='gtk_tree_store_newv']" name="hidden">1</attr>
|
2005-03-29 21:12:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='Append']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='InsertAfter']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='InsertBefore']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='Insert']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='Prepend']" name="hidden">1</attr>
|
2004-01-07 21:38:22 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='Remove']/*/*[@name='iter']" name="pass_as">ref</attr>
|
2005-04-05 20:14:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='Set']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='SetColumnTypes']/*/*[@name='types']" name="array">1</attr>
|
2005-01-04 18:54:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/constructor[@cname='gtk_tree_view_column_new_with_attributes']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='AddAttribute']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='Clear']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='ClearAttributes']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='Clicked']" name="name">Click</attr>
|
2005-01-04 18:54:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='GetCellRenderers']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='PackEnd']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='PackStart']" name="hidden">1</attr>
|
2005-01-04 18:54:02 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeViewColumn']/method[@name='SetAttributes']" name="hidden">1</attr>
|
2003-11-19 23:12:47 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='EnableModelDragDest']/*/*[@name='targets']" name="array">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='EnableModelDragSource']/*/*[@name='targets']" name="array">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetCellArea']/*/*[@name='rect']" name="pass_as">out</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetColumns']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetCursor']/*/*[@name='focus_column']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetCursor']/*/*[@name='path']" name="pass_as">out</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetCursor']/*/*[@name='path']" name="owned">true</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetDestRowAtPos']/*/*[@name='path']" name="pass_as">out</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetDestRowAtPos']/*/*[@name='path']" name="owned">true</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetDestRowAtPos']/*/*[@name='pos']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetDragDestRow']/*/*[@name='path']" name="pass_as">out</attr>
|
Automatic memory management for opaque types [#49565]
* glib/Opaque.cs (Owned): new property saying whether or not gtk#
owns the memory.
(Opaque): Set Owned to true in the void ctor and false in the
IntPtr one.
(GetOpaque): add a new overload that can also create opaques, a la
GLib.Object.GetObject.
(Ref, Unref, Free): empty virtual methods to be overridden by
subclasses.
(set_Raw): Unref() and possibly Free() the old value, Ref() the
new one.
(~Opaque, Dispose): set Raw to IntPtr.Zero (triggering Free/Unref
if needed)
* parser/gapi2xml.pl (addReturnElem): if the method is named Copy
and returns a pointer, set the "owned" attribute on the
return-type.
* */*-api.raw: Regen
* generator/HandleBase.cs (FromNative): Add new
FromNative/FromNativeReturn overloads that takes a "bool owned"
param. Implement the 1-arg FromNative and FromNativeReturn in
terms of that.
* generator/ObjectBase.cs (FromNative): Implement HandleBase's new
overload. Use the two-arg version of GLib.Object.GetObject when
"owned" is true.
* generator/OpaqueGen.cs (Generate): Pull out Ref, Unref, and
Free/Destroy/Dispose methods and handle them specially by
overriding Opaque.Ref, .Unref, and .Free appropriately. (If any
of the methods are marked deprecated, output a deprecated
do-nothing method as well, to save us from having to write all
those deprecated methods by hand.)
(FromNative): use GetOpaque, passing "owned".
* generator/ReturnValue.cs (FromNative): if the value is a
HandleBase, pass Owned to its FromNative().
* generator/Parameters.cs (Owned): new property (for use on out
params)
(FromNative): Call FromNative() on the generatable, handling Owned
in the case of HandleBase.
* generator/ManagedCallString.cs:
* generator/MethodBody.cs:
* generator/Signal.cs: use param.FromNative() rather than
param.Generatable.FromNative(), to get ownership right.
* */*.metadata: Mark opaque ref/unref/free methods deprecated
(except where we were hiding them before). Add "owned" attributes
to return values and out params as needed.
* pango/AttrIterator.custom (GetFont): work around a
memory-management oddity of the underlying method.
* pango/AttrFontDesc.cs (AttrFontDesc): copy the passed-in
FontDescriptor, since the attribute will assume ownership of it.
* gtk/TreeView.custom (GetPathAtPos): set the "owned" flag on the
returned TreePaths.
* gtk/TargetList.custom: Remove refcounting stuff, which is
now handled automatically
* gtk/NodeStore.cs (GetPath): clear the Owned flag on the created
TreePath so that the underlying structure doesn't get freed when
the function returns
* gtkhtml/HTMLStream.custom (Destroy): hide this and then
reimplement it by hand to keep OpaqueGen from using it in
Dispose(), since calling it after an HTMLStream.Close() will
result in a crash.
svn path=/trunk/gtk-sharp/; revision=47928
2005-08-02 18:45:21 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetDragDestRow']/*/*[@name='path']" name="owned">true</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetDragDestRow']/*/*[@name='pos']" name="pass_as">out</attr>
|
2004-01-30 16:03:47 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetBackgroundArea']/*/*[@name='rect']" name="pass_as">out</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetPathAtPos']" name="hidden">1</attr>
|
2005-09-08 19:01:01 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetVisibleRect']/*/*[@name='visible_rect']" name="pass_as">out</attr>
|
2005-12-09 23:16:42 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetVisibleRange']/*/parameter" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='GetVisibleRange']/*/parameter" name="owned">true</attr>
|
2004-12-30 16:29:44 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='InsertColumnWithAttributes']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='InsertColumnWithDataFunc']" name="hidden">1</attr>
|
2005-04-04 17:46:05 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='MapExpandedRows']/*/*[@name='func']" name="scope">call</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='RowActivated']" name="name">ActivateRow</attr>
|
2004-01-08 21:57:30 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/method[@name='RowExpanded']" name="name">GetRowExpanded</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkTreeView']/signal[@name='SetScrollAdjustments']" name="name">ScrollAdjustmentsSet</attr>
|
2004-11-26 14:59:38 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkUIManager']/constructor[@cname='gtk_ui_manager_new_merge_id']" name="hidden">1</attr>
|
2004-12-07 01:31:50 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkUIManager']/method[@cname='gtk_ui_manager_get_action_groups']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkUIManager']/method[@name='GetToplevels']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkViewport']/signal[@name='SetScrollAdjustments']" name="name">ScrollAdjustmentsSet</attr>
|
2004-05-07 19:04:03 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkVScale']/constructor[@cname='gtk_vscale_new_with_range']" name="hidden">1</attr>
|
2004-11-09 14:22:39 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']" name="disable_gtype_ctor">1</attr>
|
2004-09-29 18:45:59 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/constructor[@cname='gtk_widget_new']" name="hidden">1</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/field[@name='Allocation']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/field[@name='Requisition']" name="writeable">true</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/field[@name='Window']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='ClassPath']/*/*[@type='gchar**']" name="pass_as">out</attr>
|
2004-12-17 23:21:53 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Destroy']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Destroyed']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Event']" name="name">ProcessEvent</attr>
|
2004-09-29 18:45:59 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetChildRequisition']/*/*[@name='requisition']" name="pass_as">out</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetColormap']" name="needs_ref">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetDefaultColormap']" name="needs_ref">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetDefaultStyle']" name="needs_ref">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetDefaultVisual']" name="needs_ref">1</attr>
|
2004-03-25 18:40:12 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetEvents']/return-type" name="type">GdkEventMask</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetModifierStyle']" name="needs_ref">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetParentWindow']" name="needs_ref">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetStyle']" name="needs_ref">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='GetVisual']" name="needs_ref">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Intersect']/*/*[@name='intersection']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='IsFocus']" name="name">GetIsFocus</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='ListAccelClosures']" name="hidden">1</attr>
|
2005-05-11 18:04:52 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='ListMnemonicLabels']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Path']/*/*[@type='gchar**']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Ref']" name="hidden">1</attr>
|
2004-03-25 18:40:12 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='SetEvents']/*/*[@type='gint']" name="type">GdkEventMask</attr>
|
2005-02-11 15:59:22 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Set']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='SetState']" name="hidden">1</attr>
|
2004-06-01 15:28:22 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='SizeRequest']/*/*[@name='requisition']" name="pass_as">out</attr>
|
2005-02-11 15:59:22 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='StyleGet']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='StyleGetProperty']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='StyleGetValist']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/method[@name='Unref']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='CanActivateAccel']" name="name">AccelCanActivate</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='ChildNotify']" name="name">ChildNotified</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Event']" name="name">WidgetEvent</attr>
|
2005-02-23 20:16:40 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='EventAfter']/*/*[@name='inst']" name="name">widget</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='EventAfter']/*/*[@name='p0']" name="name">event</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='EventAfter']" name="name">WidgetEventAfter</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Focus']" name="name">Focused</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='GrabFocus']" name="name">FocusGrabbed</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Hide']" name="name">Hidden</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Map']" name="name">Mapped</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='MnemonicActivate']" name="name">MnemonicActivated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Realize']" name="name">Realized</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='ShowHelp']" name="name">HelpShown</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Show']" name="name">Shown</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='SizeAllocate']" name="name">SizeAllocated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='SizeRequest']" name="name">SizeRequested</attr>
|
2004-05-26 19:49:43 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='SizeRequested']/*/*[@name='requisition']" name="pass_as">ref</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Unmap']" name="name">Unmapped</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWidget']/signal[@name='Unrealize']" name="name">Unrealized</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/field[@name='Position']" name="hidden">1</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='GetDefaultIconList']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='GetDefaultSize']/*/*[@type='gint*']" name="pass_as">out</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='GetIconList']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='GetPosition']/*/*[@type='gint*']" name="pass_as">out</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='GetSize']/*/*[@type='gint*']" name="pass_as">out</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='HasToplevelFocus']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='IsActive']" name="hidden">1</attr>
|
2005-06-23 22:28:06 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='ListToplevels']/return-type" name="element_type">GtkWindow*</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='ListToplevels']/return-type" name="owned">true</attr>
|
2004-02-11 21:34:32 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='SetDefaultIconList']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/method[@name='SetIconList']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/property[@name='Screen']" name="new_flag">1</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/signal[@name='ActivateDefault']" name="name">DefaultActivated</attr>
|
|
|
|
<attr path="/api/namespace/object[@cname='GtkWindow']/signal[@name='ActivateFocus']" name="name">FocusActivated</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkBindingArg']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkBindingEntry']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkBindingSet']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkBindingSignal']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkBoxChild']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkFixedChild']" name="hidden">1</attr>
|
2005-01-26 22:46:24 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkIMContextInfo']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkItemFactoryItem']" name="hidden">1</attr>
|
2005-01-05 18:23:44 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkImageAnimationData']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkImageIconSetData']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkImageImageData']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkImagePixbufData']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkImagePixmapData']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkImageStockData']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkKeyHash']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkLabelSelectionInfo']" name="hidden">1</attr>
|
2004-01-09 20:52:27 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkNotebookPage']/method[@name='Num']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkProgressClass']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkProgress']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkRangeLayout']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkRangeStepTimer']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkRcContext']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTableChild']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTableRowCol']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTargetEntry']/field[@cname='flags']" name="type">GtkTargetFlags</attr>
|
2004-10-19 14:21:48 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTargetList']/constructor[@cname='gtk_target_list_new']" name="hidden">1</attr>
|
* parser/gapi2xml.pl (addFuncElems): if a struct or boxed type has
a constructor or a ref, unref, or destroy method, then it must be
a reference type, so mark it "opaque" but then also mark all of
its fields public and writable.
* */*-api*.raw: Regen
* generator/Parser.cs (ParseNamespace): make the opaque attribute
check actually look at the value of the attribute rather than just
checking if it's there, so that you can change a struct's opaque
attribute from "true" to "false" via metadata and have that work.
* generator/BoxedGen.cs (Generate): do not generate the boxed's
"Free" method (since it's guaranteed to crash when we pass it a
stack pointer). If "Copy" is marked deprecated, create a
deprecated no-op for it, otherwise just skip it (since otherwise
it will just leak memory when we copy its result onto the stack).
* pango/Pango.metadata: deprecate Pango.Color.Copy and
Pango.Matrix.Copy. Hide some array fields in Pango.GlyphString
that we've never generated correctly. Tweak Pango.LayoutLine
fields to be the same as they used to be.
* pango/GlyphItem.custom (glyphs, item):
* pango/GlyphString.custom (Zero, New):
* pango/Item.custom (Zero, New):
* pango/LayoutRun.custom (glyphs, item): add deprecated API compat
* gdk/Gdk.metadata: undo the parser's new opaquification of
Gdk.Font; it's been deprecated since pre-gtk# times, and no one
should be using it, so there's no point in fixing it now. Fix up a
few other things to match how they used to be. Fix RgbCmap's
constructor args.
* gdk/RgbCmap.custom (Zero, New): deprecated API compat
* gdk/PangoAttrEmbossed.custom:
* gdk/PangoAttrStipple.custom (Zero, New, Attr): deprecated API
compat
(explicit operator ...): allow casting back and forth between
Pango.Attribute. (We can't usefully make them real subclasses of
Pango.Attribute, because there's no way for
Pango.Attribute.GetAttribute() to be able to dtrt with them.)
* gtk/Gtk.metadata: deprecate Gtk.Requisition.Copy,
Gtk.TextIter.Copy, and Gtk.TreeIter.Copy. Mark the return value of
TextView.DefaultAttributes as "owned". Mark TargetList's fields
private so it stays how it used to be.
* gtk/TextAttributes.custom (Zero, New): deprecated API compat
* gnomevfs/Gnomevfs.metadata: remove a bunch of opaque
declarations that the parser figures out on its own now.
* art/Art.metadata:
* glade/Glade.metadata:
* rsvg/Rsvg.metadata: un-mark everything the parser marked opaque
in these libraries, because all of the structs in question would
still be unusably broken, so the API churn would be pointless.
svn path=/trunk/gtk-sharp/; revision=48387
2005-08-15 15:15:57 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTargetList']/field" name="access">private</attr>
|
2004-10-19 14:21:48 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTargetList']/method[@name='AddTable']/*/*[@name='targets']" name="array">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTargetList']/method[@name='AddTable']/*/*[@name='ntargets']" name="name">n_targets</attr>
|
* generator/StructBase.cs: update field-generation logic a bit
* generator/CodeGenerator.cs: add a --glue-includes flag
* generator/GenerationInfo.cs: Accept glue_includes value from
Main and output it to the glue_filename.
* generator/FieldBase.cs (Ignored): handle more ignorable cases.
(CheckGlue): New method to figure out what kind of glue we'll need
for a field.
(GenerateImports): generate appropriate imports per CheckGlue.
(GenerateGlue): Generate C glue for accessing a struct field;
either a fully-C-based accessor, or a method to just return the
field's offset in the struct.
(Generate): Use the generated glue to read the field.
* generator/PropertyBase.cs (CType): if the field is a single bit,
set its type to gboolean.
* generator/ObjectGen.cs (Generate):
* generator/OpaqueGen.cs (Generate): Call GenFields.
* generator/StructField.cs: Use FieldBase's glue-generation code
to handle bitfields. [#54489]
* generator/ObjectField.cs: Generates accessors for public fields
of objects and opaque structs. [#69514]
* generator/ClassBase.cs (ClassBase): Parse <fields> nodes and
create ObjectField objects.
(GenFields): Output field properties
(IgnoreMethod): Ignore Get/Set methods that duplicate fields
* generator/Makefile.am (sources): update
* {gdk,gnome,gtk,pango}/*.metadata: Mark some additional fields as
public. Rename/retype some fields for consistency with earlier
hand-coded bindings.
* {gdk,gnome,gtk,pango}/*.custom: Remove custom methods that can
now be autogenerated.
* {gdk,gnome,gtk,pango}/glue/*.c: Remove glue methods that can now
be autogenerated
* {gdk,glade,gnome,gtk,pango,vte}/Makefile.am
* {gdk,glade,gnome,gtk,pango,vte}/glue/Makefile.am
* {gdk,gnome,gtk,pango}/glue/makefile.win32: Update
svn path=/trunk/gtk-sharp/; revision=44563
2005-05-16 14:28:55 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTextAppearance']/field[@cname='underline']" name="type">PangoUnderline</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTextAppearance']/field[@cname='draw_bg']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTextAppearance']/field[@cname='inside_selection']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTextAppearance']/field[@cname='is_text']" name="hidden">1</attr>
|
2004-12-22 19:37:58 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTextBTree']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkTextLogAttrCache']" name="hidden">1</attr>
|
2003-11-14 22:34:07 +00:00
|
|
|
<attr path="/api/namespace/struct[@cname='GtkToolbarChild']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkWidgetAuxInfo']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkWidgetShapeInfo']" name="hidden">1</attr>
|
|
|
|
<attr path="/api/namespace/struct[@cname='GtkWindowGeometryInfo']" name="hidden">1</attr>
|
2004-10-29 20:33:07 +00:00
|
|
|
<move-node path="/api/namespace/class[@cname='GtkBindings_']/method[@name='BindingsActivate']">/api/namespace/class[@cname='GtkGlobal']</move-node>
|
2003-11-14 22:34:07 +00:00
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintArrow']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintBoxGap']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintBox']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintCheck']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintDiamond']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintExpander']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintExtension']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintFlatBox']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintFocus']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintHandle']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintHline']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintLayout']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintOption']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintPolygon']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintResizeGrip']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintShadowGap']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintShadow']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintSlider']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintTab']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
|
|
|
<move-node path="/api/namespace/class[@cname='GtkGlobal']/method[@name='PaintVline']">/api/namespace/object[@cname='GtkStyle']</move-node>
|
2003-10-14 20:29:59 +00:00
|
|
|
</metadata>
|