* pango/*.raw : regen.
* sources/gtk-sharp-2.4-sources.xml : exclude some xft and fc files.
* sources/gtk-sharp-2.6-sources.xml : exclude some xft and fc files.
svn path=/trunk/gtk-sharp/; revision=47124
* generator/CallbackGen.cs : implement new IAccessor iface so that
callback fields on structs can now be accessed.
* generator/ClassBase.cs : remove/abstract some methods incorrectly
located here.
* generator/ClassGen.cs : implement methods previously inherited from
ClassBase incorrectly.
* generator/HandleBase.cs : new base class for native ptr wrappers.
Implements new IAccessor interface and code moved from ClassBase.
* generator/IAccessor.cs : new iface to generate field/prop accessors.
* generator/InterfaceGen.cs : derive from new ObjectBase.
* generator/LPGen.cs : implement IAccessor.
* generator/LPUGen.cs : implement IAccessor.
* generator/ObjectBase.cs : new base class for Object/Iface types.
* generator/ObjectGen.cs : derive from new ObjectBase.
* generator/OpaqueGen.cs : derive from HandleBase.
* generator/StructField.cs : refactor Generate method using new
IAccessor interface.
* */*.custom : add obsolete impls for some existing c_cased struct
field accessors that are now StudlyNamed.
svn path=/trunk/gtk-sharp/; revision=46878
* 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
* pango/Makefile.am : add file.
* pango/Units.cs : new class to wrap PANGO_SCALE and PANGO_PIXELS.
* pango/glue/units.c : accessors for the macros.
* pango/glue/Makefile.am : build it.
* pango/glue/makefile.win32 : build it on win.
[Fixes#74837]
svn path=/trunk/gtk-sharp/; revision=44410
* pango/Makefile.am: add Matrix.custom
* pango/Matrix.custom: add Pango.Matrix.Identity field
which is the equivalent of PANGO_MATRIX_INIT
* sample/GtkDemo/DemoRotatedText.cs: use Pango.Matrix.Identity
* doc/en/Pango/Matrix.xml: add docs for Pango.Matrix.Identity
svn path=/trunk/gtk-sharp/; revision=44181
end with "callback, gpointer, GDestroyNotify", then mark the
callback as having "notified" Scope.
(Parameters.IsHidden): Hide user_data and GDestroyNotify after a
callback.
(Parameter.Scope): make this settable
(Parameter.IsDestroyNotify): new test
* generator/MethodBody.cs (Initialize): Handle "notified" callback
scope (using a GCHandle and GLib.DestroyHelper.NotifyHandler)
* generator/CallbackGen.cs (GenWrapper): Add a static
"GetManagedDelegate" method to the wrapper type, to translate a
native delegate back to its corresponding managed delegate.
(FromNative): use GetManagedDelegate.
* generator/ReturnValue.cs (Validate): We handle callback return
values now
* generator/SymbolTable.cs: marshal GDestroyNotify as
GLib.DestroyNotify
* glib/DestroyNotify.cs: Moved from gtk
* gtk/Gtk.metadata: globally change GtkDestroyNotify to
GDestroyNotify, but then change back the ones that are exposed in
the API. Un-hide lots of methods we can correctly autogenerate
now.
* gtk/DestroyHelper.cs: moved to glib
* gtk/*.custom: remove methods that are autogenerated now, add
Obsolete wrappers where needed, replace Gtk.DestroyHelper usage
with GLib.DestroyHelper.
* gdk/Gdk.metadata:
* gnome/Gnome.metadata: Turn Gdk.Drawable.SetData and
Gnome.IconList.SetIconDataFull's GDestroyNotify args into
gpointers so the generated API stays the same as it used to be.
* rsvg/Handle.custom: implement deprecated SetSizeCallback
* sample/GtkDemo/DemoIconView.cs (CreateSort): update for API
changes
svn path=/trunk/gtk-sharp/; revision=44020
Gdk.Event
* pango/pango-symbols.xml: explain how to marshal PangoAttribute.
* pango/AttrBackground.cs:
* pango/AttrFallback.cs:
* pango/AttrFamily.cs:
* pango/AttrFontDesc.cs:
* pango/AttrForeground.cs:
* pango/AttrLanguage.cs:
* pango/AttrLetterSpacing.cs:
* pango/AttrRise.cs:
* pango/AttrScale.cs:
* pango/AttrShape.cs:
* pango/AttrSize.cs:
* pango/AttrStretch.cs:
* pango/AttrStrikethrough.cs:
* pango/AttrStrikethroughColor.cs:
* pango/AttrStyle.cs:
* pango/AttrUnderline.cs:
* pango/AttrUnderlineColor.cs:
* pango/AttrVariant.cs:
* pango/AttrWeight.cs: subclasses of Attribute, with proper
constructors. These don't actually correspond one-to-one with
the underlying types, but they're nicer this way.
* pango/Pango.metadata: Hide Attribute and its subclasses from the
generator. Also hide "Attr" (which previously contained
non-working badly-named static methods to create Attributes)
and AttrClass (which is not really useful outside of pango
itself).
* pango/AttrIterator.custom: use Pango.Attribute.GetAttribute.
* pango/glue/attribute.c: glue for Attribute and its subclasses
[Fixes#52575 and its semi-dup #46552]
svn path=/trunk/gtk-sharp/; revision=43520
underscores in their names (and add obsolete aliases for the old
names).
* sample/GtkDemo/DemoTextView.cs: use the new names
svn path=/trunk/gtk-sharp/; revision=42532
GLib.Marshaller.CharToGUnichar and .GUnicharToChar [#70704]
* generator/SymbolTable.cs (SymbolTable): add a GUnicharGen.
* generator/Makefile.am (sources): add GUnicharGen.cs
* parser/gapi2xml.pl (addPropElem): g_param_spec_unichar() has
type "gunichar" not "unichar".
* gtk/gtk-api.raw: Regen
* glib/Marshaller.cs: Import CharToGUnichar's glue method by the
right name
svn path=/trunk/gtk-sharp/; revision=37998
/*< private >*/ comments.
* parser/gapi2xml.pl: Use those comments to determine the
accessibility of struct/object fields, and set the "access"
attribute on fields with non-default accessibiliy (private for
structs, public for objects). Also, output a StudlyName for each
field as well as a c_name.
* */*-api.raw: Regen
* generator/Field.cs (StudlyName): Use the parser-generated studly
name rather than studlifying Name, which might have been mangled
to avoid conflicts with an all-lowercase keyword.
(Generate): Respect the access property on all field types rather
than always making certain types public. Don't bother outputting
wrapper properties for private fields, since the only code that
could use them is the generated code, which won't.
See doc/ChangeLog for the (very minimal) fallout from these
changes.
* en/Art/AlphaGamma.xml:
* en/Gtk/TextAttributes.xml (Refcount):
* en/Pango/GlyphString.xml (Space): these are now private
* en/Gda/XqlItem.xml:
* en/Glade/SignalInfo.xml:
* en/Gnome.Vfs/ModuleCallbackSaveAuthenticationIn.xml:
* en/Gnome.Vfs/ModuleCallbackFullAuthenticationIn.xml:
* en/Gnome.Vfs/ModuleCallbackFillAuthenticationIn.xml: rename
Objekt to Object.
* en/Atk/KeyEventStruct.xml: rename Str1ng to String
svn path=/trunk/gtk-sharp/; revision=37853
* pango/Pango.metadata : metadata for the pango audit.
* pango/*.custom : customizations to fix audited API.
* doc/en/* : docs for some api changes and additions.
* glib/Marshaller.cs : some gunichar marshal-fu.
* glib/glue/unichar.c : a new glue method.
svn path=/trunk/gtk-sharp/; revision=32462
* en/*/*.xml : remove To be added from enum <remarks> since they aren't
rendered. Monodoc needs to be enhanced to render if they are there,
but we should normally put enum member docs in the summary, not remarks.
svn path=/trunk/gtk-sharp/; revision=30537
* en/*/*.xml : add back the enumtype Value__ fields with "Do not use"
docs. Monodoc doesn't show these nodes as fields, but needs them for
non-int enums.
svn path=/trunk/gtk-sharp/; revision=30320
* en/*/*.xml : kill all the dead files where types have been removed.
Mark several gtkhtml types as being in gtkhtml-sharp, not gtk-sharp.
Another 601 dead TBAs.
svn path=/trunk/gtk-sharp/; revision=30318
* Pango/*.xml : run updater and kill stubbed deprecates
* Atk/*.xml : run updater and kill stubbed deprecates
* Gdk/*.xml : run updater and kill stubbed deprecates
* Gtk/*.xml : run updater and kill stubbed deprecates
svn path=/trunk/gtk-sharp/; revision=23492