Commit graph

35 commits

Author SHA1 Message Date
Mike Kestner ae5ab001be 2004-01-29 Mike Kestner <mkestner@ximian.com>
* glib/time_t_CustomMarshaler.cs : new custom marshaler form time_t.
	* glue/time_t.c : glue for time_t.
	* glue/Makefile.am : add time_t.c
	* glue/makefile.win32 : ditto

svn path=/trunk/gtk-sharp/; revision=22595
2004-01-29 21:20:59 +00:00
Mike Kestner 6ec923833e 2004-01-13 Mike Kestner <mkestner@ximian.com>
* generator/Signal.cs : use ValueArray to assemble parms arg for
	g_signal_chain_from_overriden call.  Initialize retval GValue for
	above.
	* glib/Object.cs : g_signal_chain_from_overridden parms are IntPtrs.
	* glib/TypeConverter.cs : handle unboxed ValueTypes.
	* glib/Value.cs : handle unboxed struct types.  add ctor for init'd
	unset Values.
	* glib/ValueArray.cs : new binding for GValueArray used by VMs.
	* glue/valuearray.c : field accessors
	* glue/Makefile.am : add new glue file
	* glue/makefile.win32 : add new glue file
	[Fixes #52680]

svn path=/trunk/gtk-sharp/; revision=22069
2004-01-14 18:05:50 +00:00
Mike Kestner 9f3cd6ae80 2003-12-26 Mike Kestner <mkestner@ximian.com>
* glue/selectiondata.c : new glue to make SelectionData opaque
	* glue/Makefile.am : add file
	* glue/makefile.win32 : add file
	* gtk/Gtk.metadata : mark SelectionData opaque, unhide Set method
	* gtk/SelectionData.custom : invoke glue methods for opaque fields.
	* gtk/gtk-api.xml : regen
	* sample/TestDnd.cs : update to new SelectionData API.

svn path=/trunk/gtk-sharp/; revision=21502
2003-12-26 15:14:07 +00:00
Ettore Perazzoli 7a10147c5c * sample/TestDnd.cs: New.
* gtk/TargetEntry.custom: New.

* glue/dragcontext.c: New.

* glib/Object.cs: New public property TypeName in class Object.

* gdk/DragContext.custom: New.

svn path=/trunk/gtk-sharp/; revision=20754
2003-12-03 20:23:25 +00:00
Mike Kestner 912980c396 2003-11-04 Mike Kestner <mkestner@ximian.com>
* glib/Value.cs : add set to Val prop
	* glue/Makefile.am : build nodestore.c
	* glue/makefile.win32 : link nodestore.o
	* glue/nodestore.c : new, glue for TreeModel implementation
	* gtk/NodeStore.cs : new tree store implementation
	* gtk/ITreeNode.cs : new interface for nodestore node types
	* gtk/TreeNode.cs : abstract class for deriving nodestore nodes
	* gtk/TreeNodeAttribute.cs : tree node marking attr
	* gtk/TreeNodeValueAttribute.cs : node column marking attr
	* gtk/TreeView.custom : add ctor(NodeStore)

svn path=/trunk/gtk-sharp/; revision=19630
2003-11-04 23:20:15 +00:00
Mike Kestner 7cf6671bce 2003-10-30 Ken Foster <kenfoster@tampabay.rr.com>
* glue/button.c: initial creating of glue file for GdkButton
	* glue/Makefile.am: added button.c to glue make
	* glue/makefile.win32: added button.c to win32 glue make
	* gtk/Button.custom: expose in_button GdkButton member

svn path=/trunk/gtk-sharp/; revision=19486
2003-10-30 18:19:59 +00:00
Alp Toker df9c3bc1cc 2003-09-06 Alp Toker <alp@atoker.com>
* api/gdk-api.xml:
        * sources/Gdk.metadata: out params for Gdk.Window.GetInternalPaintInfo
        * glade/makefile.win32: new win32 makefile
        * glue/win32dll.c:
        * glue/makefile.win32: Patch to remove cygwin1.dll dependency on win32
        from Todd Berman <tberman@gentoo.org>
        * glue/makefile.win32: Update list of sources
        * glue/Makefile.am: Remind people to keep makefile.win32 up to date

svn path=/trunk/gtk-sharp/; revision=17945
2003-09-06 18:11:13 +00:00
Mike Kestner de34331936 2003-07-11 Mike Kestner <mkestner@speakeasy.net>
* gdk/Selection.custom : add static fields for the  primary,
	secondary, and clipboard and clipboard selection Gdk.Atoms.
	* glue/Makefile.am : add selection.c
	* glue/selection.c : add glue to get the atoms.
	* gtk/TextBuffer.custom : add a PasteClipboard overload for
	pasting to the cursor location.

svn path=/trunk/gtk-sharp/; revision=16130
2003-07-12 04:09:00 +00:00
Ettore Perazzoli 6f04d85cee * gtk/Layout.custom: New file, adding the Layout::BinWindow
property.

* glue/layout.c: New file, adding glue for getting the bin_window
of a GtkLayout.

svn path=/trunk/gtk-sharp/; revision=16048
2003-07-09 03:59:28 +00:00
Peter Williams 0b1978da09 2003-03-01 Peter Williams <peterw@ximian.com>
* glue/Makefile.am (libgtksharpglue_la_LIBADD): Change this to
	BASE_DEPENDENCIES_LIBS

svn path=/trunk/gtk-sharp/; revision=12098
2003-03-01 23:04:36 +00:00
Peter Williams 5eea705bc6 2003-02-07 Peter Williams <peterw@ximian.com>
* glue/Makefile.am (libgtksharpglue_la_LIBADD): Set this so
	that people linking to libgtksharpglue.so get their
	dependencies.

	(I've had this patch sitting around forever, I think it got
	approved, and it certainly appears correct.)

svn path=/trunk/gtk-sharp/; revision=11329
2003-02-07 20:01:22 +00:00
Robert McQueen 5c87903756 2002-12-22 Robert McQueen <robot101@debian.org>
* makefile: when doing distclean, attempt distclean on all the
        C# subdirs too
        * gconf/Makefile.in: added distclean target to rm the Makefiles
        in the subdirs of gconf/
        * glue/Makefile.am: build libgtksharpglue as an unversioned
        module to avoid so -> so.0 -> so.0.0 symlink mess
        * */Makefile.in: call mkinstalldirs before installing any files
        so that subdirs can be installed seperately or in any sequence
        (eg binding dirs before native dirs)

svn path=/trunk/gtk-sharp/; revision=9828
2002-12-22 05:08:52 +00:00
Vladimir Vukicevic 9ad6d1b6a4 * generator/StructBase.cs: create a Zero static member for
use when the IntPtr is NULL.

* generator/SignalHandler.cs, generator/CallbackGen.cs: removed
call to Initialize for structs

* gtk/Clipboard.custom, gtk/ClipboardClearFunc.cs,
gtk/ClipboardGetFunc.cs,
gtk/GtkSharp.GtkClipboardClearFuncNative.cs,
gtk/GtkSharp.ClipboardGetFuncNative.cs, SelectionData.custom:
Hand-wrapped selection handling stuff, along with relevant
signals and the like.

* gnome/voidObjectAffineSVPintSignal.cs: removed Initialize
for hand-wrapped signal

* sample/GnomeHelloWorld.cs, sample/Size.cs: compare against
.Zero instead of using IsNull

* api/gtk-api.xml, sources/Gtk.metadata: metadata updates for
hiding some manually-wrapped stuff

svn path=/trunk/gtk-sharp/; revision=8912
2002-11-10 10:03:51 +00:00
Miguel de Icaza 0c6b67c26b Patch from Pablo Baena
svn path=/trunk/gtk-sharp/; revision=8381
2002-10-19 05:53:37 +00:00
Mike Kestner ab081f8358 2002-09-04 Mike Kestner <mkestner@speakeasy.net>
* generator/ObjectGen.cs : generate dtors.
	* glib/Object.cs : Implement IDisposable. Add a new DisposeNative
	method. Implement default dtor.
	* glue/object.c : new gtksharp_object_unref_if_floating method.
	* gtk/Object.custom : override DisposeNative to check float bit.

svn path=/trunk/gtk-sharp/; revision=7235
2002-09-04 05:25:58 +00:00
Rachel Hestilow c8d090f62f 2002-08-31 Rachel Hestilow <hestilow@ximian.com>
Proper GList, GSList support. Read-only for now.

	* glue/list.c: Added.
	* glue/Makefile.am: Add list.c
	* glue/type.c: Add function gtksharp_is_object.

	* glib/ListBase.cs, List.cs: Added.
	* glib/SList.cs: Inherit from ListBase.
	* glib/Object.cs: Add static method "IsObject".

	* generator/Method.cs: Pass on element_type to constructor
	if specified.
	* generator/SymbolTable.cs: Move GList to manual types.

	* sample/GladeViewer.cs: Remove list hacks.

	* sources/Gnome.metadata: Specify element types for
	CanvasPathDef.Split and IconList.GetSelection. Rename
	CanvasPathDef *to methods to properly capitalized *To.
	* sources/Gtk.metadata: Hide Widget.ListAccelClosures until
	GClosure is handled properly.
	* sources/Pango.metadata: Added.

	* sample/test/TestToolbar.cs: Compile with recent delegate changes.

svn path=/trunk/gtk-sharp/; revision=7166
2002-09-01 04:46:38 +00:00
Rachel Hestilow 5cb683f3ba 2002-08-23 Rachel Hestilow <hestilow@ximian.com>
* glue/Makefile.am: Fix # terminators.

svn path=/trunk/gtk-sharp/; revision=6978
2002-08-23 22:14:38 +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 40dd8134e3 2002-08-17 Duncan Mak <duncan@ximian.com>
* glue/canvas-proxy.c:
	* glue/canvas-proxy.h: New files. Glue for subclassing CanvasItem
	from C#.

	* glue/canvas-proxy-marshal.c:
	* glue/canvas-proxy-marshal.h:
	* glue/canvas-proxy-marshal.list: Added to handle marshaling
	signals used by CanvasProxy.

svn path=/trunk/gtk-sharp/; revision=6682
2002-08-16 17:14:53 +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
Miguel de Icaza a5d2c9f567 2002-08-11 Miguel de Icaza <miguel@ximian.com>
* glub/adjustment.c: C-side of the Adjustment glue.

	* gtk/Adjustment.custom: Add new SetBounds function that allows us
	to change the adjustment after it has been created.

svn path=/trunk/gtk-sharp/; revision=6587
2002-08-11 22:48:00 +00:00
Mike Kestner 66c0ec1d43 2002-08-07 Mike Kestner <mkestner@speakeasy.net>
* generator/CodeGenerator.cs : call ObjectGen.GenerateMapper
	* generator/Method.cs : Remove the if null workaround
	* generator/ObjectGen.cs : build a hash of object types.
	(GenerateMapper): generate the GtkSharp.ObjectManager class.
	* glib/Object.cs : use ObjectManager.CreateObject.
	* glue/type.c : helper for typename lookup.

svn path=/trunk/gtk-sharp/; revision=6526
2002-08-08 04:48:41 +00:00
Duncan Mak bfb00c4e7a 2002-08-06 Duncan Mak <duncan@ximian.com>
* gnome/CanvasItem.custom: Added accessor to get the 'canvas' field.

svn path=/trunk/gtk-sharp/; revision=6467
2002-08-06 15:52:32 +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 4d92d54b3f 2002-07-25 Rachel Hestilow <hestilow@ximian.com>
[about 60% of the marshalling patch that I lost.
	 The rest to come tomorrow.]

	* generator/BoxedGen.cs, StructGen.cs: Move most of this to StructBase,
	delete large chunks duplicated from ClassBase.

	* generator/IGeneratable.cs: Add MarshalReturnType, FromNativeReturn.

	* generator/ClassBase.cs: Move ctor stuff here. Add a CallByName
	overload with no parameters for the "self" reference.

	* generator/EnumGen.cs, CallbackGen.cs: Implement new MarshalReturnType,
	  FromNativeReturn.

   * generator/Method.cs: Use container_type.MarshalType, CallByName, and
	  SymbolTable.FromNativeReturn when generating call and import sigs.

	* generator/OpaqueGen.cs: Added.

	* generator/Property.cs: Handle boxed and opaques differently.

	* generator/SymbolTable.cs: Update for the opaque stuff and the new Return
	methods. Also change GetClassGen to simply call the as operator.

	* glib/Boxed.cs: Update for struct usage -- this is now a wrapper for
	  the purposes of using with Value.

   * glib/Opaque.cs: Added. New base class for opaque structs.

	* glue/textiter.c, gtk/TextIter.custom: Remove.

	* gnome/Program.cs: Update for new struct marshalling.

	* parser/Metadata.pm: Use our own getChildrenByTagName.

	* parser/README: Update for new requirements (was out of sync with
	  build.pl)

	* parser/gapi2xml.pl: Hide struct like const in field elements.

	* parser/gapi_pp.pl: Handle embedded union fields (poorly).

	* sample/test/TestColorSelection.cs: Comment out null color tests
     for now.

svn path=/trunk/gtk-sharp/; revision=6186
2002-07-26 06:08:52 +00:00
Duncan Mak ef47320ee2 2002-07-19 Duncan Mak <duncan@ximian.com>
* gtk/Paned.custom:
	* glue/paned.c: Glue code for getting child1 and child2 out from a Gtk.Paned.

	* glue/Makefile.am: Add paned.c

svn path=/trunk/gtk-sharp/; revision=5906
2002-07-19 07:54:33 +00:00
Duncan Mak c5f678926c 2002-07-11 Duncan Mak <duncan@ximian.com>
* glue/Makefile.am: Added dialog.c and colorseldialog.c

	* glue/dialog.c:
	* gtk/Dialog.custom: C# glue for getting more fields from a GtkDialog.

	* glue/colorseldialog.c:
	* gtk/ColorSelectionDialog.custom: C# glue for getting more fields
	from a ColorSelectionDialog.

svn path=/trunk/gtk-sharp/; revision=5699
2002-07-11 13:18:36 +00:00
Mike Kestner a31a206d61 2002-07-08 Mike Kestner <mkestner@speakeasy.net>
* glue/Makefile.in : s/BASE_SOURCES/BASESOURCES
	* parser/gapi_pp.pl : handle nested #if/#endif in ignored #if's
	* parser/makefile : make gtkapi.xml depend on gapi*.pl

svn path=/trunk/gtk-sharp/; revision=5649
2002-07-08 14:52:20 +00:00
Rachel Hestilow add44c6965 2002-07-05 Rachel Hestilow <hestilow@ximian.com>
* glue/Makefile.am: Make this work cleanly, with all automake.

svn path=/trunk/gtk-sharp/; revision=5613
2002-07-06 00:51:45 +00:00
Rachel Hestilow 9693ee998e 2002-07-05 Rachel Hestilow <hestilow@ximian.com>
* configure.in: Conditionally compile Gnome.

	* parser/gapi_pp.pl: Handle line breaks in function declarations.
	* parser/gapi2xml.pl: Handle non-literals in property definitions.

	* glue/program.c: Added.
	* glue/Makefile.am: Add program.c (conditionally compiled).
	Update INCLUDES.

	* gnome/Makefile.in: Conditionally compile this.
	* gnome/Program.custom, Modules.cs: Added.

	* samples/Makefile.in: Conditionally compile gnome example.
	* samples/GnomeHelloWorld.cs: Use Gnome.Program.

svn path=/trunk/gtk-sharp/; revision=5609
2002-07-05 20:22:21 +00:00
Rachel Hestilow 02c9fb725c 2002-06-26 Rachel Hestilow <hestilow@ximian.com>
* configure.in, makefile, makefile.win32: add gnome.

	* doc/index.html, netdoc.xsl: Add gnome.

	* gdk/Event.cs: New manual wrap for GdkEvent.

	* generator/ClassBase.cs: Add methods GetProperty,
	GetPropertyRecursively, GetMethodRecursively.
	Move Parent property here from ObjectGen.cs. Pass this pointer
	into Property.

	* generator/Ctor.cs: Generate docs.

	* generator/Method.cs, Property.cs: Tag method as "new" if a
	Method/Property with the same name is found in the class hierarchy.

	* generator/SignalHandler.cs: Correctly wrap complex signal argument
	types. Add gnome directory.

	* generator/SymbolTable.cs: Add manually wrapped types hash
	(contains GLib.GSList and Gdk.Event). Add method IsManuallyWrapped.

	* glib/SList.cs: Add constructor from IntPtr.

	* glue/slist.c, glue/event.c: Added (field accessor glue).

	* glue/Makefile.am: Update.

	* parser/Gtk.metadata: Add new signal renames for new signals
	exposed by GdkEvent changes.

	* parser/README, parser/build.pl: Add libgnome, libgnomecanvas,
	libgnomeui.

	* parser/gapi2xml.pl: Handle literal-length array parameters,
	and NULL property doc strings.

	* sample/: Add new test GnomeHelloWorld.cs.

	* gnome/: Added.

	* parser/Gnome.metadata: Added.

svn path=/trunk/gtk-sharp/; revision=5461
2002-06-26 08:36:05 +00:00
Duncan Mak b10fe35ac0 2002-06-24 Duncan Mak <duncan@ximian.com>
* glue/fileselection.c: New file, defines accessor functions to
	fields inside a GtkFileSelection.

	* gtk/FileSelection.custom: C# glue that makes use of new accessor
	functions defined in fileselection.c.

	* glue/Makefile.am: Added fileselection.c

svn path=/trunk/gtk-sharp/; revision=5433
2002-06-24 20:38:48 +00:00
Mike Kestner dbfe6207a7 2002-06-20 Mike Kestner <mkestner@speakeasy.net>
* generator/Parameters.cs : GError handling overhaul
	* generator/SymbolTable.cs : map GError to IntPtr
	* glib/GException.cs : Refactor to use glue.
	* glue/Makefile.am : add the error.c file.
	* glue/error.c : glue for error message string access
	* gtk/makefile.win32 : ref the gdk-imaging-sharp assembly

svn path=/trunk/gtk-sharp/; revision=5351
2002-06-20 01:45:13 +00:00
Rachel Hestilow eea6465cf2 2002-06-09 Rachel Hestilow <hestilow@ximian.com>
* generator/GenBase.cs: new method AppendCustom, moved from ObjectGen.
	* generator/BoxedGen.cs, ObjectGen.cs, StructGen.cs:
	Call AppendCustom in Generate ();
	* generator/Method.cs, Parameters.cs: Add support for "out"
	parameters. Additionally, output an accessor instead of a
	regular method if it is an accessor-style function (ie GetStartIter).
	* generator/Property.cs: Add additional cast to Boxed, if necessary.
	* glue/textiter.c: New constructor for GtkTextIter.
	* glue/Makefile.am: Add textiter.c, build with Gtk+ cflags.
	* configure.in: Check for Gtk+ cflags.
	* parser/Metadata.pm, Gtk.metadata: Added.
	* parser/gapi2xml.pl: Call Metadata::fixup on the document.
	Also work around gtk's screwy boxed type name registration
	(GtkFoo -> GtkTypeFoo).
	* gtk/TextIter.custom: Added.

svn path=/trunk/gtk-sharp/; revision=5205
2002-06-10 12:34:09 +00:00
Mike Kestner fa98aa165a 2002-04-25 Mike Kestner <mkestner@speakeasy.net>
* autogen.sh : simple config for the glue build
	* configure.in : simple config for the glue build
	* makefile : add glue dir to build
	* glib/SList.cs : Fix some leakage.
	* glue/value.c : a helper function for heap alloc of GValues
	* glue/Makefile.am : build for libgtksharpglue

svn path=/trunk/gtk-sharp/; revision=4042
2002-04-25 09:17:54 +00:00