Commit graph

3259 commits

Author SHA1 Message Date
Mike Kestner 9d7eec2eca Merge pull request #6 from bl8/floating-refs
Handle floating refs in InitiallyUnowned
2011-06-13 06:11:30 -07:00
Bertrand Lorentz ef74b70ce6 Various return-type fix-ups in Gtk.metadata
Add element_type and ownership information for the return type of
various methods.
2011-06-12 22:15:51 +02:00
Bertrand Lorentz c0c89957cb Update PolarFixed sample to remove obsolete warnings 2011-06-12 20:27:17 +02:00
Bertrand Lorentz 6556eeb610 Implement GetHashCode() in TreePath.custom
This fixes a warning about GetHashCode() not being implement while
Equals is.
2011-06-12 20:25:16 +02:00
Bertrand Lorentz 64a0c81868 Remove incorrect new keyword for CheckMenuItem.Toggle() 2011-06-12 20:23:48 +02:00
Bertrand Lorentz 680dd23965 Handle floating refs in InitiallyUnowned
When Gtk.Object was removed, most of the code was moved to Gtk.Widget.
But the part that deals with floating references actually belongs in
Glib.InitiallyUnowned.

This fixes various issues, in particular crashes in the TreeModelDemo
sample.
2011-06-11 19:08:21 +02:00
Mike Kestner f3c7384701 Widget.GetPreferredSize out params
* gtk/Gtk.metadata: out params on Widget.SetPreferredSize
2011-06-05 20:33:18 -05:00
Mike Kestner 33beda6d69 hush 2011-05-19 12:14:55 -05:00
Mike Kestner 11a38933d7 Ref params for pango_extents_to_pixels
* pango/Pango.metadata: mark ref params on ExtentsToPixels.
2011-05-19 10:21:13 -05:00
Mike Kestner c6a3bf4b73 Fix TextBufferSerializeFunc signature
* generator/CallbackGen.cs: connect return value count parameters
* generator/ManagedCallString.cs: out count params aren't special
* generator/MethodBody.cs: don't finish hidden params
* generator/Parameters.cs: explicit IsCount setting support, with
    Parameters.GetCountParameter(name) interface. Clear IsCount
    values during validation if they have no associated array. Any
    remaining count params must be associated with a retval, so
    hide them.
* generator/ReturnValue.cs: support array_length_param attribute to
    associate a return value with a "count" param.  Use new helper
    methods to marshal these array retvals to IntPtr and back.
* glib/Marshaller.cs: support for byte[] marshaling to and from
    IntPtr using a count and type in the from native direction.
* gtk/Gtk.metadata: mark TextBufferSerializeFunc return type as
    an array with the length specific in the length param.
2011-04-28 18:38:07 -05:00
Mike Kestner 2e115e2aff * glib/Value.cs: revert to "working" GValue layout from 2-12 branch.
The replaced code fails because sizeof(GValue) is 20 on 32 bit
    linux but Marshal.SizeOf(GLib.Value) reported 24.  If it aint broke,
    don't fix it, and the long works on 32 and 64 in 2.12 and earlier.
2011-04-27 19:05:11 -05:00
Mike Kestner 6fafc52670 Guard against null native names.
* glib/GType.cs: null guarding for native names
2011-04-27 19:03:02 -05:00
Mike Kestner 3170916774 System.Drawing Rect/Pt extensions for StyleContext
* gtkdotnet/Makefile.am: add file
* gtkdotnet/StyleContextExtensions.cs: RectangleF and PointF overloads
    for the new StyleContext.Render* methods.
2011-04-26 16:01:26 -05:00
Mike Kestner 07cd515482 mark Render.IconPixbuf retval owned.
* gtk/Gtk.metadata: gtk_render_icon_pixbuf transfers ownership of the
     returned pixbuf so mark it owned.
2011-04-26 08:11:59 -05:00
Mike Kestner 0fc5126228 Implement Ownable Generatable type.
* cairo/Context.cs: add ctor (IntPtr, bool owned)
* cairo/cairo-api.xml: expose cairo_t as new ownable symbol type
* generator/HandleBase.cs: implement IOwnable
* generator/IOwnable.cs: new interface for wrapping ownable types
* generator/Makefile.am: add new files to build
* generator/OwnableGen.cs: SimpleBase subclass to expose IOwnable
* generator/Parameters.cs: use IOwnable.FromNative instead of HandleBase
* generator/Parser.cs: parse ownable symbol type
* generator/ReturnValue.cs: use IOwnable.FromNative instead of HandleBase
2011-04-21 18:04:47 -05:00
Mike Kestner 6647c2609c Revert a couple files to mono master
* cairo/Cairo.cs: make a static class like master
* cairo/ImageSurface.cs: revert obsolete warning and ws changes
2011-04-21 18:01:33 -05:00
Mike Kestner 9a2fd72001 Add cairo-sharp.dll to the pkgconfig file
* gtk/gtk-sharp-3.0.pc.in: add cairo-sharp.dll to libs
2011-04-21 18:00:09 -05:00
Mike Kestner ca6bf1df51 Kill dead Input.custom file
* gtk/Input.custom: dead file, remove
* gtk/Makefile.am: remove custom
2011-04-21 12:59:46 -05:00
Mike Kestner 0d315af7a6 Add the gtk_render_* methods to StyleContext
* gtk/Gtk.metadata: hide the Render class
* gtk/Makefile.am: build the new file
* gtk/StyleContext.cs: instance methods for the gtk_render_* api using
    the internal generated Render class.
2011-04-21 12:10:36 -05:00
Mike Kestner 9e5e8e5491 StyleContenxt and GdkRGBA property cleanup
* gtk/Gtk.metadata: properties of type GdkRGBA get converted to
   type="GdkRgba" by the parser name mangling.  Manual fix those
   and clean up the lists, ellipsis, and out param API in the new
   StyleContext object.
2011-04-21 10:49:39 -05:00
Mike Kestner 567e3c81e0 struct padding member regex fix
* gtk/gtk-api.raw: reparse
* parser/gapi2xml.pl: match padding_n for padding members too to catch
   GtkSwitch padding vm slots.
2011-04-20 17:32:55 -05:00
Mike Kestner 256a80399c Obsolete and fwd Widget.GdkWindow property.
* gtk/Widget.custom: mark GdkWindow obsolete and forward it to the
    Window property which is read/write in 3.0. [Fixes #688791]
2011-04-20 10:11:03 -05:00
Mike Kestner e79c46cdcb Cleanup remaining fixup mismatches in Gtk.
* gtk/Gtk.metadata: remove dead rules
2011-04-20 10:09:56 -05:00
Mike Kestner 173c185bc5 Move new ShowUri API to partial class.
* gtk/gtk/Global.cs: partial class changes. moved from Global.custom.
* gtk/Makefile.am: add new file
2011-04-18 11:49:17 -05:00
Andrés G. Aragoneses fe769d0360 Gtk: New Global.custom file to bring some overloads from Hyena
Hyena has bindings to gtk_show_uri. Now that gtk-sharp binds
this API targeting 3.x, we can bring the extra overloads from
hyena and mark them as obsolete there.
2011-04-18 11:37:56 -05:00
Mike Kestner 713f7ae892 Remove some dead metadata rules.
* gtk/Gtk.metadata: remove mismatched rules from prior release
2011-04-18 10:14:15 -05:00
Mike Kestner 880c332174 Remove opaque attr from Gtk.Requisition
* gtk/Gtk.metadata: set opaque=false for GtkRequisition.
2011-04-15 13:40:24 -05:00
Andrés G. Aragoneses db40040fdc Gdk: Transform the out param of Rectangle.Union() to a return value.
Not only this is prettier but it's also aligned with the 2.12.x API.
2011-04-15 17:31:35 +02:00
Andrés G. Aragoneses 3ee97db664 Gtk: Set param as "out" for Widget.GetRequisition in metadata.
This way it will be converted to a property as it was in Gtk# < 3.0
Fixes bug http://bugzilla.novell.com/687823.
2011-04-15 12:54:57 +02:00
Andrés G. Aragoneses ae67076d76 Gtk: Set param as "out" for StyleContext.GetBackgroundColor.
Fixes bug http://bugzilla.novell.com/687551
2011-04-15 12:17:57 +02:00
Mike Kestner d3d32c8ff0 GKeyFile binding
* glib/KeyFile.cs: new pseudo-hand-binding for GKeyFile
* glib/Makefile.am: add file
* glib/Marshaller.cs: add string[] to strv marshaler
* glib/glib-api.xml: expose GKeyFile mapping
2011-04-14 14:35:47 -05:00
Mike Kestner 571bd01356 Fix crashes in Gdk.Pixbuf.Savev
Patch from Bertrand Lorentz <bertrand.lorentz@gmail.com>

* gdk/Gdk.metadata: hide gdk_pixbuf_savev
* gdk/Pixbuf.custom: manually implement Savev to NullTerm the string[]
    parameters.

[Fixes #681111]
2011-04-06 11:01:39 -05:00
Mike Kestner 1752fca097 Hush versioned scripts generally 2011-04-06 10:53:53 -05:00
Mike Kestner 0d376f106d Remove unneeded bootstrap rule
* Makefile.am: remove bootstrap target that is no longer used
2011-04-06 10:51:26 -05:00
Mike Kestner 1c980d6e71 Switch GLib.Object to Dispose(bool) pattern.
* glib/Object.cs: move finalization queue to ToggleRef and make
    Dispose() non-virtual with a protected virtual Dispose(bool).
    Also added a WarnOnFinalize static property to produce nags for
    undisposed objects.
* glib/ToggleRef.cs: add finalization queue and QueueUnref method.
* gtk/NodeStore.cs: override Dispose(bool)
* gtk/Widget.custom: override Dispose(bool)
2011-03-25 12:22:04 -05:00
Mike Kestner 6be0718ff2 Simplified Signal handling
* gdk/Display.custom: rework signal connection
* gdk/Window.custom: rework signal connection
* generator/Signal.cs: generate for new API.
* glib/Object.cs: add (Add|Remove)SignalHandler methods and use
them for the Notify connections.  Move to generic collections for
everything but the Data hash.
* glib/Signal.cs: kill Lookup methods and add delegate fields
* glib/ToggleRef.cs: remove Signals hash, it doesn't belong here.
* gtk/Clipboard.custom: rework signal connection
* gtk/ListStore.custom: rework signal connection
* gtk/TextView.custom: remove obsolete signal
* gtk/TreeModelAdapter.custom: rework signal connection
* gtk/TreeModelFilter.custom: rework signal connection
* gtk/TreeModelSort.custom: rework signal connection
* gtk/TreeStore.custom: rework signal connection
* gtk/Widget.custom: rework signal connection
* gtk/Window.custom: remove obsolete signal
2011-03-24 18:33:24 -05:00
Mike Kestner db738c401b Make ToggleRef.Signals a Dictionary
* glib/Object.cs: don't bother with IsAlive check on tref
* glib/Signal.cs: remove unnecessary as usage
* glib/ToggleRef.cs: make Signals a generic dictionary
2011-03-24 18:33:19 -05:00
Mike Kestner a56feb01e3 Some warning fixage.
* glib/GType.cs:
* glib/Makefile.am:
* glib/Object.cs:
* glib/ParamSpec.cs:
* glib/PtrArray.cs:
* glib/SignalClosure.cs:
* glib/Value.cs:
mark private struct fields public to avoid 0169, and remove the nowarn
from the csc command.  fixed one real warning, exposed a bunch of
obsolete usage still to fix.
2011-03-24 18:32:54 -05:00
Mike Kestner d1b852bdf3 Add missing file.
* generator/LogWriter.cs: still getting used to this git thing...
2011-02-21 11:19:10 -06:00
Mike Kestner 2ba496479f Restructure log warnings in validation.
* generator/*.cs: Add a LogWriter class which formats warnings
consistently on the console.  Supports the concept of non-fatal
validation warnings, since it doesn't rely on the unrolling of the
validation stack to associate a warning to a given type.

Main purpose was to add a non-fatal warning for missing element_type
attributes on list return values, though it results in cleaner log
output, and also updates some warning messages to be more helpful in
how to resolve them.
2011-02-20 12:11:08 -06:00
Mike Kestner 0a094c2662 Cleanup the Gdk build.
* gdk/Colormap.custom: kill dead code
* gdk/DeviceAxis.custom: kill dead code
* gdk/EdgeTable.custom: kill dead code
* gdk/Event.cs: remove dead ClientEvent mapping
* gdk/EventClient.cs: kill dead code
* gdk/GCValues.custom: kill dead code
* gdk/Gdk.metadata: remove a bunch of dead markup and add some new
* gdk/Input.custom: kill dead code
* gdk/Makefile.am: remove dead files
* gdk/PangoAttrEmbossColor.custom: kill dead code
* gdk/PangoAttrEmbossed.custom: kill dead code
* gdk/PangoAttrStipple.custom: kill dead code
* gdk/Region.custom: kill dead code
* gdk/RgbCmap.custom: kill dead code
* gdk/Window.custom: kill dead code
2011-02-18 22:00:34 -06:00
Mike Kestner e7ee99526a Add Pattern symbol to cairo-api.xml
* cairo/Context.cs: use Pattern.Handle
* cairo/Pattern.cs: expose Lookup method, Obsolete the Pointer prop and
  add a new Handle prop for API consistency.
* cairo/cairo-api.xml: add Pattern symbol.
2011-02-18 21:57:39 -06:00
Mike Kestner c283aa425b Add SeekType symbol to glib-api.xml
* gio/Gio.metadata: remove it here
* gio/Makefile.am: include glib-api.xml
* glib/glib-api.xml: add GSeekType element.
2011-02-18 21:54:15 -06:00
Mike Kestner 7d696d2fc0 Fix leak in File.QueryInfo(Finish)
* gio/Gio.metadata: mark owned return values on QueryInfo methods.
  [Fixes #613821]
2011-02-18 08:43:05 -06:00
Mike Kestner ee866216b1 Cairo API 1.10 updates.
* cairo/*: merge changes to Mono.Cairo since we split back in Oct 2008.
  Not much changed.  Scrubbed the doc index and updated NativeMethods
  to match.  Commented with DONTCARE the ones we will ignore.  Implemented
  a few of them, including an initial Device binding.  Still some work
  to do, and some discovery to be done to see what happened to Xcb, Glitz,
  and DirectFB surfaces and whether we need to remove those classes.
2011-02-17 23:00:12 -06:00
Mike Kestner 5e6bd92b73 Fix NativeInstantiation sample/test
* sample/NativeInstantiationTest.cs: pinvoke the correct soname.
2011-02-15 10:27:54 -06:00
Mike Kestner 27b71b1982 Get Scribble sample working.
* cairo/cairo-api.xml: add the Content enum type and fix surface symbol.
* gdk/gdk-sharp.dll.config.in: s/3.0/3/ on the so name.
* sample/Makefile.am: enable scribble.exe build
* sample/Scribble.cs: rewrite for new API, specifically replace pixmap
drawing usage with cairo, and use OnDrawn in place of OnExposeEvent.
Also Made it a subclass of DrawingArea instead of handling events.
2011-02-15 10:19:07 -06:00
Mike Kestner d757f1b63a Update the CairoSample.
* sample/CairoSample.cs: bring the code closer to current practice
and update the OnDrawn override to use AllocatedWidth and Height.
Sample now runs cleanly, though with a couple of cairo-sharp bitches
when finalizers run on contexts.
2011-02-12 16:31:50 -06:00
Mike Kestner 001956432c Some more GIO interface cleanup
* generator/InterfaceGen.cs: don't grab the StreamWriter for consume-only.
* generator/InterfaceVM.cs: don't bitch or fail validation when missing
target on consume-only.
* generator/ObjectBase.cs: support a target_method attr on vms to point the
callback invocations at when the names don't match.
* gio/Gio.metadata: marks a few more ifaces consume-only until somebody
complains they need to implement one of them.
2011-02-12 15:52:57 -06:00
Mike Kestner 3ed7e0901e Update to Gtk+ 3.0.0 API.
* configure.ac: require gtk+-3.0.0 and glib-2.28.0
* gdk/gdk-api.raw: reparse
* gdk/gdk-symbols.xml: add alias for Window (XID) to gulong
* gtk/Plug.custom: update custom ctors to ulong XID versions.
* gtk/gtk-api.raw: reparse
* gtk/gtk-sharp.dll.config.in: change dllname remap to match 3.0.0 so.
* sources/.gitignore: fix glib and gtk+ dirs
* sources/Makefile.am: update to gtk+ 3.0.0
* sources/sources.xml: update to gtk+ 3.0.0
2011-02-12 15:30:20 -06:00