Commit graph

193 commits

Author SHA1 Message Date
Mike Kestner 6c67e4ffb6 2005-07-28 Mike Kestner <mkestner@novell.com>
* bootstrap-for-the-insane : beginnings of 2.8 binding.
	* */*-api-2.8.raw : 2.8 api files.
	* gdk/Gdk.metadata : work around #define used in Pixbuf props in 2.7.
	* parser/gapi2xml.pl : collision guarding for privatestruct defs.
	* sources/gtk-sharp-2.8-sources.xml : parse for 2.8.
	* sources/Makefile.am : api-2.8, get-2.8-sources, etc...

svn path=/trunk/gtk-sharp/; revision=47820
2005-07-28 21:24:55 +00:00
Dan Winship 0fa85fccbd * parser/gapi2xml.pl (addParamsElem): deal with G_CONST_RETURN in
params... some functions use that to mark const "out" params. In
	fact, let's use it as a hint to mark them pass_as="out" too...

	* pango/pango-api-2.4.raw: 
	* pango/pango-api-2.6.raw: 
	* gtk/gtk-api-2.6.raw: Regen, fixing pango_script_iter_get_range
	and gtk_image_get_icon_name.

	* pango/Pango.metadata: 
	* pango/ScriptIter.cs: Alas, exposing GetRange makes it clear that
	PangoScriptIter is really weird and we weren't wrapping it
	correctly before anyway, so mark the whole thing hidden and wrap
	it by hand.

svn path=/trunk/gtk-sharp/; revision=47748
2005-07-27 13:21:15 +00:00
Dan Winship 6bf7376094 * parser/gapi2xml.pl (addParamsElem): change the handling of
anonymous function pointer types in method signatures. Before, we
	added a <callback> child to the <parameters> node, but the
	generator just ignored it. Now we add the callback (with a made-up
	name) to the toplevel node, and add an ordinary <param> node
	referencing it to the <parameters> node. Also, if the last param
	of the callback is a gpointer, rename it from "arg#" to "data" so
	it will be treated correctly (as the user data passed from the
	calling method). [Fixes #66241]

	* art/art-api.raw: 
	* gdk/gdk-api-2.4.raw: 
	* gdk/gdk-api-2.6.raw: Regen

	* generator/Parameters.cs (IsHidden): loosen the definition of
	hideable user_data; it doesn't have to occur at the end of the
	parameter list, as long as there's a callback arg before it.

	* generator/MethodBody.cs (GetCallString): Use Parameters.IsHidden
	to decide whether or not to squash user_data params, rather than
	trying to duplicate its logic. As a side effect, this also causes
	a handful of methods that take non-hidden IntPtr arguments to
	start actually passing those arguments to C rather than always
	passing IntPtr.Zero.

	* generator/Method.cs (Equals, GetHashCode): Remove unnecessary
	and possibly erroneous hashing overrides.

	* gtk/Gtk.metadata: Hide Gtk.Container.ForeachFull, since it's
	useless and wasn't in gtk# 1.0

	* gtk/Menu.custom (Popup):
	* gtk/TextIter.custom (ForwardFindChar, BackwardFindChar):
	* gnome/App.custom (CreateMenusInterp, InsertMenusInterp,
	CreateToolbarInterp):
	* gnome/Client.custom (RequestInteractionInterp):
	* gnome/Popup.custom (MenuDoPopupModal, MenuDoPopup): Add
	[Obsolete] compat overloads for methods that have now lost a
	useless IntPtr.

svn path=/trunk/gtk-sharp/; revision=47566
2005-07-22 19:10:04 +00:00
Dan Winship d37d940eb8 * parser/gapi2xml.pl (parseInitFunc): handle interface properties
as well as class properties

	* gtk/gtk-api-2.4.raw: 
	* gtk/gtk-api-2.6.raw: Regen (adding properties to GtkFileChooser).

	* generator/Property.cs (GenerateDecl): new method to generate
	just a property declaration (for an interface).
	(Generate): Add an "implementor" arg as with Method.Generate.

	* generator/InterfaceGen.cs (Generate): Generate properties. Also,
	validate methods *before* checking if they should be ignored,
	since certain Method properties aren't set until Validate-time.

	* generator/*.cs: misc minor changes/reorg for the above.

svn path=/trunk/gtk-sharp/; revision=47563
2005-07-22 18:35:37 +00:00
Dan Winship fbcb47f5e6 * parser/gapi2xml.pl: Change a few instances of
"last if ($line =~ /^}/);" to
	"last if ($line =~ /^(deprecated)?}/);" to prevent runaway
	parsing (in particular in libgnomeui).

	* sources/gtk-sharp-2.4-sources.xml: 
	* sources/gtk-sharp-2.6-sources.xml: exclude a handful of
	libgnomeui files that were omitted in gtk# 1.0 due to the parser
	bug, but which are entirely deprecated anyway. (Some of them
	showed up in earlier 1.9/2.4/2.6 releases but are going away again
	now.)

	* gnome/gnome-api.raw: Regen

	* gnome/Gnome.metadata: Hide a few more things that should be
	hidden, remove a few rules that aren't needed any more. Keeping
	hiding GnomeIconTheme though and using the old by-hand IconTheme
	for the moment, since the by-hand one isn't compatible with the
	autogenerated one.

	* gnome/IconData.cs: kill this, use the autogenerated version

svn path=/trunk/gtk-sharp/; revision=47398
2005-07-18 21:27:00 +00:00
Mike Kestner f1a8c00732 2005-07-08 Mike Kestner <mkestner@novell.com>
* */*.raw : regen.
	* parser/gapi2xml.pl : access comment doesn't have to start at
	beginning of line.

svn path=/trunk/gtk-sharp/; revision=47126
2005-07-08 22:04:50 +00:00
Mike Kestner 94b7d14a39 2005-06-20 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl : fix const foo * const * fields/params.
	[Fixes #75266]

svn path=/trunk/gtk-sharp/; revision=46243
2005-06-20 16:09:27 +00:00
Dan Winship cb427b5747 * parser/gapi2xml.pl (addPropElem): Distinguish CONSTRUCT ("must
be set at construct time") and CONSTRUCT_ONLY ("can only be set at
	construct time") properties, rather than marking them all
	"construct-only".

	* gnome/gnome-api.raw: 
	* gtk/gtk-api-2.4.raw: 
	* gtk/gtk-api-2.6.raw: Regen, causing a few formerly-read-only
	properties to become writable.

svn path=/trunk/gtk-sharp/; revision=45767
2005-06-10 15:46:24 +00:00
Mike Kestner 8f032b793e 2005-06-06 Mike Kestner <mkestner@novell.com>
* Makefile.include : depend on gapi-fixup.exe for the api target.
	* parser/gapi-fixup.cs : remove-node rule handling.

svn path=/trunk/gtk-sharp/; revision=45502
2005-06-06 15:32:22 +00:00
Mike Kestner 0ceb4ccbca 2005-06-02 Mike Kestner <mkestner@novell.com>
* gtk/gtk-api-2.6.raw : regen.
	* parser/gapi_pp.pl : add G_DEFINE_TYPE_WITH_CODE handling.
	* parser/gapi2xml.pl : add G_DEFINE_TYPE_WITH_CODE parsing.
	[Fixes #74833]

svn path=/trunk/gtk-sharp/; revision=45338
2005-06-02 19:18:44 +00:00
Dan Winship 40c4db88a4 * parser/gapi2xml.pl: Make the enum value parser do the right
thing with parenthesized values ("FOO = (1 << 2)") and within-type
	aliases ("GTK_ANCHOR_N = GTK_ANCHOR_NORTH"). Make it intentionally
	do the wrong thing with unparsable values (outputting them as-is
	into the api file) so that we are forced to fix them with metadata
	rather than silently getting incorrect values.

	* gdk/gdk-api-2.4.raw: 
	* gdk/gdk-api-2.6.raw (PixdataType): Now recognized as flags,
	not enum

	* gtk/Gtk.metadata: hide the enums ArgFlags and RcTokenType (which
	are not used by any wrapped API, and which formerly contained
	entirely wrong values).

	* gtk/gtk-api-2.4.raw: 
	* gtk/gtk-api-2.6.raw (AnchorType, SelectionMode): update with
	values for aliases

	* gnome/Gnome.metadata: fix value of Gnome.PrintButtons.Cancel

	* gnome/gnome-api.raw (PrintUnitBase, PaperSelectorFlags,
	PrintDialogFlags, PrintDialogRangeFlags): Now recognized as flags,
	with values.

svn path=/trunk/gtk-sharp/; revision=44937
2005-05-24 18:11:33 +00:00
Dan Winship 900b14290c * parser/gapi2xml.pl: make note of _get_type methods for enums
* */*-api.xml: Regen, adding gtype="..." to many enum types

	* generator/EnumGen.cs (Generate): if the enum has the
	"gtype" property, add a GTypeAttribute pointing to an internal
	FooGType class whose GType property can be used to get the enum's
	GType.

	* generator/ObjectGen.cs:
	s/ObjectManager.RegisterType/GType.Register/

	* glib/GTypeAttribute.cs: attribute for indicating a property that
	will return the GType of a type (particularly for enums, which
	can't have GType properties added to them).

	* glib/GType.cs: renamed from Type.cs to match the type name
	(public static readonly GType ...): add a few missing types.
	(Register): moved from ObjectManager.RegisterType
	(LookupGType): moved from TypeConverter.LookupType and extended to
	handle GTypeAttribute. Also, fix mappings for sbyte/byte/char, and
	return specific GTypes for Object subclasses rather than always
	returning GType.Object.	[Fixes #74699]
	(LookupType): moved from ObjectWrapper.LookupType
	(ToString): return the type name
	
	* glib/Object.cs (RegisterGType):
	s/ObjectManager.Register/GType.Register/
	(LookupGType): Make this protected internal so GType can access
	it.

	* glib/ObjectManager.cs (RegisterType): deprecate in favor of
	GType.Register.
	(LookupType): moved to GType
	
	* glib/TypeConverter.cs (LookupType): now a deprecated wrapper
	around GType.LookupGType.

	* glib/Value.cs: Use GType casts rather than TypeConverter

	* gtk/NodeStore.cs (ScanType):
	* gtk/ListStore.custom (ListStore): 
	* gtk/TreeStore.custom (TreeStore): Use (GType) cast rather than
	TypeConverter. Remove the error check and exception, since the
	cast never returns GType.Invalid. (The check probably predates
	GLib.ManagedValue.)

	* gnome/PanelAppletFactory.cs (Register): Use a GType cast rather
	than GLib.Object.LookupGType (which is no longer accessible after
	an mcs bugfix)

	* sample/GtkDemo/DemoIconView.cs (CreateStore): use the Type[]
	constructor rather than the GType[] constructor, since it
	translates typeof(Gdk.Pixbuf) correctly now.

svn path=/trunk/gtk-sharp/; revision=44038
2005-05-04 16:54:24 +00:00
Mike Kestner f0f47bf078 2005-05-03 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl : parse const * const * Foo () properly.
	[Fixes #74710]

svn path=/trunk/gtk-sharp/; revision=43925
2005-05-03 13:59:25 +00:00
Ben Maurer 9f5eb0a70d * */Makefile.am: more build fixes
svn path=/trunk/gtk-sharp/; revision=43697
2005-04-27 23:21:55 +00:00
Mike Kestner 1f555ab568 2005-04-21 Mike Kestner <mkestner@novell.com>
* configure.in : require gtk+ 2.6.
	* generator/ReturnValue.cs : invalidate Callback returns for now.
	* gtk/Gtk.metadata : some renames for conflicting new API.
	* parser/gapi2xml.pl : whitespace tweak for class VM regexen.
	* sources/Makefile.am : add new patch, kill atk patch, revise dirs.
	* sources/atkhyperlink.patch : kill unnecessary patch.
	* sources/gtkclipboard.patch : add new clipboard patch.
	* sources/gtk-sharp-sources.xml : parse gtk+-2.6.
	* */*-api.raw : regen pango, atk, gdk, and gtk for new versions.

svn path=/trunk/gtk-sharp/; revision=43412
2005-04-21 17:10:54 +00:00
Dan Winship d86a481b38 * parser/gapi_pp.pl: add "#if 0" to $eatit_regex
svn path=/trunk/gtk-sharp/; revision=43407
2005-04-21 15:21:11 +00:00
Mike Kestner e56d2feafc kill useless .cvsignore files
svn path=/trunk/gtk-sharp/; revision=43355
2005-04-20 20:11:00 +00:00
Mike Kestner 78bd3e2600 2005-04-20 Mike Kestner <mkestner@novell.com>
* parser/gapi-parser.cs : add a directory element with child exclude
	elements to simplify source version updating. 
	* sources/gtk-sharp-sources.xml : switch to directory elements.

svn path=/trunk/gtk-sharp/; revision=43354
2005-04-20 19:52:47 +00:00
Mike Kestner 8f9d1cb15d 2005-04-15 Mike Kestner <mkestner@novell.com>
* configure.in : remove unnecessary libxml check.
	* parser/gapi-parser.cs : use a System.Xml to kill gapi_format_xml.
	* parser/formatXml.c : kill.
	* parser/Makefile.am : kill gapi_format_xml
	* */*-api.raw : enormous whitespace diff. sorry dawgs on mono-patches.

svn path=/trunk/gtk-sharp/; revision=43080
2005-04-15 21:29:56 +00:00
Mike Kestner 68ab921940 2005-04-15 Mike Kestner <mkestner@novell.com>
* parser/gapi-parser.cs : C# rewrite of the old perl driver script.
	* parser/gapi_parser.pl : kill.
	* parser/gapi2-parser.in : invoke via $(RUNTIME).
	* parser/Makefile.am : build rework for C# parser driver.
	* sources/Makefile.am : use $(RUNTIME) to invoke new parser assm.

svn path=/trunk/gtk-sharp/; revision=43077
2005-04-15 20:52:44 +00:00
Mike Kestner fb6aeb35da 2005-03-30 Jeroen Zwartepoorte <jeroen@xs4all.nl>
* parser/gapi2xml.pl : parse gst type macros.

svn path=/trunk/gtk-sharp/; revision=42388
2005-03-30 20:53:46 +00:00
Dan Winship 05ddfae8dc * parser/gapi2xml.pl (parseTypeToken): don't parse punctuation
into the type name

	* gtk/gtk-api.raw: Regen, exposing the previously-broken
	AccelGroup.AccelActivate, AccelMap.Changed,
	ActionGroup.ConnectProxy, ActionGroup.DisconnectProxy,
	ActionGroup.PreActivate, ActionGroup.PostActivate, and
	Widget.EventAfter.

	* gtk/Gtk.metadata: Give proper names to the parameters of those
	signals

svn path=/trunk/gtk-sharp/; revision=41111
2005-02-23 20:16:40 +00:00
Dan Winship 65edda888f * parser/gapi2xml.pl: add a hack to allow "foo_bar_get_type()"
rather than "FOO_TYPE_BAR" in G_TYPE_CHECK_INSTANCE_CAST macros,
	allowing large parts of libgda that were previously misparsed to
	be parsed correctly

	* gda/gda-api.raw: Regen

	* gda/Gda.metadata: Make Gda.Value opaque, since it's mostly a
	union and we're horribly butchering its layout.

svn path=/trunk/gtk-sharp/; revision=41103
2005-02-23 17:37:06 +00:00
Mike Kestner 31a6de44ca 2005-01-31 Mike Kestner <mkestner@novell.com>
* generator/SymbolTable.cs : handle unsigned-*.
	* parser/gapi2xml.pl : handle const unsigned * parameters. Also fix
	a G_GNUC_PRINTF parsing bug exposed by a GMime.
	* */*-api.raw : regen.
	[Fixes #71825]


svn path=/trunk/gtk-sharp/; revision=39851
2005-01-31 15:23:41 +00:00
Mike Kestner de1136450c 2005-01-18 Mike Kestner <mkestner@novell.com>
* gtk/gtk-api.raw : regen.
	* parser/gapi2xml.pl : deal with G_GNUC_PRINTF.

svn path=/trunk/gtk-sharp/; revision=39126
2005-01-19 02:31:41 +00:00
Mike Kestner 6f6d3cb078 remove a few c.wls that snuck in
svn path=/trunk/gtk-sharp/; revision=38628
2005-01-10 16:23:50 +00:00
Mike Kestner 8fd87b2e0a 2005-01-08 Mike Kestner <mkestner@novell.com>
* configure.in : kill a ton of redundant stuff.
	* AssemblyInfo.cs.in : moved here, only need one.
	* Makefile.include : rules for building generated assemblies.
	* Makefile.am : removed gtk-sharp-2.0.pc handling.
	* */AssemblyInfo.cs.in : killed
	* */Makefile.am : refactored out a ton of rules to an include.
	* */*-pc.in : added Cflags entries pointing to the gapi files.
	* generator/CodeGenerator.cs : add -I: synonym --include.
	* gnomevfs/gnome-vfs-api.raw : remamed from gnomevfs-api.raw.
	* gtk/gtk-sharp-2.0.pc.in : moved here from top.
	* parser/gapi-fixup.cs : add --symbol arg to merge sym files.
	* sources/gtk-sharp-sources.xml : remamed gnome-vfs-api.raw.

svn path=/trunk/gtk-sharp/; revision=38551
2005-01-09 00:26:45 +00:00
Mike Kestner 574aa2ee06 2005-01-07 Mike Kestner <mkestner@novell.com>
* configure.in : check for panelapplet in enable_gnome and remove
	all the stuff for a separate panelapplet-sharp assembly.
	* Makefile.am : remove panelapplet dir from build.
	* gnome/BonoboUIVerb.cs : moved from panelapplet.
	* gnome/Gnome.metadata : add rules from panelapplet.
	* gnome/Makefile.am : add new files.
	* gnome/PanelApplet.custom : moved from panelapplet.
	* gnome/PanelAppletFactory.cs : moved from panelapplet.
	* gnome/glue/panelapplet.c : moved from panelapplet.
	* gnome/glue/Makefile.am : add new file.
	* gnomedb/GnomeDb.metadata : hide a newly parsed "obsolete" type.
	* gtk/Gtk.metadata : hide a newly parsed "obsolete" callback type.
	* panelapplet : kill dir.
	* parser/gapi2xml.pl : update callback name sanity check.
	* sources/gtk-sharp-sources.xml : move panelapplet parse into gnome.
	* */*-api.raw : regen.

svn path=/trunk/gtk-sharp/; revision=38509
2005-01-07 21:29:38 +00:00
Mike Kestner ba4b11a21b 2004-12-22 Mike Kestner <mkestner@novell.com>
* gdk/gdk-api.raw : update enum values.
	* gnome/gnome-api.raw : update enum values.
	* gtk/gtk-api.raw : update enum values.
	* pango/pango-api.raw : update enum values.
	* parser/gapi2xml.pl : pull whitespace out of enum prefixing logic.
	[Fixes #70593]

svn path=/trunk/gtk-sharp/; revision=38051
2004-12-22 19:12:15 +00:00
Dan Winship a610fb9a79 * generator/GUnicharGen.cs: generatable for gunichar, using
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
2004-12-20 22:05:21 +00:00
Dan Winship 88cc4817f5 * parser/gapi_pp.pl: Don't strip out /*< public >*/ and
/*< 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
2004-12-16 23:22:07 +00:00
Dan Winship e0a0bd13fa * gdk/gdk-symbols.xml: alias GdkBitmap to GdkPixmap [Fixes
* #68824]

        * gdk/Gdk.metadata: Remove the earlier GdkBitmap hack now that
        it's aliased. Also move Gdk.Bitmap.CreateFromData to
        Gdk.Pixmap.CreateBitmapFromData

        * gdk/Pixbuf.custom (RenderPixmapAndMask,
        RenderPixmapAndMaskForColormap, RenderThresholdAlpha):
        s/Bitmap/Pixmap/

        * sample/GtkDemo/DemoTextView.cs: uncomment the fg/bg stipple
        code, since that works now

        * parser/gapi-fixup.cs: Add an "add-node" rule. This turned out
        * to
        not actually be needed for this fix, but we know we'll need it
        later, so here it is.

svn path=/trunk/gtk-sharp/; revision=37055
2004-12-03 20:42:12 +00:00
Mike Kestner 26234d915b 2004-11-18 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl : fix a missing semi in a vm regex.
	* */*-api.raw : regen with missing vms.

svn path=/trunk/gtk-sharp/; revision=36287
2004-11-18 21:30:18 +00:00
Dan Winship 9d04b4dd06 Redo child property handling; now we generate classes to hold
the
        child properties for a given widget in a container, and generate
        the child properties as properties on those classes.
        
        * parser/gapi2xml.pl (addPropElem): don't prepend "child_" to
        child prop names any more

        * generator/ClassBase.cs (ClassBase): keep childprops separate
        from properties
        (GenChildProperties): create a subclass of Gtk.ContainerChild
        containing the container type's child properties, and override
the
        Container indexer to return that type.

        * generator/ObjectGen.cs (Generate): call GenChildProperties

        * generator/Property.cs:
        * generator/ChildProperty.cs: Simplify these a bunch, since
        * child
        properties are now represented as C# properties as well. Also
add
        [GLib.Property(cname)] and [Gtk.ChildProperty(cname)]
attributes.

        * glib/Makefile.am (sources): add PropertyAttribute.cs

        * glib/PropertyAttribute.cs: attribute used to label
        GObject properties

        * gtk/Makefile.am (sources): add ChildPropertyAttribute.cs

        * gtk/gtk-api.raw: regenerate for parser changes (remove
        "Child"/"child_" from child property names).

        * gtk/ChildPropertyAttribute.cs: attribute used to label
        GtkContainer child properties

        * gtk/Container.custom: define the ContainerChild class, and an
        indexer to return instances of it.

        * doc/en/Gtk/: update for container child property change

svn path=/trunk/gtk-sharp/; revision=36284
2004-11-18 20:31:22 +00:00
Mike Kestner 7b9e2ba720 2004-11-13 Mike Kestner <mkestner@novell.com>
* */*-api.raw : rerun the parser for new vm-age and cleanups.
	* parser/gapi_pp.pl : suppress union types, since we can't generate
	them.  smarter get_type regex. ignore #errors.
	* parser/gapi2xml.pl : generate vm elements for GInterfaces. Deal
	with G_CONST_RETURN in vms. deal with "struct _foo" types in method
	prototypes.

svn path=/trunk/gtk-sharp/; revision=36088
2004-11-13 05:32:26 +00:00
Mike Kestner 220caaa929 2004-11-12 Mike Kestner <mkestner@novell.com>
* parser/gapi_pp.pl : fix multi-line extern parsing.

svn path=/trunk/gtk-sharp/; revision=36086
2004-11-13 03:09:14 +00:00
Mike Kestner 314419c926 2004-11-12 Mike Kestner <mkestner@novell.com>
* parser/gapi_pp.pl : fix a struct parsing bug.

svn path=/trunk/gtk-sharp/; revision=36085
2004-11-13 02:18:31 +00:00
Dan Winship df41dcc177 * parser/gapi2xml.pl (parseInitFunc, addPropElem): handle
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
2004-11-05 16:47:15 +00:00
Mike Kestner 7f3171c814 merge to HEAD of jeroen and friends' work on the 2-4 branch. HEAD
is now tracking Gnome 2.6.

svn path=/trunk/gtk-sharp/; revision=35479
2004-10-29 20:33:07 +00:00
Mike Kestner 0cbff45649 2004-07-30 Mike Kestner <mkestner@ximian.com>
* parser/gapi2xml.pl : char const * fixes for clahey's gsf binding.

svn path=/trunk/gtk-sharp/; revision=31687
2004-07-30 20:36:39 +00:00
Mike Kestner f96454a364 2004-06-25 Mike Kestner <mkestner@ximian.com>
* generator/*.cs : add gpl license blurb and clean up (c)'s.
	* parser/* : ditto
	* doc/*.cs : ditto
	* doc/gen-handlerargs-docs.cs : add little scripty.

svn path=/trunk/gtk-sharp/; revision=30398
2004-06-25 16:35:15 +00:00
Mike Kestner 80cc52bd47 kill the cvsignore too.
svn path=/trunk/gtk-sharp/; revision=28087
2004-05-25 21:29:12 +00:00
Mike Kestner 7a518421ab 2004-05-25 Mike Kestner <mkestner@ximian.com>
* configure.in : don't expand the GAPI Makefile.
	* parser/Makefile.am : remove SUBDIRS.
	* parser/gapi2xml.pl : remove GAPI::Metadata usage.
	* parser/GAPI/* : kill. long live gapi-fixup.

svn path=/trunk/gtk-sharp/; revision=28085
2004-05-25 21:27:41 +00:00
Mike Kestner 37a37adf53 2004-03-18 Mike Kestner <mkestner@ximian.com>
* parser/gapi2xml.pl : fix passbyvalue bug in vm parsing.
	* */*.raw : regen

svn path=/trunk/gtk-sharp/; revision=24290
2004-03-18 20:25:07 +00:00
John Luke 51a6b95ed4 2004-03-14 John Luke <jluke@cfl.rr.com>
* parser/gapi-fixup.in:
        * generator/gapi-codegen.in: s/@MONO@/@RUNTIME@

svn path=/trunk/gtk-sharp/; revision=24026
2004-03-14 21:51:37 +00:00
Mike Kestner e83c55a242 2004-03-12 Mike Kestner <mkestner@ximian.com>
* */Makefile.am : automakify the build
	* */Makefile.in : kill
	* *.custom : remove System.Drawing dependencies
	* *.cs : remove System.Drawing dependencies
	* *-api.xml : mv to *-api.raw
	* glue/* : mv to lib specific gluelibs for glib, gdk, gtk, and glade.
	* gtk/gtk-symbols : alias GtkType to GType
	* sources/gtk-sharp-sources.xml : create .raw files. They are now
	transformed to .xml files by the metadata compilation step.

svn path=/trunk/gtk-sharp/; revision=23967
2004-03-12 21:18:11 +00:00
Mike Kestner 64e69d3832 2004-03-08 Mike Kestner <mkestner@ximian.com>
* generator/ObjectGen.cs : ignore virtual_method elems for now.
	* parser/gapi2xml.pl : parse the non-signal class methods and add as
	virtual_method elements in the API xml
	* */*-api.xml : regen

svn path=/trunk/gtk-sharp/; revision=23809
2004-03-08 18:08:48 +00:00
Mike Kestner d41f6593b0 2004-02-10 Mike Kestner <mkestner@ximian.com>
* art/Art.metadata : mark a field private
	* art/art-api.xml : regen
	* gda/Gda.metadata : mark a few structs opaque
	* gda/gda-api.xml : regen
	* gdk/*.custom : fix changed field names
	* gdk/gdk-api.xml : regen
	* generator/Field.cs : StudlyCase simple typed field names.
	* gnome/Gnome.metadata : mark FontEntry.weight private to
	avoid collision with Weight field. s|//|/api/namespace|g
	* gnome/gnome-api.xml : regen
	* gtk/Gtk.metadata : rename AccelKey.accel_key to key to
	avoid collision with type name.
	* gtk/*.custom : fix changed field names
	* gtk/gtk-api.xml : regen
	* pango/pango-api.xml : regen
	* parser/gapi_pp.pl : add a private_regex to hide BACKEND
	and ENGINE apis, which are by convention private.
	* sample/* : make compile
	* sample/GtkDemo/* : make compile
	* sample/test/* : make compile
	* sources/gtk-sharp-sources.xml : exclude a bunch of pango
	source files.

svn path=/trunk/gtk-sharp/; revision=22947
2004-02-10 16:04:50 +00:00
Mike Kestner 0b41ef6a58 2004-01-28 Mike Kestner <mkestner@ximian.com>
* gtk/gtk-api.xml : regen
	* parser/gapi2xml.pl : fix signals parsing where a STRUCT_OFFSET
	is not present in the signal_new call.
	* parser/gapi_pp.pl : ignore #ident lines.
	* vte/vte-api.xml : regen
	[Fixes #53189]

svn path=/trunk/gtk-sharp/; revision=22583
2004-01-28 21:44:25 +00:00
Mike Kestner 2340cb040e 2004-01-25 Mike Kestner <mkestner@ximian.com>
* art/art-api.xml : regen
	* gdk/gdk-api.xml : regen
	* generator/SymbolTable.cs : add unsigned char mapping
	* gnome/gnome-api.xml : regen
	* parser/gapi2xml.pl : handle unsigned keyword in fields,
	typedefs, and parameter types.
	[Fixes #53055]

svn path=/trunk/gtk-sharp/; revision=22487
2004-01-26 04:53:05 +00:00
Mike Kestner 336bb6a786 2004-01-25 Mike Kestner <mkestner@ximian.com>
* gdk/gdk-api.xml : regen
	* gnome/gnome-api.xml : regen
	* gtk/gtk-api.xml : regen
	* parser/gapi2xml.pl : handle typedef struct {...} Foo;
	[Fixes #53312]

svn path=/trunk/gtk-sharp/; revision=22486
2004-01-26 04:10:32 +00:00
Mike Kestner 406320a945 2003-12-12 Mike Kestner <mkestner@ximian.com>
* gnome/gnome-api.xml : regen'd
	* parser/gapi2xml.pl : handle typedef enum _foo foo;
	* parser/gapi-parser : support <exclude> elements in addition to <dir>
	and <file> to specify the sources to be parsed.

svn path=/trunk/gtk-sharp/; revision=21081
2003-12-12 22:36:52 +00:00
Mike Kestner 2b71c9172e 2003-12-04 Mike Kestner <mkestner@ximian.com>
* parser/gapi2xml.pl : fix for const param handling [#50295]

svn path=/trunk/gtk-sharp/; revision=20780
2003-12-04 17:52:02 +00:00
Mike Kestner cf901a483b 2003-11-19 Mike Kestner <mkestner@ximian.com>
* parser/gapi_pp.pl : handle files and dirs in ARGV.
	* parser/gapi2xml.pl : deal with struct keyword in param decls
	* parser/gapi-parser : handle <file> elements.

svn path=/trunk/gtk-sharp/; revision=20238
2003-11-19 18:44:01 +00:00
Mike Kestner 8c66c5c7c6 2003-11-14 Mike Kestner <mkestner@ximian.com>
* gtk/Gtk.metadata : fully qualify attr paths
	* parser/gapi-fixup.cs : compile a path expression per Ben Maurer
	suggestion.

svn path=/trunk/gtk-sharp/; revision=20013
2003-11-14 22:34:07 +00:00
Mike Kestner d69268abbf 2003-11-07 Mike Kestner <mkestner@ximian.com>
* configure.in : add mono check.  expand wrapper scripts
	* generator/Makefile.in : use install. install a gapi-codegen wrapper.
	* generator/SymbolTable.cs : add SimpleGen for short
	* generator/gapi-codegen.in : new wrapper script in file.
	* parser/Makefile.in : use install. install a gapi-fixup wrapper.
	* generator/gapi-fixup.in : new wrapper script in file.
	* parser/gapi2xml.pl : deal with non-namespaced enums. ignore
	forward struct declarations.

svn path=/trunk/gtk-sharp/; revision=19712
2003-11-07 18:14:35 +00:00
Mike Kestner 8eeccbb55c 2003-10-20 Mike Kestner <mkestner@ximian.com>
* atk/atk-api.xml : regenerated
	* gdk/gdk-api.xml : regenerated
	* gtk/gtk-api.xml : regenerated
	* gtkhtml/gtkhtml-api.xml : regenerated [Fixes #49875]
	* parser/gapi2xml.pl : handle unnamed parameter declarations.

svn path=/trunk/gtk-sharp/; revision=19217
2003-10-20 20:02:16 +00:00
Mike Kestner ff35a19db0 2003-10-18 Mike Kestner <mkestner@ximian.com>
* gtk/Gtk.metadata : add move-node rules for Paint methods.
	* gtk/gtk-api.xml : regenerated
	* parser/gapi2xml.pl : put paint_ methods in global, not Paint.
	* parser/gapi-fixup.cs : add move-node rule handling. [Fixes #47980]

svn path=/trunk/gtk-sharp/; revision=19184
2003-10-19 01:35:24 +00:00
Mike Kestner f314da0c9f 2003-10-13 Mike Kestner <mkestner@ximian.com>
* gnome/Gnome.metadata : new xpath metadata rules
	* gnome/Makefile.in : apply metadata before generation
	* gnome/gnome-api.xml : regenerated
	* parser/gapi-fixup.cs : use XmlDocument.Save (filename)
	instead of opening a stream manually.
	* sources/Gnome.metadata : killed

svn path=/trunk/gtk-sharp/; revision=18975
2003-10-13 17:38:22 +00:00
Mike Kestner 6e44bd8cdb 2003-10-12 Mike Kestner <mkestner@ximian.com>
* art/Art.metadata : new xpath metadata rules
	* art/Makefile.in : apply metadata before generation
	* atk/Atk.metadata : new xpath metadata rules
	* atk/Makefile.in : apply metadata before generation
	* gda/Gda.metadata : new xpath metadata rules
	* gda/Makefile.in : apply metadata before generation
	* gdk/Gdk.metadata : new xpath metadata rules
	* gdk/Makefile.in : apply metadata before generation
	* gnomedb/GnomeDb.metadata : new xpath metadata rules
	* gnomedb/Makefile.in : apply metadata before generation
	* pango/Pango.metadata : new xpath metadata rules
	* pango/Makefile.in : apply metadata before generation
	* parser/Makefile.in : build and install new gapi-fixup
	* parser/gapi-fixup.cs : new xpath based metadata engine
	* sources/*.metadata : remove most of the old metadata,
	still have to convert Gtk and Gnome to xpaths.

svn path=/trunk/gtk-sharp/; revision=18947
2003-10-13 03:06:22 +00:00
Mike Kestner 3c973421cb 2003-10-09 Mike Kestner <mkestner@ximian.com>
* api/*-api.xml : regenerated
	* parser/gapi_pp.pl : ignore simple comments.  [Fixes #47450]
	* parser/gapi2xml.pl : turn off debug.

svn path=/trunk/gtk-sharp/; revision=18794
2003-10-09 05:54:55 +00:00
Mike Kestner ec59bb6398 2003-10-07 Mike Kestner <mkestner@ximian.com>
* parser/gapi2xml.pl : look for ");" at the end of property
	declarations to avoid problems with ';' in property docstrings.
	* api/gtk-api.xml : regenerated.  [Fixes #47987]

svn path=/trunk/gtk-sharp/; revision=18715
2003-10-07 19:28:40 +00:00
Mike Kestner ff7d040ae0 2003-10-02 Mike Kestner <mkestner@ximian.com>
* api/gnome-api.xml : regenerated
	* parser/gapi2xml.pl : handle enum <name> {...};  Thanks to
	Martin for identifying the bug and providing a candidate patch.

svn path=/trunk/gtk-sharp/; revision=18524
2003-10-02 15:48:36 +00:00
Mike Kestner 4da6295257 2003-10-01 Mike Kestner <mkestner@ximian.com>
* README.generator : updates for new parser script
	* api/Makefile.in : add gtkhtml-api.xml
	* api/*-api.xml : regenerated
	* parser/makefile : install new parsing script
	* parser/gapi-parser : new xml-driven parsing script
	* sources/makefile : call new parsing script
	* sources/gtk-sharp-sources.xml : new parser input file
	* sources/gtk-sharp.sources : killed

svn path=/trunk/gtk-sharp/; revision=18491
2003-10-01 21:42:29 +00:00
Mike Kestner fe3e323429 2003-09-03 Aleksey Sanin <aleksey@aleksey.com>
* parser/GAPI/Metadata.pm: enable enums processing using
 	<class/> element syntax

svn path=/trunk/gtk-sharp/; revision=17846
2003-09-03 13:14:19 +00:00
Mike Kestner 90705a1c98 2003-07-14 Mike Kestner <mkestner@speakeasy.net>
* api/*-api.xml : regenerated
	* gdk/Drawable.custom : DrawRectangle filled param is now bool
	* generator/Parameters.cs : studlify names ending w/ uscore
	* gtk/GtkSharp.GtkClipboardClearFuncNative : s/Opaque/Object
	* gtk/GtkSharp.GtkClipboardGetFuncNative : s/Opaque/Object
	* parser/gapi2xml.pl : put <ns>_string_* methods in Global
	* sample/Scribble.cs : update to new DrawRectangle api
	* sources/Gdk.metadata : hide some conflicting methods
	* sources/Gtk.metadata : finally fix the Progress crap and
	renames, hides and such to fix conflicts
	* sources/README : mention new gtk-2.2 reqs
	* sources/gtk-sharp.sources : update to new gtk-2.2 reqs
	* sources/makefile : update for 2.2 api

svn path=/trunk/gtk-sharp/; revision=16254
2003-07-15 05:52:09 +00:00
Mike Kestner 3ff827ed69 2003-07-10 Mike Kestner <mkestner@speakeasy.net>
* api/*-api.xml : regenerated
	* gdk/Threads.cs : killed since the methods are now gen'd
	* generator/ClassGen.cs : new, static class generatable
	* generator/Parameters.cs : mangle new and byte as param names
	* generator/Parser.cs : parse new <class> elements
	* generator/SymbolTable.cs : add GC SimpleGen
	* parser/gapi2xml.pl : static class element fixes
	* parser/GAPI/Metadata.pm : add class element
	* sources/Art.metadata: new, rename Affine.ToString method
	* sources/Atk.metadata: rename State class
	* sources/Gdk.metadata: hide Pixbuf static class for now. rename
	Event and Pango static classes to avoid collisions.
	* sources/Gnome.metadata: rename Gtk and Gdk static classes to
	avoid collisions.
	* sources/GnomeDb.metadata: rename Stock static class to
	avoid collisions.
	* sources/Gtk.metadata: rename Stock static class to
	avoid collisions. Hide Idle class.

svn path=/trunk/gtk-sharp/; revision=16115
2003-07-11 02:00:13 +00:00
Mike Kestner 2d3e7d7c9c 2003-07-06 Mike Kestner <mkestner@speakeasy.net>
* api/gtk-api.xml : regenerated
	* parser/GAPI/Metadata.pm : add support for property
	attribute alteration.
	* sources/Gtk.metadata : rule to mark TextTag.Weight as
	PangoWeight instead of gint. fixes 45214.

svn path=/trunk/gtk-sharp/; revision=15977
2003-07-06 06:33:15 +00:00
Mike Kestner 54a97361e9 2003-07-05 Mike Kestner <mkestner@speakeasy.net>
* api/*-api.xml : regenerated
	* parser/gapi2xml.pl : first pass at trying to expose
	static classes for typeless method aggregation.

svn path=/trunk/gtk-sharp/; revision=15976
2003-07-06 04:08:13 +00:00
Mike Kestner a41824d910 2003-07-04 Mike Kestner <mkestner@speakeasy.net>
* api/*-api.xml : regenerated
	* parser/gapi2xml.pl (addFuncElems): only ignore get_type
	methods for enum types, so that we don't suppress some methods.
	(addPropElem): remove doc-str since we don't autogen docs and
	access types for enum/boxed/flags/obj as an offset from the end
	of the param_spec to avoid problems with split(/,/).

svn path=/trunk/gtk-sharp/; revision=15954
2003-07-05 04:07:48 +00:00
Martin Willemoes Hansen ff5b07b97a * parser/gapi_pp.pl: Added striping of C comments
svn path=/trunk/gtk-sharp/; revision=15639
2003-06-25 21:22:28 +00:00
Mike Kestner e1036250bb 2003-06-14 Mike Kestner <mkestner@speakeasy.net>
* parser/gapi2xml.pl : some whitespace parsing cleanup
	* api/*-api.xml : rerun of the parser.

svn path=/trunk/gtk-sharp/; revision=15383
2003-06-14 16:15:17 +00:00
Rachel Hestilow 037c9e8255 2003-05-27 Rachel Hestilow <rachel@nullenvoid.com>
* sample/ManagedTreeViewDemo.cs: Remove debugging cruft.

	* gconf/.cvsignore, gconf/GConf/.cvsignore,
	gconf/GConf.PropertyEditors/.cvsignore,
	gconf/tools/.cvsignore, sample/gconf/.cvsignore,
	sample/rsvg/.cvsignore: Added.
	* .cvsignore, parser/.cvsignore: Update.

svn path=/trunk/gtk-sharp/; revision=14923
2003-05-27 06:58:42 +00:00
Charles Iliya Krempeaux 5a5da15744 2003-04-25 Charles Iliya Krempeaux <charles@reptile.ca>
* gtk-sharp.pc.in, parser/gapi.pc.in : Both of these
          files were checked in as empty files, before.  Checked
          them in, this time, with something in them.

svn path=/trunk/gtk-sharp/; revision=14005
2003-04-25 20:39:46 +00:00
Charles Iliya Krempeaux b6a0a2b504 2003-04-14 Charles Iliya Krempeaux <charles@reptile.ca>
* gtk-sharp.pc.in : Created to be used for the detection of
          Gtk#.
        * parser/gapi.pc.in : Created to be used for the detection
          of gapi.pl.
        * makefile : Deleted it.  (Actually, renamed it to Makefile.in.)
        * Makefile.in : Created it from the old makefile, and modified it
          to account for gtk-sharp.pc.
        * configure.in : Made it so it will generate gtk-sharp.pc
          from gtk-sharp.pc.in,  parser/gapi.pc from
          parser/gapi.pc.in, and Makefile from Makefile.in.
        * parser/Makefile.in : Modified it to account for parser/gapi.pc.

svn path=/trunk/gtk-sharp/; revision=13846
2003-04-21 15:25:26 +00:00
Alp Toker 7a3264e911 Change Keys to Key
svn path=/trunk/gtk-sharp/; revision=13545
2003-04-12 05:23:55 +00:00
Alp Toker 403ed1ac68 2003-04-12 Alp Toker <alp@atoker.com>
* parser/gen_keysyms: Generates a C# Keys enum from the Gdk headers
        (gdkkeysyms.h)
        * gdk/Keys.cs: The generated Keys

svn path=/trunk/gtk-sharp/; revision=13542
2003-04-12 05:05:00 +00:00
Mike Kestner d743db9340 2003-02-21 Mike Kestner <mkestner@speakeasy.net>
* api/*-api.xml : remove stray enum get_type methods.
	* parser/gapi2xml.pl : ignore get_type methods on enums.

svn path=/trunk/gtk-sharp/; revision=11796
2003-02-21 05:54:32 +00:00
Radek Doulik c9d21b1900 2003-01-22 Radek Doulik <rodo@ximian.com>
* parser/gapi2xml.pl: add comment to .xml files with warning that
	they were auto generated

svn path=/trunk/gtk-sharp/; revision=10814
2003-01-22 13:57:34 +00:00
Martin Baulig 44265207bf 2003-01-12 Martin Baulig <martin@ximian.com>
* parser/gapi2xml.pl (addNameElem): Make this work if the $cname
	doesn't start with $prefix.

svn path=/trunk/gtk-sharp/; revision=10427
2003-01-12 17:45:19 +00:00
Juli Mallett eca30c3078 2002-12-11 Juli Mallett <jmallett@FreeBSD.org>
* gconf/Makefile.in, sample/Makefile.in: Use $(MAKE) not "make."
	* parser/Makefile.in: Use CFLAGS and CPPFLAGS hints from configure,
	and the base dependency CFLAGS.  Fixes case where iconv.h is outside
	of the compiler's default path.

svn path=/trunk/gtk-sharp/; revision=9578
2002-12-11 23:10:31 +00:00
Mike Kestner 3a108845d7 2002-11-21 Mike Kestner <mkestner@speakeasy.net>
* api/*.xml : a few new attrs
	* generator/Parameters.cs : remove redundant ref keywords
	* gtk/ListStore.custom: overload SetColumnTypes
	* gtk/TreeStore.custom: overload SetColumnTypes
	* parser/GAPI/Metadata.pm : allow callback nodes at class level
	* sources/Gtk.metadata : hide ClipboardClearFunc and GetFunc,
	tag types param of SetColumnTypes as array, uncomment needs_ref
	tags on Widget methods to match the current api.xml file

svn path=/trunk/gtk-sharp/; revision=9148
2002-11-22 03:30:18 +00:00
Mike Kestner 2e07bf7e87 2002-10-26 Mike Kestner <mkestner@speakeasy.net>
* api/*.xml : get libgda and libgnomedb metadata setup
	* gconf/*/Makefile.in : patch from MauricioC for -L's and /r's
	* gnomedb/Makefile.in : patch from MauricioC for -L's and /r's
	* generator/ClassBase.cs (ctor): mangle hash names for sigs and props
	* generator/Parameters.cs (MangleName): handle params, null, and ref
	* generator/Parser.cs (ParseNamespace): ignore "hidden" types
	* generator/StructBase.cs (MangleName): handle params, null, and ref
	* glib/Object.cs (Equals): kill, also kill == and !=
	* sources/Gda.metadata : new, make Gda behave without hand edits
	* sources/GnomeDb.metadata : ditto

svn path=/trunk/gtk-sharp/; revision=8577
2002-10-26 08:03:16 +00:00
Rachel Hestilow 301db575de 2002-09-21 Rachel Hestilow <hestilow@ximian.com>
* parser/gapi2xml.pl: Adjust enum regex to allow negative values.

svn path=/trunk/gtk-sharp/; revision=7683
2002-09-21 14:21:15 +00:00
Rachel Hestilow 1f68bc999b 2002-09-07 Rachel Hestilow <hestilow@ximian.com>
* parser/gapi2xml.pl: Add support for "fake struct" opaque types.
	* generator/StructBase.cs: Generate wrapper fields for opaque
	fields as well as pointer fields.
	* api/gdk-symbols.xml: Remove GdkAtom as it is now wrapped.

svn path=/trunk/gtk-sharp/; revision=7311
2002-09-08 01:29:07 +00:00
Juli Mallett 6fea628be5 2002-09-03 Juli Mallett <jmallett@FreeBSD.org>
* parser/Makefile.in: Use $(CC) instead of 'cc'.

svn path=/trunk/gtk-sharp/; revision=7232
2002-09-04 04:31:19 +00:00
Mike Kestner 98cf0e893e Clean out a bunch of cruft from the tree.
svn path=/trunk/gtk-sharp/; revision=6988
2002-08-24 05:32:26 +00:00
Rachel Hestilow 0f652408ed 2002-08-23 Rachel Hestilow <hestilow@ximian.com>
* Applied patch from Robot101 for maintainer-clean, etc.
	Needed for packaging.

svn path=/trunk/gtk-sharp/; revision=6977
2002-08-23 21:22:16 +00:00
Rachel Hestilow eb9fb61ed0 2002-08-20 Rachel Hestilow <hestilow@ximian.com>
* parser/makefile: Rename to Makefile.in, change prefix to @prefix@.
	* configure.in: generate parser/Makefile.

svn path=/trunk/gtk-sharp/; revision=6828
2002-08-20 20:46:14 +00:00
Rachel Hestilow f94279195c 2002-08-20 Rachel Hestilow <hestilow@ximian.com>
* makefile: Add parser to build (for install only)
	* parser/makefile: Add distclean target.

	* parser/gapi.pl: Forgot to add this.
	* api/: Replace APIs with correctly generated ones.

svn path=/trunk/gtk-sharp/; revision=6827
2002-08-20 20:35:42 +00:00
Rachel Hestilow 08d136d203 (cvs shuffling, noted in earlier commit)
svn path=/trunk/gtk-sharp/; revision=6820
2002-08-20 20:00:03 +00:00
Rachel Hestilow e9d1e0b6dc 2002-08-19 Rachel Hestilow <hestilow@ximian.com>
* art/Makefile.in (clean): Change to avoid bugging out on generated/CVS.

	* glib/ObjectManager.cs: Added. Used to be auto-generated, but
	now it can infer names, and relies on per-namespace ObjectManager
	classes to inform it of oddly-named classes.

	* generator/IGeneratable.cs, GenBase.cs: New "DoGenerate" property.
	* generator/*Gen.cs: Honor DoGenerate.
	* generator/CodeGenerator.cs: Support including dependency files
	which will not be generated.
	* generator/ObjectGen.cs: Generate mapping file per-namespace, as one
	that calls back to the one in glib. Only generate if the name does
	not follow the normal conventions, otherwise, GtkSharp.ObjectManager
	can infer the name.
	* generator/Parser.cs: Accept 'generate' flag to pass on to the
	IGeneratables. Parse a new toplevel element, "symbol", which adds
	a type to the SymbolTable (instead of hard-coding it).
	* generator/SignalHandler.cs: Do not optimize signal handler creation,
   instead creating them in their own namespaces. Do not generate
	if the calling Signal told us not to.
	* generator/Signal.cs: Do not generate handlers if container's DoGenerate
	is false. Adjust to the marshaller name being in a sub-namespace.
	* generator/SymbolTable.cs (AddSimpleType, AddManualType): Used
	to add simple and manually wrapped types at runtime instead of
	compile-time.
	(FromNative): Remove hard-coded cases for manually wrapped types, use
	a generic case instead.

	* api: Added. Move api files and generation targets here.
	* source: Added. Move source parsing here.

	* generator/makefile: Move actual generation to api/.
	* glib/Makefile.in: Remove generated/* target.
	* glue/Makefile.am: Fix to include canvas-marshal. Move canvas stuff
	to GNOME target.

	* gnome/CanvasProxy.cs: Update to work with SignalHandlers being
	namespace-specific.

	* parser/Metadata.pm: Moved to GAPI/Metadata.pm, renamed, etc.
	* parser/gapi2xml.pl: Use GAPI::Metadata.
	* parser/makefile: Install scripts, remove source parse build target.
	Rename formatXML to gapi_format_xml.

svn path=/trunk/gtk-sharp/; revision=6818
2002-08-20 19:56:18 +00:00
Duncan Mak 074dcf2d4a 2002-08-15 Duncan Mak <duncan@ximian.com>
* generator/gtkapi.xml: New Libart stuff.

	* parser/build.pl:
	* gnome/Makefile.in: Added reference to atk-sharp.dll

	* generator/Parameters.cs (MangleName): Added cases for 'in' and 'out'.

svn path=/trunk/gtk-sharp/; revision=6651
2002-08-15 16:44:41 +00:00
Rachel Hestilow e6ea0015b5 2002-08-12 Rachel Hestilow <hestilow@ximian.com>
[ Patch from Ricardo Fernandez Pascual <rfp1@ono.com> for
	  libglade support (slightly modified) ]

	* configure.in: Conditionally compile glade support.
	* makefile: Add glade directory.
	* glade/: Added.
	* sample/makefile.in: Add (conditional) glade example.
	* sample/GladeViewer.cs: Added.
	* glue/gladexml.c: Added.
	* glue/Makefile.am: Updated.

	* parser/build.pl: Parse libglade-2.0.0.
	* parser/README: Update requirements.

2002-08-12  Rachel Hestilow  <hestilow@ximian.com>

   * parser/gapi_pp.pl: Handle "typedef struct {...}" construct.

	* glue/canvaspoints.c: Added.
	* glue/Makefile.am: Updated.

 	* gnome/CanvasPoints.custom: Added. (Doesn't seem to work right yet,
	looking into this.)

svn path=/trunk/gtk-sharp/; revision=6601
2002-08-12 19:14:44 +00:00
Mike Kestner 8896672938 2002-08-09 Kristian Rietveld <kris@gtk.org>
* parser/Gtk.metadata: add a bunch of out arg rules, add
       a vararg rule for the ListStore constructor, change method names of
       TreeModel's signal emission methods, remove opaque rule of
       GtkTreeIter, remove null_ok rules of TreeModel.IterNChildren
       and TreeModel.IterNthChild.

       * parser/Metadata.pm: add some code to be able to filter on
       parameter names.

       * generator/Method.cs: a method with accessor args and a non-void
       return value cannot be written as property.

       * sample/Makefile.in, sample/TreeViewDemo.cs: add a simple TreeView
       demo app.

       * gtk/ListStore.custom, gtk/TreeModel.custom, gtk/TreeModelSort.custom,
       gtk/TreeStore.custom, gtk/TreeView.custom: customizations.

svn path=/trunk/gtk-sharp/; revision=6576
2002-08-10 19:15:58 +00:00
Mike Kestner 903349cd37 2002-08-08 Mike Kestner <mkestner@speakeasy.net>
* generator/Method.cs : s/GetType/GetGType. Don't generated static
	  methods for interfaces.
	* glib/Object.cs : add GType prop
	* gnome/*.custom : s/Type/GType
	* parser/Gtk.metadata : rule to make TreeIter opaque
	* parser/gapi2xml.pl : handle interface methods properly
	* sample/Fifteen.cs : s/Type/GType

svn path=/trunk/gtk-sharp/; revision=6556
2002-08-09 03:56:27 +00:00
Rachel Hestilow 034534a606 2002-08-05 Rachel Hestilow <hestilow@ximian.com>
* parser/Gnome.metadata: Patch from duncan for
	bug #28553 (canvas item event handler rename).

svn path=/trunk/gtk-sharp/; revision=6447
2002-08-05 22:42:58 +00:00
Rachel Hestilow 54838fec29 2002-08-03 Rachel Hestilow <hestilow@ximian.com>
* generator/Method.cs: Support libname overrides. Call parms.Finish.
	* generator/Parameters.cs: New method parms.Finish. Generate a temporary
	holder variable for enum out parameters.
	* generator/Property.cs: Pass a boolean to EnumWrapper indicating.
	if these are flags.
	* generator/StructBase.cs: Disable array marshalling (it is
	broken in mono.)
	* generator/SymbolTable.cs: Add methods IsEnumFlags.

	* glib/EnumWrapper.cs: New bool "flags".
	* glib/Value.cs: Call flags variant on GValue for enum props, if needed.

	* glue/Makefile.am, glue/style.c, glue/widget.c: Add widget
	and style field accessor methods.

	* gtk/Style.custom, Widget.custom: Added.

	* parser/README: Update requirements (needed for pixbuf drawable hack)
	* parser/Gdk.metadata: Fix library for pixbuf methods in gdk.
	Add Window.GetPointer "out" parameters.
	* parser/gapi2xml.pl: Remap gdk_draw_* methods to Drawable.

	* sample/Makefile.in: Add size and scribble samples.
	* sample/Scribble.cs: Added.

svn path=/trunk/gtk-sharp/; revision=6387
2002-08-03 22:24:37 +00:00
Rachel Hestilow 7648593a67 2002-08-02 Rachel Hestilow <hestilow@ximian.com>
[ Mike, this is everything I wanted in for the release. ]

	* generator/StructBase.cs: Generate field accessors for wrapped
	types (opaque, object, and structs/boxed). Bitfields, unions, and
	arrays are still unsupported for accessors, and are probably marshalling
	incorrectly. But this is enough to get events working (see example
	in sample/GnomeHelloWorld.cs).

	* parser/Metadata.pm: Support a "delete" directive, and set metadata
	on structs and boxed (previously was only checking objects and interfaces).

	* parser/Gdk.metadata: Delete bogus entries GdkWindowObject and
	GdkPixmapObject (more evil drawable stuff.)

	* sample/GnomeHelloWorld.cs: Show an example of how to use marshalled
	events, in our selection callback.

svn path=/trunk/gtk-sharp/; revision=6370
2002-08-02 22:35:23 +00:00
Rachel Hestilow 967e3e9c5a 2002-07-30 Rachel Hestilow <hestilow@ximian.com>
* generator/ClassBase.cs: Change hasDefaultConstructor to protected,
	adjust now that it is an attr and not a subnode. Also add virtual
	property AssignToName (for ctors).

	* generator/Ctor.cs: Add property ForceStatic.
	(Generate): Optimize return code a bit for the static case.

	* generator/Method.cs: Assign to a "raw_ret" pointer before calling
	FromNativeReturn.

	* generator/Parameters.cs: Change "out ref" to "out", not "ref".

	* generator/Property.cs: Fix to work correctly with all object and
	struct types (mostly just some if-cases added).

	* generator/SignalHandler.cs: Remove args_type and argfields (unused).
	(Generate): Initialize struct if necessary.

	* generator/StructBase.cs: Massive reworking to support methods, ctors,
	etc.

	* generator/SymbolTable.cs: Add GdkAtom and gconstpointer simple types.

	* glib/Boxed.cs: Accept both IntPtr and object ctors. Add access for both.

	* glib/Opaque.cs: Fix copy/pasted copyright notice, remove data and event
	fields. Fix docs.

	* glib/Value.cs: Work correctly with boxed properties.

	* gnome/Modules.cs: Use new struct ctors.

	* gnome/Program.custom: Remove Get, this is being generated now.

	* parser/Gdk.metadata: Fix the drawable classes to inherit correctly.

	* parser/Metadata.pm: Change per-class attributes to actually be
	attributes.

	* parser/Gtk.metadata: Add a dummy attribute value for disabledefaultctor.

	* parser/gapi2xml.pl: Add hacks for the (broken) Drawable and Bitmap
	typedefs.

	* sample/test/TestColorSelection.cs: Display color string in hex format,
	update to use IsNull instead of == null, and size dialog to look pretty.

	* sample/Size.cs: Added.

svn path=/trunk/gtk-sharp/; revision=6264
2002-07-30 23:02:12 +00:00