GtkSharp/pango/Pango.metadata
Dan Winship 622c360576 * 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

78 lines
8.1 KiB
XML

<?xml version="1.0"?>
<metadata>
<attr path="/api/namespace/boxed[@cname='PangoAttrList']/method[@name='Filter']/*/*[@name='func']" name="scope">call</attr>
<attr path="/api/namespace/boxed[@cname='PangoAttrList']/method[@name='GetIterator']/return-type" name="owned">true</attr>
<attr path="/api/namespace/boxed[@cname='PangoAttrList']/method[@name='Ref']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoAttrList']/method[@name='Unref']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoColor']/method[@name='Copy']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoFontDescription']/method[@name='CopyStatic']/return-type" name="owned">true</attr>
<attr path="/api/namespace/boxed[@cname='PangoFontDescription']/method[@name='Free']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoFontDescription']/method[@name='FromString']/return-type" name="owned">true</attr>
<attr path="/api/namespace/boxed[@cname='PangoFontMetrics']/method[@name='Ref']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoFontMetrics']/method[@name='Unref']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoGlyphString']/field[@name='Glyphs']" name="hidden">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoGlyphString']/field[@name='LogClusters']" name="hidden">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoLayoutIter']/method[@name='Free']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoMatrix']/method[@name='Copy']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoTabArray']/constructor[@cname='pango_tab_array_new_with_positions']" name="hidden">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoTabArray']/method[@name='Free']" name="deprecated">1</attr>
<attr path="/api/namespace/boxed[@cname='PangoTabArray']/method[@name='GetTabs']" name="hidden">1</attr>
<attr path="/api/namespace/callback[@cname='PangoFT2SubstituteFunc']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoAttr_']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='GetMirrorChar']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='ParseMarkup']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='ReadLine']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='ReorderItems']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='ScanInt']/*/*[@name='pos']" name="pass_as">ref</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='ScanString']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='ScanWord']" name="hidden">1</attr>
<attr path="/api/namespace/class[@cname='PangoGlobal']/method[@name='SkipSpace']/*/*[@name='pos']" name="pass_as">ref</attr>
<attr path="/api/namespace/object[@cname='PangoContext']/method[@name='ListFamilies']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoFont']/method[@name='Describe']/return-type" name="owned">true</attr>
<attr path="/api/namespace/object[@cname='PangoFont']/method[@name='DescriptionsFree']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoFontFace']/method[@name='Describe']/return-type" name="owned">true</attr>
<attr path="/api/namespace/object[@cname='PangoFontFamily']/method[@name='ListFaces']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoFontMap']/method[@name='ListFamilies']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoFontset']/method[@name='Foreach']/*/*[@name='func']" name="scope">call</attr>
<attr path="/api/namespace/object[@cname='PangoFT2FontMap']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetCursorPos']/*/*[@type='PangoRectangle*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetExtents']/*/*[@type='PangoRectangle*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetIter']/return-type" name="owned">true</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetLines']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetLogAttrs']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetPixelExtents']/*/*[@type='PangoRectangle*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetPixelSize']/*/*[@type='int*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetSize']/*/*[@type='int*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='GetTabs']/return-type" name="owned">true</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='IndexToPos']/*/*[@type='PangoRectangle*']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='SetMarkup']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='SetMarkupWithAccel']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='PangoLayout']/method[@name='SetText']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttribute']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrClass']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrColor']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrFloat']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrFontDesc']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrInt']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrIterator']/method[@name='Destroy']" name="deprecated">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrIterator']/method[@name='GetAttrs']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrIterator']/method[@name='GetFont']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrLanguage']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrShape']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrSize']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoAttrString']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoCoverage']/method[@name='Ref']" name="deprecated">1</attr>
<attr path="/api/namespace/struct[@cname='PangoCoverage']/method[@name='ToBytes']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoCoverage']/method[@name='Unref']" name="deprecated">1</attr>
<attr path="/api/namespace/struct[@cname='PangoGlyphItem']/method[@name='ApplyAttrs']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoLayoutLine']/field" name="writeable">false</attr>
<attr path="/api/namespace/struct[@cname='PangoLayoutLine']/field[@name='Runs']" name="access">private</attr>
<attr path="/api/namespace/struct[@cname='PangoLayoutLine']/method[@name='GetExtents']/*/*[@type='PangoRectangle*']" name="pass_as">ref</attr>
<attr path="/api/namespace/struct[@cname='PangoLayoutLine']/method[@name='GetPixelExtents']/*/*[@type='PangoRectangle*']" name="pass_as">ref</attr>
<attr path="/api/namespace/struct[@cname='PangoLayoutLine']/method[@name='GetXRanges']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoLayoutLine']/method[@name='Ref']" name="deprecated">1</attr>
<attr path="/api/namespace/struct[@cname='PangoLayoutLine']/method[@name='Unref']" name="deprecated">1</attr>
<attr path="/api/namespace/struct[@cname='PangoScriptIter']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='PangoWin32FontCache']" name="hidden">1</attr>
</metadata>