Complete the major version jump. Gtk# 3 and 2 are now both
installable within the same prefix.
* */glue/Makefile.am: Produce *sharpglue-3 gluelibs.
* *.custom, *.cs: pinvoke the new glue library.
* *-2.0.pc.in: Rename to *-3.0.pc.in.
svn path=/trunk/gtk-sharp/; revision=140941
* gtk/Object.custom: Deglue the floating reference API.
We should consider moving all that stuff to GInitiallyUnowned
as Gtk+ did several releases ago.
svn path=/trunk/gtk-sharp/; revision=140940
* gtk/StatusIcon.custom: Use managed code to pass the address of
gtk_status_icon_position_menu to gtk_menu_popup.
svn path=/trunk/gtk-sharp/; revision=140939
* gtk/Widget.custom: Set the activate/set_scroll_adjustments signal IDs
from managed code. Use the gtk_widget_get_window accessor.
* gtk/glue/widget.c: Remove the corresponding glue functions.
svn path=/trunk/gtk-sharp/; revision=139851
* gtk/Widget.custom: Implement signal registration for the
Activate, SettScrollAdjustments and key binding signals
in managed code.
svn path=/trunk/gtk-sharp/; revision=132771
Add support for virtual methods(vm) to the generator.
* parser/gapi2xml.pl: Generate a class_struct element with
all members of the class structure. Dump the first (instance)
parameter for signal and vm elements. Bump up parser version.
* generator/GObjectVM.cs: Added. Support for GObject virtual methods.
* generator/DefaultSignalHandler.cs: Signal specific part of vm
generation.
* generator/InterfaceVM.cs: New class for interface vms.
* generator/ObjectBase.cs: Parse the class struct.
svn path=/trunk/gtk-sharp/; revision=131604
* gtk/Target.custom: custom implementation of TableNewFromList.
* gtk/TargetList.custom: use Target.TableNewFromList method
to convert the TargetList to a TargetEntry array.
* gtk/glue/targetlist.c: deleted.
svn path=/trunk/gtk-sharp/; revision=131066
* gtk/Object.custom: move Dispose call to a vm override so that
it runs after all signals and native overrides have run.
* gtk/glue/object.c: destroy override implementation.
svn path=/trunk/gtk-sharp/; revision=104315
* kill the makefile.win32 build system. it has been unmaintained
for quite some time, replaced by the auto* build in cygwin.
svn path=/trunk/gtk-sharp/; revision=103308
* gtk/Widget.custom (StyleGetProperty): return null if
gtksharp_widget_style_get_property returns FALSE (property
doesn't exist) [Fixes#81445]
* gtk/glue/widget.c (gtksharp_widget_style_get_property): check
return of gtk_widget_class_find_style_property for NULL; function now
returns TRUE if spec is not NULL, FALSE otherwise
svn path=/trunk/gtk-sharp/; revision=76217
* gtk/CellRenderer*.custom: new custom overrides for VMs.
* gtk/glue/cellrenderer.c: add GType parameters to the invoke methods
so we can identify the correct vtable to invoke from.
svn path=/trunk/gtk-sharp/; revision=73037
* gtk/StatusIcon.custom : obsolete overload for backcompat on
GetGeometry, and custom PresentMenu method to invoke new glue.
* gtk/glue/statusicon.c : glue method to connect to gtk_menu_popup
without having to go across the native/managed boundary multiple
times using gtk_status_icon_position_menu wrapper.
[Fixes#79500]
svn path=/trunk/gtk-sharp/; revision=72236
TargetEntry[], so you can use methods like
TargetList.AddTextTargets() in situations where you need a
TargetEntry[] rather than a TargetList.
* gtk/glue/targetlist.c: glue for that
svn path=/trunk/gtk-sharp/; revision=48006
* 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
* autogen.sh : error out with bootstrap help message.
* bootstrap : replaces autogen.sh for the 2.5.x release line.
* bootstrap-2.4 : replaces autogen.sh for the 1.9.x release line.
* configure.in.in : renamed from configure.in and added substitution
for version, dependencies, CFLAGS and CSFLAGS.
* README : bootstrap docs
* */*-api.raw : moved to api-2.6.raw for bootstrapping.
* */*-api-2.4.raw : added 2.4 api files for bootstrapping.
* */glue/Makefile.am : add GTK_SHARP_VERSION_CFLAGS.
* pango/Attribute.cs : add a #if GTK_SHARP_2_6 block.
* pango/glue/attribute.c : add a couple #ifdef GTK_SHARP_2_6 blocks.
* sample/GtkDemo/* : make the 2.6 demos conditional.
svn path=/trunk/gtk-sharp/; revision=44047
they're generated wrong, and StyleGet to avoid an ellipsis
warning. (Also hide the deprecated ellipsis method "Set".)
* gtk/Widget.custom (StyleGetProperty): implement manually, a la
Gtk.Container.ChildGetProperty.
* gtk/glue/widget.c (gtksharp_widget_style_get_property): glue for that
svn path=/trunk/gtk-sharp/; revision=40481
* glib/ClassInitializerAttribute.cs : new attr for identifying type.
inialization methods to be run by RegisterGType.
* glib/Makefile.am : add file.
* glib/Object.cs : add private method to invoke ClassInitializers.
* gtk/glue/widget.c : some new glue for binding registration.
* gtk/BindingAttribute.cs : new attr for registering key bindings.
* gtk/Makefile.am : add file.
* gtk/Widget.custom : add ClassInitializer method to scan types
for [Binding] and register key bindings.
svn path=/trunk/gtk-sharp/; revision=38074
* gtk/Makefile.am : add new file.
* gtk/glue/makefile.win32 : add missing file.
* gtk/NodeCellDataFunc.cs : new callback delegate type and marshaler
for NodeStore tree views using GtkTreeCellDataFuncs.
* gtk/NodeStore.cs : add internal GetNode overload by TreeIter.
* gtk/NodeView.cs : add AppendColumn overload that uses data funcs.
* gtk/TreeViewColumn.custom : manual implementation for SetCellDataFunc
to support both TreeIter and ITreeNode models. We need to hold a ref
to a delegate for each cell renderer on a column. [Fixes#63062]
* sample/NodeViewDemo.cs : use a NodeCellDataFunc for one of the
cell renderers in the tree.
svn path=/trunk/gtk-sharp/; revision=37904
glue method to get container->focus_child
* gtk/Gtk.metadata: hide SetFocusChild
* gtk/Container.custom (FocusChild): implement with both getter
and setter
* en/Gtk/Container.xml (FocusChild): Has a getter now too.
(Added): Clarify that this only means "Gtk.Container.Add was
called", and doesn't get fired when you call Gtk.Box.PackStart,
etc
svn path=/trunk/gtk-sharp/; revision=36143
GtkContainer child properties
* generator/Property.cs:
* generator/ChildProperty.cs: make Property subclassable and add a
"ChildProperty" subclass.
* generator/Makefile.am (sources): add ChildProperty.cs
* generator/ClassBase.cs: handle "childprop" nodes by creating
ChildProperty objects.
* glib/Value.cs (explicit operator EnumWrapper): use
g_value_get_flags() rather than g_value_get_enum() when
appropriate.
* glib/glue/value.c (glibsharp_value_holds_flags): glue for that
* gtk/gtk-api.raw: regen to pick up child properties
* gtk/Gtk.metadata:
* gtk/Container.custom: hide the auto-generated
Gtk.Container.ChildGetProperty and implement a nicer one by hand.
* gtk/glue/container.c (gtksharp_container_child_get_property):
utility function to set up an appropriate GValue for us
svn path=/trunk/gtk-sharp/; revision=35702
Gdk.Pixmaps instead, because the former will crash. Also fix the
"data" param to Pixmap.CreateFromXpmD and
Pixmap.ColormapCreateFromXpmD
* gtk/Style.custom (TextAAGC, SetTextAAGC, LightGC, SetLightGC,
DarkGC, SetDarkGC, MidGC, SetMidGC): add these to go along with
BaseGC, SetBaseGC, etc.
* gtk/glue/style.c: add the glue methods needed for the above
svn path=/trunk/gtk-sharp/; revision=35409
* */*.cs : add lgpl license blurb and clean up (c)'s.
* */*.custom : add lgpl license blurb and clean up (c)'s.
* */glue/*.c : add lgpl license blurb and clean up (c)'s.
file adds without license from now on are punishable by wedgie.
svn path=/trunk/gtk-sharp/; revision=30401