Commit graph

62 commits

Author SHA1 Message Date
Bertrand Lorentz b2fb84d14b Clean up .gitignore files 2013-10-13 18:38:33 +02:00
Bertrand Lorentz ac9da8d4aa gio: Fix up first ApplicationFlags enum to be None instead of FlagsNone 2013-10-13 15:44:59 +02:00
Bertrand Lorentz 68780a6226 gio: Fix up returns type for several GSettings methods 2013-10-11 22:32:46 +02:00
Andrés G. Aragoneses 872e0edfdd MSBuild: remove AssemblyInfo.cs where it's not present
The only autogenerated AssemblyInfo files are in cairo and in
gtk-sharp's root, not inside other libraries like atk, glib, etc.
Removing them will make MonoDevelop stop rendering a red element
underneath each project.
2013-09-24 01:24:39 +02:00
Andrés G. Aragoneses 9016c304de MSBuild: change some projects to Library type, not Executable
Even though gtk-sharp cannot be built via MSBuild (yet?), it's better
to make the .csproj reflect more closely what you get with the normal
build.
2013-09-24 01:24:33 +02:00
Andrés G. Aragoneses 74b6340d86 MSBuild: update some project files to account for recent changes 2013-08-23 23:56:23 +02:00
Andres G. Aragoneses 321181b761 gio: Track API changes (I- interface prefixes)
This includes changes to fix the build, and changes to custom code that
gets added to the generated code. I.e. File.cs now becomes IFile.cs
2013-07-23 12:05:24 -05:00
Andrés G. Aragoneses 10d3293d3f build: fix automake warning about preprocessor C flags
With automake version 1.13.2 (which comes in debian testing/jessie),
we were starting to get these warnings by default:

...
Running automake --foreign  ...
atk/glue/Makefile.am:16: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
gio/glue/Makefile.am:11: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
gtk/glue/Makefile.am:18: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
gtk/gui-thread-check/profiler/Makefile.am:8: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
pango/glue/Makefile.am:13: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
sample/opaquetest/Makefile.am:18: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
sample/valtest/Makefile.am:18: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Running autoconf ...
...

We simply follow the warning's recommendation of using AM_CPPFLAGS instead
(CPP meaning C PreProcessor, not C Plus Plus), as explained in
http://www.gnu.org/software/automake/manual/html_node/Program-Variables.html

The deprecation of INCLUDES has been very long there already (since 2002,
therefore Automake 1.7), and we already depend on automake 1.10.
2013-06-17 10:59:28 +02:00
Andres G. Aragoneses 1a1300c762 gio: Add fix-ups for GSettings.GetStrv and SetStrv values
The values handled by those two methods are null-terminated arrays of
strings, owned by the caller, so mark them as such.

Signed-off-by: Bertrand Lorentz <bertrand.lorentz@gmail.com>
2013-04-01 11:41:43 +02:00
Bertrand Lorentz b312fcbc8c gio: Rename the DBus.Address* methods
Fix-ups to improve the DBus.Address* method names.

For example, DBus.GetStream(string address ...) is clear enough and
better than DBus.AddressGetStream(string address ...).
2012-11-18 12:22:17 +01:00
Bertrand Lorentz 14c0a84fdb gio: Rename the Dbus class to DBus
An uppercase B in DBus make the class name consistent with all the other
DBus* classes.
2012-11-18 12:20:20 +01:00
Bertrand Lorentz fab58ea99d gio: Hide GioGlobal.RegistryBackendGetType method
It's Windows-specific, and probably doesn't need to be called directly
by anyone.
2012-11-18 11:55:28 +01:00
Bertrand Lorentz 722ec40812 gio: Move static methods from Simple to SimpleAsyncResult class
Static methods corresponding to g_simple_async_report_* functions were
automatically grouped into the badly-named Simple class.

Add fix-ups to hide this Simple class, move the methods to
SimpleAsyncResult and rename them accordingly.
2012-11-18 11:35:35 +01:00
Bertrand Lorentz f3a001a7bb gio: Enable the GSocketMsgFlags enum with hardcoded values
Same as the previous commit for GSocketFamily, the values are not going
to change much.
2012-11-12 20:36:55 +01:00
Bertrand Lorentz 0f13a66762 gio: Enable the GSocketFamily enum with hardcoded values
The values found by the parser for the GSocketFamily enum are in fact
constants defined in another header file, so the generated code would be
invalid.

We now hardcode the values through fix-ups. They probably don't
change, and they are also hardcoded in the gir file anyway, so it should
be OK.

Also fix-up a GInetAddress constructor that now gets generated.
2012-11-12 20:25:42 +01:00
Bertrand Lorentz 0f2af96e0a gio: Add fix-ups to set the scope of a few callbacks 2012-11-11 15:37:56 +01:00
Bertrand Lorentz cc249042e3 gio: Mark the Seekable interface as consume-only
The implementor class is not generated correctly, because of some
strangeness with the method names. And I don't think anyone would need
to implement it.
2012-11-11 14:52:07 +01:00
Bertrand Lorentz a17da364b1 gio: Fix-up capitalisation of several property types
For properties, the parser guesses the type name from an all-caps macro
name. So if the GType has a funny name, like dbus -> DBus, the property
type is wrong.
2012-11-11 14:44:03 +01:00
Bertrand Lorentz bfb4ebe4c0 gio: Rename what remains of Io class to IOError and adjust method names
All method not related to IOError have been moved to other classes, so
we can rename the Io class to IOError.
2012-11-11 14:41:47 +01:00
Bertrand Lorentz 97972a7c9e gio: Move ErrorQuark method to GioGlobal 2012-11-11 14:34:11 +01:00
Bertrand Lorentz 3a5d1f2238 gio: Move the scheduler-related static functions into IOSchedulerJob 2012-11-11 14:32:15 +01:00
Bertrand Lorentz 1a253aeedd gio: Move the module-related static functions into the IOModule class
Also adjust their names and fix the return types.
2012-11-11 11:55:31 +01:00
Bertrand Lorentz 22ff426d88 gio: Rename Content class to ContentType and adjust method names
The parser automatically groups static functions with the same prefix
into classes, but the right name can't be determined automatically.

In this case, ContentType.GetDescription(...) is much better than
Content.TypeGetDescription(...).
2012-11-11 11:50:49 +01:00
Bertrand Lorentz dba3b18f97 gio: Fix-up return types for methods returning GList* 2012-11-11 11:43:31 +01:00
Bertrand Lorentz 24b0e12c62 gio: Make FileEnumerator implement IEnumerable<FileInfo> 2012-11-03 17:57:31 +01:00
Bertrand Lorentz 60612071c1 Add a MonoDevelop solution and projects for browsing the codebase
This is just to be able to use MonoDevelop to browse the codebase, both
custom and generated code. It is NOT intended to be used to build
anything.
2012-10-13 16:44:10 +02:00
Bertrand Lorentz c0129f42d5 gio: Move all .custom files to partial classes 2012-07-02 11:09:07 -04:00
Olivier Dufour f0579eb53d parser: Add property support for ginterface 2011-08-01 21:18:02 +02:00
Alex Launi bcf42187a8 gio: Fix return type of GMount.GuessContentType* 2011-07-17 17:28:51 +02:00
Gabriel Burt f6009bbde1 gio: Implement GioStream.SetLength 2011-07-17 17:09:41 +02:00
Stephane Delcroix 5290f4c520 gio: Wrap IOStream in GIOStream too 2011-07-17 16:59:11 +02:00
Bertrand Lorentz a529ca3a94 Temporary quick fix for properties in interfaces without accessors
The interface parsing fix added a few properties on interfaces that have
no accessors. In this case, the code generated in the adapter for those
properties does not build: it tries to use (Get/Set)Property but they
don"t inherit from Glib.Object.

Hide those properties for now, until a proper fix is implemented. As
they were not available before, it's not that bad.
2011-07-08 20:12:07 +02:00
Bertrand Lorentz 139191f537 Fix naming collisions created by the interface parsing fix
The previous commit added several new signals in Gio.ActionGroup and
Gtk.GtkCellEditable that collide with method names. Do some rename
to fix this.
2011-07-08 20:12:07 +02:00
Bertrand Lorentz ad74c64345 parser: Fix handling of initialization functions for interfaces
With the new G_DEFINE_INTERFACE macro, the interface initialization
function is named *_default_init, so we need to handle that like
*_base_init and *_class_init.

Reparse gtk/gtk-api.raw and gio/gio-api.raw. This creates some new
signals that were previously incorrectly reported as virtual methods,
and also adds some properties.
2011-07-08 20:12:07 +02: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 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 35b60b19eb Ignore volatile on func param parse.
* gio/gio-api.raw: reparse
* parser/gapi2xml.pl: ignore volatile keyword on function parameters.
2011-02-11 14:04:11 -06:00
Mike Kestner 589681516f Strip volatile keywords in field parse.
* gio/gio-api.raw: reparse
* parser/gapi2xml.pl: strip volatile keyword from field declarations
before parsing them.
2011-02-11 10:07:24 -06:00
Mike Kestner 0e084d9da7 Do a global GAsyncReadyFunc scope=async rule.
* gio/Gio.metadata: mark all AsyncReadyFuncs as async scope.  also
fixes a struct->boxed update that was causing a mis-apply.
2011-02-11 09:55:48 -06:00
Mike Kestner 5c6e722208 Hide a few more gwin32 files from the parse.
* gio/gio-api.raw: reparse
* sources/sources.xml: exclude some more gwin32*.h headers.
2011-02-11 09:01:04 -06:00
Mike Kestner 34c0ecbcf7 The rest of the first pass.
*.*: Stubbing and tweaking and cajoling and disabling to get
the first successful build of 3.0 bindings.
2011-02-08 22:15:37 -06:00
Mike Kestner 7d70a4313a Reparse and fix build for G_DEFINE_BOXED_TYPE
* gdk/PixbufFormat.custom: kill redundant Obsolete prop.
* gdk/Makefile.am: remove file.
* gdk/gdk-api.raw: reparse
* gio/Gio.metadata: hide a couple opaque fields.
* gio/gio-api.raw: reparse
2011-01-31 10:57:06 -06:00
Mike Kestner e77ee7f5b1 Update Gio to 2.27 and get it building.
* gio/DBusInterfaceVTable.cs: unbuilt stab at a connection api.
* gio/Gio.metadata: some build tweaks and workarounds.
* gio/gio-api.raw: parse for 2.27.90.
2011-01-30 17:08:55 -06:00
Mike Kestner fe2d4c311a Flatten the bootstrap and remove glade-sharp
2010-11-21  Mike Kestner  <mkestner@novell.com>

	* removed the glade dir from the build since libglade is
	no longer supported in gnome3.  removed the gapi2-compat stuff
	since it doesn't make much sense now.  Removed the bootstrap
	mechanism since we are unlikely to be releasing multiple API
	versions from the same tree going forward.  The build is now a
	straight autogen.sh like most autotools projects.
2010-11-21 21:18:06 -06:00
Christian Hoff 7b752d233c 2009-09-03 Christian Hoff <christian_hoff@gmx.net>
* glib/Global.cs: Kill the calling convention field again.
	It breaks GLib 2.x compatibility in the generator and there is
	probably no need to make the calling convention configurable.
	* .cs, *.custom: Hardcode Cdecl calling convention instead of
	using GLib's field.

svn path=/trunk/gtk-sharp/; revision=141283
2009-09-03 19:50:53 +00:00
Christian Hoff 58e97c087a 2009-09-02 Christian Hoff <christian_hoff@gmx.net>
* glib/Global.cs: Add a public constant field specifying the
	calling convention used by GLib and depending libraries.
	By now it's hardcoded to Cdecl as every non-Win32 runtime
	should ignore this attribute.
	* *.cs, *.custom: Use GLib.Global.CallingConvention for both
	pinvokes and callbacks. Plugs a stack leak on Win32. All
	pinvokes defaulted to StdCall and thus the stack was never
	cleaned up.

svn path=/trunk/gtk-sharp/; revision=141175
2009-09-02 20:17:37 +00:00
Christian Hoff 1e97a1046f 2009-08-30 Christian Hoff <christian_hoff@gmx.net>
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
2009-08-30 20:06:33 +00:00
Stephane Delcroix 2332db49a2 Fix a typo
The GIO function is actually called g_file_new_for_commandline_arg, not _argS

svn path=/trunk/gtk-sharp/; revision=136132
2009-06-15 15:14:23 +00:00
Christian Hoff 291ee61b2d 2009-04-13 Christian Hoff <christian_hoff@gmx.net>
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
2009-04-13 17:44:48 +00:00