Ryujinx-GtkSharp/gnome/Gnome.metadata

167 lines
19 KiB
Plaintext
Raw Normal View History

<?xml version="1.0"?>
<metadata>
<attr path="/api/namespace/callback[@cname='GnomeModuleClassInitHook']" name="hidden">1</attr>
<attr path="/api/namespace/callback[@cname='GnomeModuleHook']" name="hidden">1</attr>
<attr path="/api/namespace/callback[@cname='GnomeModuleInitHook']" name="hidden">1</attr>
<attr path="/api/namespace/enum[@cname='GnomePrintButtons']/member[@name='Cancel']" name="value">(int)Gtk.ResponseType.Cancel</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/constructor[@cname='gnome_app_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 16:28:55 +02:00
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@name='AccelGroup']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@name='Contents']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@cname='menubar']" name="name">Menus</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@name='Menus']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@name='Menus']" name="type">GtkMenuBar*</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@name='Name']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@name='Prefix']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeApp']/field[@name='Statusbar']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeDateEdit']/constructor[@cname='gnome_date_edit_new_flags']/*/*[@name='flags']" name="property_name">dateedit_flags</attr>
<attr path="/api/namespace/object[@cname='GnomeDateEdit']/constructor[@cname='gnome_date_edit_new_flags']/*/*[@name='the_time']" name="property_name">time</attr>
<attr path="/api/namespace/object[@cname='GnomeDateEdit']/constructor[@cname='gnome_date_edit_new']" name="hidden">1</attr>
* generator/CallbackGen.cs: * generator/CodeGenerator.cs: * generator/ManagedCallString.cs: * generator/Property.cs: Remove unused vars * generator/Method.cs (GetHashCode): have to implement this since we're overriding Equals. * generator/CallbackGen.cs: print a message when generating a broken struct-returning callback. (Currently affects GtkSharp.TextSegSplitFuncNative and GtkSharp.TextSegCleanupFuncNative) * gdk/glue/device.c: * gdk/glue/dragcontext.c: Add missing prototypes * gtk/Gtk.metadata: Mark SeparatorToolItem.Draw "new". Re-rename CheckMenuItem.Toggled to EmitToggled rather than Toggle, since that's a better description of what it does. * gtk/CheckMenuItem.custom: implement a "Toggle" method that does what the documentation claims it does. * gtk/NodeStore.cs: remove unused var * gnome/Gnome.metadata: mark DateEdit.Flags, Dialog.Default, and PropertyBox.State "new". Hide GnomePixmapEntry.GnomeEntry and GnomePixmapEntry.GtkEntry since they do exactly the same thing as the methods of the same names inherited from GnomeFileEntry. * gnome/glue/canvas-proxy.c: * gnome/glue/canvas-proxy.h: * gnome/glue/canvas-proxy-marshal.c: * gnome/glue/canvas-proxy-marshal.h: * gnome/glue/canvas-proxy-marshal.list: Remove unused code * gnome/glue/Makefile.am (libgnomesharpglue_2_la_SOURCES): update * panelapplet/PanelApplet.metadata: mark PanelApplet.Flags "new" * sample/CanvasExample.cs: * sample/CustomCellRenderer.cs: * sample/CustomNotebook.cs: * sample/DrawingSample.cs: * sample/Fifteen.cs: * sample/GladeTest.cs: * sample/GtkDemo/DemoHyperText.cs: * sample/GtkDemo/DemoPixbuf.cs: * sample/ScribbleXInput.cs: remove unused vars, use GLib.Timeout.Add rather than the deprecated Gtk.Timeout.Add svn path=/trunk/gtk-sharp/; revision=38043
2004-12-21 19:46:42 +01:00
<attr path="/api/namespace/object[@cname='GnomeDateEdit']/method[@name='GetFlags']" name="new_flag">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 17:15:57 +02:00
<attr path="/api/namespace/boxed[@cname='GnomeCanvasPoints']/field" name="access">private</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 20:45:21 +02:00
<attr path="/api/namespace/boxed[@cname='GnomeCanvasPoints']/method[@name='Free']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='GnomeCanvasPoints']/method[@name='Ref']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='GnomeGlyphList']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</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 20:45:21 +02:00
<attr path="/api/namespace/boxed[@cname='GnomeGlyphList']/method[@name='Ref']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='GnomeGlyphList']/method[@name='Unref']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='GnomeModuleInfo']" name="opaque">1</attr>
<attr path="/api/namespace/boxed[@cname='GnomeModuleInfo']/field[@name='Name']" name="access">public</attr>
<attr path="/api/namespace/boxed[@cname='GnomeModuleInfo']/field[@name='Version']" name="access">public</attr>
<attr path="/api/namespace/boxed[@cname='GnomeModuleInfo']/field[@name='Description']" name="access">public</attr>
<attr path="/api/namespace/boxed[@cname='GnomePrintUnit']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/boxed[@cname='GnomePrintUnit']/method[@name='GetIdentity']/*/*[@name='base']" name="name">Base</attr>
<attr path="/api/namespace/callback[@cname='GnomeTriggerActionFunction']/*/*[@name='supinfo']" name="type">const-char*</attr>
<attr path="/api/namespace/class[@cname='GnomeConfig_']/method[@name='SetSetHandler']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='GnomeConfig_']/method[@name='SetSyncHandler']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='GnomeGdk_']" name="name">GdkHelper</attr>
<attr path="/api/namespace/class[@cname='GnomeGtk_']" name="name">GtkHelper</attr>
<attr path="/api/namespace/class[@cname='GnomeGlobal']/method[@name='MdiModeGetType']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='GnomePrint_']/method/*/*[@name='in']" name="type">const-gchar*</attr>
<attr path="/api/namespace/class[@cname='GnomePrint_']/method/*/*[@name='text']" name="type">const-gchar*</attr>
<attr path="/api/namespace/class[@cname='GnomePrint_']/method/*/*[@name='name']" name="type">const-gchar*</attr>
<attr path="/api/namespace/class[@cname='GnomePrint_']/method/*/*[@name='data']" name="type">const-guchar</attr>
<attr path="/api/namespace/class[@cname='GnomePrint_']/method/*/*[@name='data']" name="array">1</attr>
<attr path="/api/namespace/class[@cname='GnomeThumbnail_']/method[@name='ScaleDownPixbuf']/return-type" name="owned">true</attr>
<attr path="/api/namespace/object[@cname='GnomeAbout']" name="disable_void_ctor">1</attr>
<attr path="/api/namespace/object[@cname='GnomeAbout']/constructor[@cname='gnome_about_new']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeAbout']/method[@name='Construct']/*/*[@type='const-gchar**']" name="array">1</attr>
<attr path="/api/namespace/object[@cname='GnomeAppBar']/signal[@name='ClearPrompt']" name="name">PromptCleared</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 16:28:55 +02:00
<attr path="/api/namespace/object[@cname='GnomeCanvas']/field[@name='PixelsPerUnit']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='C2w']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='GetButtPoints']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='GetColor']/return-type" name="type">gboolean</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='GetColor']/*/*[@type='GdkColor*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='GetMiterPoints']/return-type" name="type">gboolean</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='GetMiterPoints']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='GetScrollOffsets']/*/*[@type='int*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='GetScrollRegion']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='W2c']/*/*[@type='int*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='W2cD']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='WindowToWorld']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='WorldToWindow']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvas']/method[@name='W2cAffine']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasClipgroup']/property[@name='Wind']" name="type">ArtWindRule</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/constructor[@cname='gnome_canvas_item_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 16:28:55 +02:00
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/field[@name='Canvas']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/method[@name='Construct']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/method[@name='GetBounds']/*/*[@type='double*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/method[@name='I2cAffine']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/method[@name='I2w']/*/*[@type='double*']" name="pass_as">ref</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/method[@name='I2wAffine']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/method[@name='SetValist']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/method[@name='W2i']/*/*[@type='double*']" name="pass_as">ref</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasItem']/signal[@name='Event']" name="name">CanvasEvent</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasRichText']/method[@name='GetIterLocation']/*/*[@name='location']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasRichText']/method[@name='GetIterAtLocation']/*/*[@name='iter']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeCanvasShape']/property[@name='Dash']" name="type">ArtVpathDash</attr>
<attr path="/api/namespace/object[@cname='GnomeClient']/signal[@name='Connect']" name="name">Connected</attr>
<attr path="/api/namespace/object[@cname='GnomeClient']/signal[@name='Disconnect']" name="name">Disconnected</attr>
<attr path="/api/namespace/object[@cname='GnomeDateEdit']/method[@name='GetInitialTime']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/constructor[@cname='gnome_druid_new_with_window']" 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 16:28:55 +02:00
<attr path="/api/namespace/object[@cname='GnomeDruid']/field[@type='GtkWidget*']" name="access">public</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/field[@type='GtkWidget*']" name="type">GtkButton*</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/field[@cname='back']" name="name">BackButton</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/field[@cname='cancel']" name="name">CancelButton</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/field[@cname='finish']" name="name">FinishButton</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/field[@cname='help']" name="name">HelpButton</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/field[@cname='next']" name="name">NextButton</attr>
<attr path="/api/namespace/object[@cname='GnomeDruid']/method[@cname='gnome_druid_construct_with_window']/*/*[@name='window']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPage']/signal[@name='Back']" name="name">BackClicked</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPage']/signal[@name='Cancel']" name="name">CancelClicked</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPage']/signal[@name='Finish']" name="name">FinishClicked</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPage']/signal[@name='Next']" name="name">NextClicked</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPage']/signal[@name='Prepare']" name="name">Prepared</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 16:28:55 +02:00
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/field[@cname='background_color']" name="name">BgColor</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/field[@cname='logo_background_color']" name="name">LogoBgColor</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/field[@cname='logo_image']" name="name">Logo</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/field[@cname='top_watermark_image']" name="name">TopWatermark</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/field[@cname='watermark_image']" name="name">Watermark</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/constructor[@cname='gnome_druid_page_edge_new']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/constructor[@cname='gnome_druid_page_edge_new_with_vals']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageEdge']/constructor[@cname='gnome_druid_page_edge_new_aa']" 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 16:28:55 +02:00
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/constructor[@cname='gnome_druid_page_standard_new_with_vals']/*/*[@name='logo']" name="null_ok">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/constructor[@cname='gnome_druid_page_standard_new_with_vals']/*/*[@name='top_watermark']" name="null_ok">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/field[@cname='vbox']" name="name">VBox</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/field[@cname='vbox']" name="type">GtkVBox*</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/property[@name='Background']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/property[@name='ContentsBackground']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/property[@name='LogoBackground']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeDruidPageStandard']/property[@name='TitleForeground']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeEntry']/method[@name='GtkEntry']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeEntry']/signal[@name='Activate']" name="name">Activated</attr>
<attr path="/api/namespace/object[@cname='GnomeFileEntry']/method[@name='GnomeEntry']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFileEntry']/method[@name='GtkEntry']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFileEntry']/signal[@name='Activate']" name="name">Activated</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='FamilyList']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='FamilyListFree']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='List']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='ListFree']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='StyleList']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='StyleListFree']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='GetFamilyName']/return-type" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomeFont']/method[@name='GetFullName']/return-type" name="type">gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomeFontFace']/method/return-type[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomeFontFace']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomeFontPicker']/method[@name='GetFont']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeFontPreview']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomeIconEntry']/method[@name='PickDialog']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeIconList']/constructor[@cname='gnome_icon_list_new']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeIconList']/method[@name='GetIconFilename']/return-type" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomeIconList']/method[@name='GetSelection']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeIconList']/method[@name='SetIconDataFull']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomeIconList']/signal[@name='FocusIcon']" name="name">IconFocused</attr>
<attr path="/api/namespace/object[@cname='GnomeIconList']/signal[@name='SelectIcon']" name="name">IconSelected</attr>
<attr path="/api/namespace/object[@cname='GnomeIconList']/signal[@name='UnselectIcon']" name="name">IconUnselected</attr>
<attr path="/api/namespace/object[@cname='GnomeIconTheme']" name="hidden">1</attr>
* generator/CallbackGen.cs: * generator/CodeGenerator.cs: * generator/ManagedCallString.cs: * generator/Property.cs: Remove unused vars * generator/Method.cs (GetHashCode): have to implement this since we're overriding Equals. * generator/CallbackGen.cs: print a message when generating a broken struct-returning callback. (Currently affects GtkSharp.TextSegSplitFuncNative and GtkSharp.TextSegCleanupFuncNative) * gdk/glue/device.c: * gdk/glue/dragcontext.c: Add missing prototypes * gtk/Gtk.metadata: Mark SeparatorToolItem.Draw "new". Re-rename CheckMenuItem.Toggled to EmitToggled rather than Toggle, since that's a better description of what it does. * gtk/CheckMenuItem.custom: implement a "Toggle" method that does what the documentation claims it does. * gtk/NodeStore.cs: remove unused var * gnome/Gnome.metadata: mark DateEdit.Flags, Dialog.Default, and PropertyBox.State "new". Hide GnomePixmapEntry.GnomeEntry and GnomePixmapEntry.GtkEntry since they do exactly the same thing as the methods of the same names inherited from GnomeFileEntry. * gnome/glue/canvas-proxy.c: * gnome/glue/canvas-proxy.h: * gnome/glue/canvas-proxy-marshal.c: * gnome/glue/canvas-proxy-marshal.h: * gnome/glue/canvas-proxy-marshal.list: Remove unused code * gnome/glue/Makefile.am (libgnomesharpglue_2_la_SOURCES): update * panelapplet/PanelApplet.metadata: mark PanelApplet.Flags "new" * sample/CanvasExample.cs: * sample/CustomCellRenderer.cs: * sample/CustomNotebook.cs: * sample/DrawingSample.cs: * sample/Fifteen.cs: * sample/GladeTest.cs: * sample/GtkDemo/DemoHyperText.cs: * sample/GtkDemo/DemoPixbuf.cs: * sample/ScribbleXInput.cs: remove unused vars, use GLib.Timeout.Add rather than the deprecated Gtk.Timeout.Add svn path=/trunk/gtk-sharp/; revision=38043
2004-12-21 19:46:42 +01:00
<attr path="/api/namespace/object[@cname='GnomePixmapEntry']/method[@name='GnomeEntry']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomePixmapEntry']/method[@name='GnomeFileEntry']" name="hidden">1</attr>
* generator/CallbackGen.cs: * generator/CodeGenerator.cs: * generator/ManagedCallString.cs: * generator/Property.cs: Remove unused vars * generator/Method.cs (GetHashCode): have to implement this since we're overriding Equals. * generator/CallbackGen.cs: print a message when generating a broken struct-returning callback. (Currently affects GtkSharp.TextSegSplitFuncNative and GtkSharp.TextSegCleanupFuncNative) * gdk/glue/device.c: * gdk/glue/dragcontext.c: Add missing prototypes * gtk/Gtk.metadata: Mark SeparatorToolItem.Draw "new". Re-rename CheckMenuItem.Toggled to EmitToggled rather than Toggle, since that's a better description of what it does. * gtk/CheckMenuItem.custom: implement a "Toggle" method that does what the documentation claims it does. * gtk/NodeStore.cs: remove unused var * gnome/Gnome.metadata: mark DateEdit.Flags, Dialog.Default, and PropertyBox.State "new". Hide GnomePixmapEntry.GnomeEntry and GnomePixmapEntry.GtkEntry since they do exactly the same thing as the methods of the same names inherited from GnomeFileEntry. * gnome/glue/canvas-proxy.c: * gnome/glue/canvas-proxy.h: * gnome/glue/canvas-proxy-marshal.c: * gnome/glue/canvas-proxy-marshal.h: * gnome/glue/canvas-proxy-marshal.list: Remove unused code * gnome/glue/Makefile.am (libgnomesharpglue_2_la_SOURCES): update * panelapplet/PanelApplet.metadata: mark PanelApplet.Flags "new" * sample/CanvasExample.cs: * sample/CustomCellRenderer.cs: * sample/CustomNotebook.cs: * sample/DrawingSample.cs: * sample/Fifteen.cs: * sample/GladeTest.cs: * sample/GtkDemo/DemoHyperText.cs: * sample/GtkDemo/DemoPixbuf.cs: * sample/ScribbleXInput.cs: remove unused vars, use GLib.Timeout.Add rather than the deprecated Gtk.Timeout.Add svn path=/trunk/gtk-sharp/; revision=38043
2004-12-21 19:46:42 +01:00
<attr path="/api/namespace/object[@cname='GnomePixmapEntry']/method[@name='GtkEntry']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GnomePrintConfig']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomePrintConfig']/method[@name='Get']/return-type" name="type">gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomePrintDialog']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomePrintDialog']/constructor[@cname='gnome_print_dialog_new']/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomePrintDialog']/constructor[@cname='gnome_print_dialog_new']/*/*[@name='flags']" name="type">GnomePrintDialogFlags</attr>
<attr path="/api/namespace/object[@cname='GnomePrintJobPreview']/constructor/*/*[@type='const-guchar*']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomePrintMeta']/method/*/*[@name='filename']" name="type">const-gchar*</attr>
<attr path="/api/namespace/object[@cname='GnomePrintTransport']" name="parent">GObject</attr>
<attr path="/api/namespace/object[@cname='GnomeScores']/constructor[@cname='gnome_scores_new']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PanelAppletShell']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PanelApplet']/method[@cname='panel_applet_factory_main']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PanelApplet']/method[@cname='panel_applet_factory_main_closure']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PanelApplet']/method[@cname='panel_applet_get_flags']" name="new_flag">1</attr>
<attr path="/api/namespace/object[@cname='PanelApplet']/method[@cname='panel_applet_set_flasg']" name="new_flag">1</attr>
<attr path="/api/namespace/object[@cname='PanelApplet']" name="abstract">1</attr>
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Curveto']" name="name">CurveTo</attr>
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Lineto']" name="name">LineTo</attr>
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='LinetoMoving']" name="name">LineToMoving</attr>
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Moveto']" name="name">MoveTo</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 20:45:21 +02:00
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Ref']" name="deprecated">1</attr>
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Split']/return-type" name="element_type">GnomeCanvasPathDef*</attr>
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Split']/return-type" name="owned">true</attr>
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Split']/return-type" name="elements_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 20:45:21 +02:00
<attr path="/api/namespace/struct[@cname='GnomeCanvasPathDef']/method[@name='Unref']" name="deprecated">1</attr>
<attr path="/api/namespace/struct[@cname='GnomeModuleRequirement']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='GnomePrintPaper']/method/*/*[@type='const-guchar*']" name="type">const-gchar*</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 20:45:21 +02:00
<attr path="/api/namespace/struct[@cname='GnomeThemeFile']/method[@name='Free']" name="deprecated">1</attr>
</metadata>