Commit graph

3434 commits

Author SHA1 Message Date
Bertrand Lorentz df751f87ce glib: Switch to generic collections in Marshaller and ValueArray 2012-11-04 16:58:49 +01:00
Bertrand Lorentz 6e3e73e2ac glib: Use dictionaries to store type information in GType class
Yay, type safety when managing types...
2012-11-04 16:58:49 +01:00
Bertrand Lorentz 6ecd2d01f9 gdk: Use a Dictionary to hold the filter functions in Window class 2012-11-04 16:58:49 +01:00
Bertrand Lorentz eddc5fa796 generator: Use a Dictionary to hold the class structs cache
Again, nicer generated code, and no impact outside of it.
2012-11-04 16:58:49 +01:00
Bertrand Lorentz 3d6decbd0d generator: Use List<T> in generated constructors
This makes the generated code a bit nicer, but has no impact outside of
the generated constructors.
2012-11-04 16:58:49 +01:00
Bertrand Lorentz 15c5820cd8 generator: Rework data structures used by ManagedCallString
Use a single dictionary to hold the parameters and mark them as special,
instead of maintaining two lists in parallel.
2012-11-04 16:58:49 +01:00
Bertrand Lorentz 82a957bc9d generator: Switch a lot of collections to their generic counterpart
The additional type information makes the code a bit more safe
and readable.

At least one bug is fixed by this: in ObjectGen, an invalid child
property could still be generated, as it was not removed from the hash
table.

This should cause no real change to the generated code, except maybe in
the order of some members.
2012-11-04 16:58:49 +01:00
Bertrand Lorentz 608a760d45 gdk: Add reference to the GLib project in the .csproj 2012-11-04 16:58:49 +01:00
Bertrand Lorentz 47f3ca6ee5 gdk: Remove AddClientMessageFilter method from Gdk.Display and Global
The native function gdk_display_add_client_message_filter is gone from
GDK.

You can use Gdk.Window.AddFilter as a replacement.
2012-11-04 16:58:49 +01:00
Bertrand Lorentz 8db4e785aa Update samples to use generic collections 2012-11-04 16:58:39 +01:00
Andres G. Aragoneses 38e920996a gui-thread-check: Remove stock INSTALL file
It didn't contain any gui-thread-check's specifics.
2012-11-04 00:43:08 +00:00
Andres G. Aragoneses 3af6df2a2c gui-thread-check: Remove NEWS file (it was empty) 2012-11-04 00:42:22 +00:00
Andres G. Aragoneses d58243149d gui-thread-check: Merge README with gtk-sharp's 2012-11-04 00:42:01 +00:00
Andres G. Aragoneses 0ed390b201 gui-thread-check: Remove AUTHORS
Lluis is already included in AUTHORS file of gtk-sharp.
2012-11-04 00:41:20 +00:00
Andres G. Aragoneses 38770b8917 gui-thread-check: Merge config/build infrastructure with gtk-sharp 2012-11-04 00:32:09 +00:00
Andres G. Aragoneses ab447d924a gui-thread-check: Remove bogus Makefile.in
This is regenerate at every build (from Makefile.am) so
there's no need to store it in the repo. It must have been
included by mistake during the move.
2012-11-04 00:27:00 +00:00
Andres G. Aragoneses 797382180b Moved gui-thread-check subfolder inside gtk subfolder.
It's just really a profiler module facility for GTK, so it's not
related to the rest of the libraries/APIs that are not GTK and live
here.
2012-11-03 23:06:02 +00:00
Andres G. Aragoneses f7e0721879 Merge branch 'gui-thread-check' into bring-slluis-gui-thread-check
(Merging gui-thread-check repo into gtk-sharp repo, as a subfolder)
2012-11-03 23:02:35 +00:00
Andres G. Aragoneses 00c1a731ac gui-thread-check: Moved gui-thread-check sources into a new subdir
In preparation for the move to gtk-sharp upstream preserving history.
2012-11-03 23:00:08 +00:00
Bertrand Lorentz 24b0e12c62 gio: Make FileEnumerator implement IEnumerable<FileInfo> 2012-11-03 17:57:31 +01:00
Bertrand Lorentz c312fb739c gtk: Move interface declaration from fix-up to custom code
As we now use partial classes for custom code, we can put additional
interface implementation declaration in the custom code, instead of
adding it through a fix-up.

Side-note: I thought about moving to IEnumerable<T>, but ListStore is a
list of objects anyway, and Container is an array of Widgets, so there
wouldn't be much benefit from type safety.
2012-11-03 17:50:05 +01:00
Bertrand Lorentz 687e986c55 generator: Add using statements in generated code for generics 2012-11-03 17:03:31 +01:00
Bertrand Lorentz f748be34c1 generator: Implement Parameters using the generics class List<T>
A first step in the wonderful world of strong-typed collections. We
don't need to limit ourselves to the old ways of the .NET 1.1 profile.
2012-11-03 16:56:51 +01:00
Bertrand Lorentz d467cce6e6 generator: Move some classes from Parameters.cs into their own file
This is just code being moved around, there are no real code changes.
2012-11-03 15:46:06 +01:00
Bertrand Lorentz b8b1cfa5d7 generator: Convert all .cs files to Unix line endings
There are no real code changes in this commit.
2012-11-03 15:20:06 +01:00
Bertrand Lorentz 4f29defd5c generator: Add validation check for return values that are arrays
When a C function returns an array, we need to be able to determine its
length. This is done either through a parameter to that function, or
because the array is null-terminated. If we don't know about either of
those, we print out a warning and fail the validation for the return
value. This means the corresponding method will not be generated.

This fixes a crash when trying to generate a method for which this
information is missing.

This wasn't a problem until now because the parser doesn't handle array
return values, so they were always handled through fix-ups. But now we
can get a GAPI XML converted from GIR which contains the "array"
attribute for a return value but no other information.
2012-11-03 14:17:02 +01:00
Bertrand Lorentz c3b3036441 gtk: Fix return type of RecentChooser.GetUris
The native function returns a NULL-terminated array of strings, so add
this as a fix-up.
2012-11-02 19:48:02 +01:00
Bertrand Lorentz 60ff43e3ca release: Small changes to NEWS 2012-10-23 18:58:53 +02:00
Bertrand Lorentz 870d46a056 release: Update NEWS for 2.99.0
CNN is not what it used to be, let's get some real news in here.
2012-10-22 22:41:52 +02:00
Bertrand Lorentz 7ab1ead8c7 Fix indentation configured in gtk-sharp.sln 2012-10-21 18:22:13 +02:00
Bertrand Lorentz 482dec1900 generator: Fix compilation warnings 2012-10-21 18:22:13 +02:00
Bertrand Lorentz 4d19e5ac2a generator: Properly handle boolean attributes when parsing the XML
In a lot of places, we were only checking the presence of boolean
attributes, like "array", automatically assuming they were true. This
meant that we didn't allow setting them explicitly to false, which
apparently is needed for some bindings.

For all boolean attributes, we now use the GetAttributeAsBoolean method
added in the previous commit, to correctly check the value of the
attribute. As before, if the attribute is not present, it is considered
to be false.

Thanks to Stephan Sundermann for noticing this issue.
2012-10-21 18:22:13 +02:00
Bertrand Lorentz d35ef48f86 generator: Add a XmlElement.GetAttributeAsBoolean extension method
This will make it easier to correctly handle attributes that contain a
boolean value.
2012-10-21 18:21:54 +02:00
Bertrand Lorentz f1c737923f Update AUTHORS 2012-10-21 14:27:59 +02:00
Stephan Sundermann 0b355e0335 generator: Fix abstract class generation
Signed-off-by: Bertrand Lorentz <bertrand.lorentz@gmail.com>
2012-10-21 12:40:56 +02:00
Bertrand Lorentz 496992cb25 build: Remove GDK_BACKEND variable in configure.ac
It isn't used anymore, and GTK+ can now be compiled with several
backends.
2012-10-14 16:20:47 +02:00
Bertrand Lorentz 5934e35e2d build: Update some macro calls in configure.ac 2012-10-14 16:10:30 +02:00
Bertrand Lorentz f20744c9ae build: Remove inexisting configure options from autogen.sh 2012-10-14 16:10:30 +02:00
Bertrand Lorentz 96d910177d Archive Changelog as Changelog.old
Also mention that it's not used anymore.
2012-10-14 16:10:05 +02:00
Bertrand Lorentz d43817456f Update AUTHORS file
This is the result of the merge of the existing AUTHORS file and the
committer names grabbed from the git log.
2012-10-14 15:25:02 +02:00
Bertrand Lorentz 03490d7db6 Update various bits of documentation in READMEs and HACKING 2012-10-14 15:22:47 +02:00
Bertrand Lorentz 7b292538bb Update TODO 2012-10-14 15:11:43 +02:00
Bertrand Lorentz e02738bad6 build: Remove BUILD_GTK_CFLAGS and BUILD_GTK_LIBS variables
They're not used anywhere anymore.
2012-10-14 15:10:31 +02:00
Bertrand Lorentz 12c3202b73 sources.xml: Exclude pango-language-sample-table.h
This file only contains text samples, so it doesn't need to be parsed.

Also fix up indentation to be consistent throughout the file.
2012-10-14 12:51:18 +02:00
Bertrand Lorentz 8a46935237 Ignore sources subfolders for all versions 2012-10-14 12:20:49 +02:00
Bertrand Lorentz a3fe34995d Add *.pidb and *.userprefs to .gitignore
Those are generated by MonoDevelop and should not be tracked.
2012-10-13 16:44:18 +02: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
Andrés G. Aragoneses 61b67120c2 glib: add missing lock statements for Objects collection
When accessing the static Objects collection in GLib.Object
class, a lock was held in some places but not all of them.
Brought up by Alan McGovern.

Signed-off-by: Bertrand Lorentz <bertrand.lorentz@gmail.com>
2012-10-13 15:54:50 +02:00
Michael Hutchinson b5e0d297bb Fix resurrection cycles in container subclasses (bxc#3801) 2012-10-13 15:07:03 +02:00
Michael Hutchinson d686a4d6aa Added Object.TryGetObject that gets wrapper only if already surfaced 2012-10-13 15:06:51 +02:00