* generator/CallbackGen.cs : don't create native delegates for nulls.
* generator/ObjectGen.cs : revamp the ObjectManager code.
* glib/Object.cs : use new ObjectManager.RegisterType overload.
* glib/ObjectManager.cs : rewrite to kill the lameass LoadWithPartial
hack and keep a GType to Type mapping for quicker lookup/activation.
svn path=/trunk/gtk-sharp/; revision=42241
* gapi-cdecl-insert : a little perl script to insert modopts
* Makefile.am : dist the new script.
for cdecl callback delegates on win32.
* glade/makefile.win32 : use gapi-cdecl-insert
* glade/XML.custom : add [GLib.CDeclCallback] to RawXMLConnectFunc.
* glib/makefile.win32 : use gapi-cdecl-insert
* glib/CDeclCallbackAttribute.cs : new attr to tag delegates with
that will be invoked from native code. We have to mangle the il
with a modopt otherwise they are stdcall'd.
* glib/ManagedValue.cs : add [GLib.CDeclCallback] to Copy/Free.
switch to using GCHandles instead of the current IntPtr hack.
svn path=/trunk/gtk-sharp/; revision=42168
* glib/Object.cs: use IsDefined to check for ClassInitializer
attribute, fixes a warning and is supposedly better for performance
svn path=/trunk/gtk-sharp/; revision=41839
* gtk/ITreeNode.cs: add a "child" arg to TreeNodeRemovedHandler
* gtk/TreeNode.cs (RemoveChild, OnChildRemoved): update for that
* gtk/NodeStore.cs (child_deleted_cb): use the passed-in child;
GetNodeAtPath won't work because the parent node already removed
the child from its list
svn path=/trunk/gtk-sharp/; revision=41837
* gtk/NodeStore.cs (AddNode): likewise
(AddNode, child_added_cb): when adding a node, recursively connect
to the node signals on its children
(RemoveNode, child_deleted_cb): when removing a node, recursively
remove its children from node_hash.
svn path=/trunk/gtk-sharp/; revision=41805
* glade/Glade.metadata : mark the XMLCustomWidgetHandler string params
const-gchar*. Wonder how many of these are gonna screw us?
svn path=/trunk/gtk-sharp/; revision=41745
* glib/Makefile.am : add new file.
* glib/Object.cs : add protected PersistentData hash to hold data
across GC cycles.
* glib/WeakObject.cs : new object to hold managed refs weakly against
the native object.
* gtk/ListStore.custom : hold refs for DefaultSortFuncs.
* gtk/TreeModelSort.custom : hold refs for DefaultSortFuncs.
* gtk/TreeStore.custom : hold refs for DefaultSortFuncs.
svn path=/trunk/gtk-sharp/; revision=41740
* generator/CallbackGen.cs : don't derive Wrappers from DelegateWrapper
any more. It leaks delegates like crazy. We effectively now use call
scope as the default for delegate parameters.
* generator/MethodBody.cs : use new simpler Wrapper ctor.
* glib/DelegateWrapper.cs : mark the ctor obsolete so people know to
update any manually coded wrappers out there.
* */*.custom : use new simpler Callback Wrapper ctors.
svn path=/trunk/gtk-sharp/; revision=41738
* glib/Marshaller.cs : don't use g_utf8_strlen to determine the byte
count to be copied, it returns chars, not bytes.
* glib/glue/unichar.c : implement a quick and dirty strlen glue func.
svn path=/trunk/gtk-sharp/; revision=41661
* */*.cs : scrub for StringToPtrAnsi and string usage in DllImports.
* */*.custom : begin the scrub here too.
* generator/ConstStringGen.cs : implement IManualMarshaler and move to
100% IntPtr marshaling.
* generator/Ctor.cs : call Body.Finish too.
* generator/IManualMarshaler.cs : new interface for generatables that
marshal manually and need cleanup.
* generator/Makefile.am : new file.
* generator/MethodBody.cs : use IManualMarshaler if applicable.
svn path=/trunk/gtk-sharp/; revision=41579
* generator/MethodBody.cs : remove an unused var.
* generator/ReturnValue.cs : privatize a couple props. Refactor the
SymbolTable lookup logic to be generatable based.
svn path=/trunk/gtk-sharp/; revision=41528
* generator/ImportSignature.cs : out param handling fix.
* generator/Makefile.am : kill StringGen.cs.
* generator/MethodBody.cs : simplify out param handling.
* generator/StringGen.cs : kill it, now using MarshalGen.
* generator/SymbolTable.cs : make non-const strings use an appropriate
MarshalGen. Non-const strings are now correctly marshaled as Utf8.
* glib/Marshaller.cs : add some utf8-fu for strdup/free marshaling.
Add a method to alloc/copy structs to native memory, unused yet.
* gtk/Gtk.metadata : partially fix a broken delegate.
svn path=/trunk/gtk-sharp/; revision=41459
* generator/ClassBase.cs : use "as" instead of a cast in FromNative.
* generator/Method.cs : remove the if/else checks for Object retvals.
* glib/Object.cs : return null immediately for NULL in GetObject.
svn path=/trunk/gtk-sharp/; revision=41409
* generator/ClassBase.cs : add null checking to CallByName. No sense
manually adding this for the ones that need it. Better to have g_criticals
then NullRefExceptions anyway.
* generator/MethodBody.cs : simplify out handle generation.
[A babystep toward #86620]
svn path=/trunk/gtk-sharp/; revision=41408
* glib/Idle.cs : add locking on the source_handlers.
* glib/Source.cs : add locking on the source_handlers.
* glib/Timeout.cs : add locking on the source_handlers.
svn path=/trunk/gtk-sharp/; revision=41290
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
valid type (or is hidden).
* generator/StructBase.cs (Validate): new, to check that all of
the struct fields have valid types
* generator/BoxedGen.cs (Generate):
* generator/StructGen.cs: (Generate): Call Validate() and bail out
if it fails; it's no good to generate a struct with the wrong
layout.
* gdk/gdk-symbols.xml: add a line for GdkKey -> Gdk.Key. (There's
no actual C type GdkKey, but we can use metadata to change uints
to GdkKeys, which will then become Gdk.Keys.)
* gtk/AccelKey.custom: remove the "Key" field (which was being
added in the wrong place in the struct), since it's properly
generated now.
* gtk/Gtk.metadata: Fix the line that renames AccelKey.AccelKey
to AccelKey.Key
* gnomevfs/Gnomevfs.metadata: hide the (mis-parsed) "action" field
in MimeAction, leaving the struct in the same broken state it was
in with the old generator code
svn path=/trunk/gtk-sharp/; revision=41104
ancestor that also defines child properties, make its child
properties class be a subclass of that ancestor's child properties
class. (Eg, make Gtk.ButtonBox.ButtonBoxChild be a subclass of
Gtk.Box.BoxChild.)
svn path=/trunk/gtk-sharp/; revision=40720
they're generated wrong, and StyleGet to avoid an ellipsis
warning. (Also hide the deprecated ellipsis method "Set".)
* gtk/Widget.custom (StyleGetProperty): implement manually, a la
Gtk.Container.ChildGetProperty.
* gtk/glue/widget.c (gtksharp_widget_style_get_property): glue for that
svn path=/trunk/gtk-sharp/; revision=40481
* gtk/Widget.custom : use a static method for the ParentSet hack
so we don't leak objects because the delegate holds an object ref.
svn path=/trunk/gtk-sharp/; revision=40346
2005-02-07 Ben Maurer <bmaurer@ximian.com>
* en/Gdk/Point.xml, en/Gdk/Rectangle.xml: Document new
members.
In .:
2005-02-07 Ben Maurer <bmaurer@ximian.com>
* gdk/Point.custom, gdk/Rectangle.custom: misc. new apis to make
this more like the S.D structs.
svn path=/trunk/gtk-sharp/; revision=40282
* glib/ObjectManager.cs (GetValidParentType): return null if
G_TYPE_INVALID is returned from glue. [Fixes#72150]
svn path=/trunk/gtk-sharp/; revision=40063
* generator/Makefile.am : remove source file.
* generator/Signal.cs : generate marshaling callbacks and use new
GLib.Signal marshaling class for events.
* generator/SignalHandler.cs : kill. byebye SignalCallback subclasses.
* glib/Makefile.am : update source files.
* glib/GLibSharp.voidObjectIntPtrSignal.cs : kill.
* glib/Object.cs : mark the old Before/After props Obsolete. Use
GLib.Signal for the notify prop methods.
* glib/Signal.cs : new signal marshaling class. It manages all the
ConnectBefore/After stuff internally and connects itself to the native
object using GCHandles and DestroyNotify lifecycle management.
* glib/SignalCallback.cs : mark Obsolete.
[Fixes#72018 and #69847]
svn path=/trunk/gtk-sharp/; revision=40007
* gtk/FileChooserDialog.custom : move backend to first param to
avoid conflicts with button names in overloaded ctor.
svn path=/trunk/gtk-sharp/; revision=39856
* generator/ReturnValue.cs : use ToNativeReturnType for ToNativeType
instead of MarshalType.
* generator/Signal.cs : deal with boxed return values. beef up return
handling in the default handler generation code.
* generator/SignalHandler.cs : use ToNative return types for native
callbacks. Remove redundant casting/conversion in callback impl.
[Fixes#71899]
svn path=/trunk/gtk-sharp/; revision=39724
subscribe to the "notify" signal (with property details). [#71684]
* glib/GLibSharp.voidObjectIntPtrSignal.cs: autogenerated, for
notifications
* glib/NotifyHandler.cs: sort of autogenerated
svn path=/trunk/gtk-sharp/; revision=39717
* gtk/Dialog.custom : add a params array for button info to the ctor.
* gtk/FileChooserDialog.custom : add a params array for button info to
both ctors. Chain them to IntPtr.Zero.
* gtk/Gtk.metadata : hide the ellipsis ctors for the dialog types.
[Fixes#71818]
* sample/GtkDemo/DemoDialog.cs : make the InteractiveDialog use the
new Dialog ctor as it does in the c version.
svn path=/trunk/gtk-sharp/; revision=39713
* gtk/NodeSelection.cs : use new GetSelectedRows() overload.
* gtk/TreeSelection.custom : add a GetSelectedRows overload without the
out model param. [Fixes#71814]
svn path=/trunk/gtk-sharp/; revision=39654
* glib/Value.cs : add a private debugging DllImport for ref_counts
since the glue is there already. g_value_get_object returns an
unowned ref, so don't pretend like we own it. Make get_Val work for
GObject subclasses. [Fixes#71125]
svn path=/trunk/gtk-sharp/; revision=39615
* generator/*.cs : refactoring of Parameters class. Added IEnumerable
to Parameters and gracefully handle elem == null instead of special
casing parms == null all over the place. Parameter logic is now Count
driven. [Fixes#71750]
svn path=/trunk/gtk-sharp/; revision=39594
resulted in there being 2 blank lines before every property).
* generator/Signal.cs (Generate): s/Write/WriteLine/ to fix a
weirdly-formatted if statement in the generated code.
svn path=/trunk/gtk-sharp/; revision=39584
* gtk/Gtk.metadata : hide all the SignalFunc using Toolbar methods.
* gtk/Makefile.am : add the new custom.
* gtk/Toolbar.custom : implement the SignalFunc methods. Deal with
null for Widget params in *Element.
svn path=/trunk/gtk-sharp/; revision=39509
* gda/Makefile.am : add new custom.
* gda/XmlConnection.custom : add backcompat static ctor.
* generator/ClassBase.cs : refactor lookup logic to here from Ctor
and improve the collision resolution.
* generator/Ctor.cs : refactor to use MethodBase.
* generator/Makefile.am : add new file.
* generator/MethodBase.cs : new base class for ctors and methods.
* generator/Method.cs : refactor to use MethodBase.
* generator/StructBase.cs : move some logic from here to Ctor.
* gnome/CanvasPathDef.custom : add backcompat static ctor.
* gnome/GPPath.custom : add backcompat static ctor.
* gnome/Makefile.am : add new custom.
* gtk/Gtk.metadata : mark a colliding Button ctor shared.
svn path=/trunk/gtk-sharp/; revision=39431
sure the output has no unescaped "%"s. (For wrapping printf-style
unmanaged methods with String.Format-style managed ones.)
* gtk/MessageDialog.custom (MessageDialog): use it. #71405. Also,
use gtk_message_dialog_new_with_markup by default, and add an
overloaded ctor that lets you use the non-markup version.
* gtk/Gtk.metadata: hide the GtkMessageDialog ctors so we don't
get ellipsis warnings about them.
* sample/GtkDemo/DemoApplicationWindow.cs:
* sample/GtkDemo/DemoDialog.cs: simplify the MessageDialog usage;
don't need to call String.Format separately now.
svn path=/trunk/gtk-sharp/; revision=39256
* makefile.win32 : new "gac" target for automatic for gacutil calls,
added copying of gtk-sharp.snk to each folder being built to fix fresh
builds and after cleaning, added support for switching C#
compilers, and added handling of spaces in filenames for mcs builds
* gtkdotnet/makefile.win32 : add one more reference to fix mcs builds.
svn path=/trunk/gtk-sharp/; revision=38893
* sample/gnomevfs/*.cs : s/Test.Gnome.VFS/TestGnomeVfs to avoid
namespace collision problems with current mcs.
svn path=/trunk/gtk-sharp/; revision=38788
* configure.in: There might be multiple S.D assemblies (eg, if you
build the 2.0 crap, you get a 1.1 and a 2.0). So use head -n1 when
looking at gacutil
svn path=/trunk/gtk-sharp/; revision=38757
* configure.in : add test for System.Drawing. expand gtkdotnet.
* Makefile.am : add gtkdotnet.
* makefile.win32 : add gtkdotnet.
* gtkdotnet/* : new .Net extensions assembly. Moved the sample
sysdraw.cs Graphics class in here under the Gtk.DotNet namespace.
* sample/sysdraw.cs : moved to gtkdotnet/Graphics.cs.
* sample/drawing-sample.exe.config.in : killed.
* sample/DrawingSample.cs : use Gtk.DotNet.Graphics.
* sample/Makefile.am : make drawing-sample.exe build conditional
on gtk-dotnet presence.
svn path=/trunk/gtk-sharp/; revision=38745
* Makefile.include (install-data-local, uninstall-local): make
this actually work for things that are disabled.
svn path=/trunk/gtk-sharp/; revision=38561
* 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
* 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
* stetic/wrapper/Icon.cs: wrapper for Gtk.Images that show stock icons
* stetic/wrapper/SpinButton.cs: wrapper for Gtk.SpinButton
* stetic/wrapper/Frame.cs:
* stetic/wrapper/HBox.cs:
* stetic/wrapper/HButtonBox.cs:
* stetic/wrapper/HPaned.cs:
* stetic/wrapper/VBox.cs:
* stetic/wrapper/VButtonBox.cs:
* stetic/wrapper/VPaned.cs:
* stetic/wrapper/Table.cs:
* stetic/wrapper/Window.cs: Implement IObjectWrapper on these
(previously they just implemented IDesignTimeContainer)
* stetic/wrapper/Box.cs:
* stetic/wrapper/ButtonBox.cs:
* stetic/wrapper/Paned.cs: static classes that define
PropertyDescriptors used by their subclasses
* stetic/wrapper/DefaultWidgets.cs: Update for new wrappers
* stetic/editor/File.cs: editor for strings that represent filenames
* stetic/Stetic.cs: Use Gnome.Program rather than Gtk.Application
now, since we're using Gnome.FileEntry.
svn path=/trunk/gtk-sharp/; revision=38501
* gnomevfs/gnomevfs-symbols.xml : FileSize is a long long.
* generator/SymbolTable.cs : map longlong to C# long.
svn path=/trunk/gtk-sharp/; revision=38434
* gtk/TreeView.custom : add back the TreeCellDataFunc overloads for
backward compat.
* gtk/TreeViewColumn.custom : add back the TreeCellDataFunc overloads for
backward compat.
svn path=/trunk/gtk-sharp/; revision=38396
* gtk/TextBuffer.custom : Mark SetText obsolete in favour of the Text
property, and use Text in SetText in the meantime.
svn path=/trunk/gtk-sharp/; revision=38368
* gnomevfs/Directory.cs: PInvoke the _uri methods directory instead of
using the ToString() methods.
* gnomevfs/FileInfo.cs: Make the FileInfoNative field internal.
* gnomevfs/Gnomevfs.metadata: Hide a bunch of unwanted API.
* gnomevfs/Uri.custom: New API.
* gnomevfs/Vfs.cs: Idem.
svn path=/trunk/gtk-sharp/; revision=38126
* generator/CallbackGen.cs : use ReturnValue and more of Parameter.
* generator/GenBase.cs : remove unused NSElem prop.
svn path=/trunk/gtk-sharp/; revision=38115
* gnomevfs/Directory.cs: s/uint/FilePermissions/.
* gnomevfs/Gnomevfs.metadata: Make a bunch of API more user-friendly &
C# like.
* gnomevfs/Monitor.cs: Add internal MonitorEventType enum.
* gnomevfs/Uri.custom: Move a bunch of API from Vfs.cs to Uri.
* gnomevfs/Vfs.cs: Only put initialize & shutdown methods in here (plus
some debug API).
* gnomevfs/VfsStream.cs: Use new Uri API.
* sample/gnomevfs/TestUnlink.cs: Fix sample.
svn path=/trunk/gtk-sharp/; revision=38112
* generator/AliasGen.cs : derive from SimpleBase.
* generator/ConstStringGen.cs : derive from SimpleBase.
* generator/GObjectGen.cs : kill. now uses ManualGen.
* generator/GStringGen.cs : kill. now uses MarshalGen.
* generator/GUnicharGen.cs : kill. now uses MarshalGen.
* generator/LPGen.cs : derive from SimpleGen.
* generator/Makefile.am : update source files.
* generator/ManualGen : make this general for handle types.
* generator/MarshalGen : new CallByName/FromNative formatter class.
* generator/SymbolTable.cs : needed some reorganizing and some
restructuring of types to use MarshalGen.
* generator/TimeTGen.cs : kill. now uses MarshalGen.
svn path=/trunk/gtk-sharp/; revision=38109
* generator/Makefile.am : add new file.
* generator/SimpleBase.cs : new class for non-generated type mappers.
* generator/*Gen.cs : first refactoring of "Simple" generatable types.
Derive them all from SimpleBase. More to come.
svn path=/trunk/gtk-sharp/; revision=38097
* generator/*Gen.cs : implement IGeneratable fully on GenBase
with abstract methods where necessary to refactor a ton of redundant
code.
svn path=/trunk/gtk-sharp/; revision=38091
* glib/ClassInitializerAttribute.cs : new attr for identifying type.
inialization methods to be run by RegisterGType.
* glib/Makefile.am : add file.
* glib/Object.cs : add private method to invoke ClassInitializers.
* gtk/glue/widget.c : some new glue for binding registration.
* gtk/BindingAttribute.cs : new attr for registering key bindings.
* gtk/Makefile.am : add file.
* gtk/Widget.custom : add ClassInitializer method to scan types
for [Binding] and register key bindings.
svn path=/trunk/gtk-sharp/; revision=38074
gtk headers.
* gtk/gtk-api.raw: regen
* gtk/Gtk.metadata: Remove some explicit hiding of things that
shouldn't have been there anyway. Hide a few types that just show
up as unusable stubs.
svn path=/trunk/gtk-sharp/; revision=38054
* generator/CodeGenerator.cs:
* generator/ManagedCallString.cs:
* generator/Property.cs: Remove unused vars
* generator/Method.cs (GetHashCode): have to implement this since
we're overriding Equals.
* generator/CallbackGen.cs: print a message when generating a
broken struct-returning callback. (Currently affects
GtkSharp.TextSegSplitFuncNative and
GtkSharp.TextSegCleanupFuncNative)
* gdk/glue/device.c:
* gdk/glue/dragcontext.c: Add missing prototypes
* gtk/Gtk.metadata: Mark SeparatorToolItem.Draw "new". Re-rename
CheckMenuItem.Toggled to EmitToggled rather than Toggle, since
that's a better description of what it does.
* gtk/CheckMenuItem.custom: implement a "Toggle" method that does
what the documentation claims it does.
* gtk/NodeStore.cs: remove unused var
* gnome/Gnome.metadata: mark DateEdit.Flags, Dialog.Default, and
PropertyBox.State "new". Hide GnomePixmapEntry.GnomeEntry and
GnomePixmapEntry.GtkEntry since they do exactly the same thing as
the methods of the same names inherited from GnomeFileEntry.
* gnome/glue/canvas-proxy.c:
* gnome/glue/canvas-proxy.h:
* gnome/glue/canvas-proxy-marshal.c:
* gnome/glue/canvas-proxy-marshal.h:
* gnome/glue/canvas-proxy-marshal.list: Remove unused code
* gnome/glue/Makefile.am (libgnomesharpglue_2_la_SOURCES): update
* panelapplet/PanelApplet.metadata: mark PanelApplet.Flags "new"
* sample/CanvasExample.cs:
* sample/CustomCellRenderer.cs:
* sample/CustomNotebook.cs:
* sample/DrawingSample.cs:
* sample/Fifteen.cs:
* sample/GladeTest.cs:
* sample/GtkDemo/DemoHyperText.cs:
* sample/GtkDemo/DemoPixbuf.cs:
* sample/ScribbleXInput.cs: remove unused vars, use
GLib.Timeout.Add rather than the deprecated Gtk.Timeout.Add
svn path=/trunk/gtk-sharp/; revision=38043
* gnomevfs/Async.cs:
* gnomevfs/Directory.cs:
* gnomevfs/Sync.cs:
* gnomevfs/Vfs.cs: Make the constructors private so they don't show up
in monodoc (these classes aren't meant to be instantiated).
svn path=/trunk/gtk-sharp/; revision=38025
* gdk/Gdk.metadata : mark a couple array params.
* generator/Field.cs : remove the MarshalAs hack. We have to
do something much more evil since MarshalAs can't hang.
* generator/ImportSignature.cs : deal with out LP(U)Gen params.
* generator/LPGen.cs : moved from SSizeTGen and generalized.
* generator/LPUGen.cs : moved from SizeTGen and generalized.
* generator/Makefile.am : update sources.
* generator/MethodBody.cs : deal with out LP(U)Gen params.
* generator/Parameters.cs : deal with out LP(U)Gen params.
* generator/SymbolTable.cs : make all longs and size_t types LP(U)Gens.
svn path=/trunk/gtk-sharp/; revision=37999
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
Lookup (so we can customize it) and AddStatic (since it can't work
right from managed code), and tweak the params of Add.
* gtk/Stock.custom: Implement Lookup() using a special
ConstStockItem struct so the p/invoke layer won't try to free
static strings. [#70589]
svn path=/trunk/gtk-sharp/; revision=37995
* gnomevfs/Makefile.am:
* gnomevfs/ModuleCallback.cs:
* gnomevfs/ModuleCallbackAuthentication.cs:
* gnomevfs/ModuleCallbackFullAuthentication.cs:
* gnomevfs/Vfs.cs: Use a custom VfsException for Result errors.
* gnomevfs/VfsException.cs: new custom Exception class.
* sample/gnomevfs/Makefile.am:
* sample/gnomevfs/TestCallback.cs:
Implement custom bindings for the ModuleCallback mechanism. Atm, only
the GNOME_VFS_MODULE_CALLBACK_AUTHENTICATION and
GNOME_VFS_MODULE_CALLBACK_FULL_AUTHENTICATION callbacks are implemented.
Also added a test-case using the full authentication callback (tested
using the sftp: method). [Partially fixes#70602]
svn path=/trunk/gtk-sharp/; revision=37972
* gtk/ColorSelectionDialog.custom : fix some incorrect object wrapping
and mark the ColorSelectionButton nested class Obsolete with a heinous
warning message. [Fixes#68450]
svn path=/trunk/gtk-sharp/; revision=37923
* gtk/ListStore.custom : dispose a bunch of GLib.Values.
* gtk/TreeStore.custom : ditto. Reworked and expanded from a patch
by Ben "valgrind-boy" Maurer. [Fixes#69925]
svn path=/trunk/gtk-sharp/; revision=37919
* glade/XML.custom (BindFields) : support multiple autoconnects
in different roots by not writing null widgets to the tagged
fields. [Fixes#68455]
svn path=/trunk/gtk-sharp/; revision=37917
* gtk/Gtk.metadata : hide Object and Widget.Destroy.
* gtk/Object.custom : manual virtual Destroy impl.
* gtk/Widget.custom : manual virtual Destroy impl.
* gtk/Window.custom : hold a managed ref for all toplevels. Release
it in a Destroy override. Window is frequently subclassed and is
never parented, so this keeps a managed ref around to avoid GC.
[Fixes#70120]
svn path=/trunk/gtk-sharp/; revision=37914
* gdk/Gdk.metadata : mark out param on Window.GetFrameExtents.
* gdk/WindowAttr.custom : new typed Mask prop.
* gtk/Widget.custom : new typed WidgetFlags prop. mark Flags obsolete.
svn path=/trunk/gtk-sharp/; revision=37909
* gtk/Makefile.am : add new file.
* gtk/glue/makefile.win32 : add missing file.
* gtk/NodeCellDataFunc.cs : new callback delegate type and marshaler
for NodeStore tree views using GtkTreeCellDataFuncs.
* gtk/NodeStore.cs : add internal GetNode overload by TreeIter.
* gtk/NodeView.cs : add AppendColumn overload that uses data funcs.
* gtk/TreeViewColumn.custom : manual implementation for SetCellDataFunc
to support both TreeIter and ITreeNode models. We need to hold a ref
to a delegate for each cell renderer on a column. [Fixes#63062]
* sample/NodeViewDemo.cs : use a NodeCellDataFunc for one of the
cell renderers in the tree.
svn path=/trunk/gtk-sharp/; revision=37904
SetFoo methods if they aren't in the right form to be turned into
property accessors. (Causes 13 previously ignored methods to now
be wrapped. See doc/ChangeLog.)
* gtk/Gtk.metadata: Fix up a few of those newly-exposed methods
svn path=/trunk/gtk-sharp/; revision=37891
new methods to allow arbitrary setup and teardown code around the
managed call. When passing a type with "complicated" marshalling
requirements as a ref or out param, first assign the value to a
temporary variable (in Setup), then pass the temp as the ref or
out param (in ToString), and then assign the new value back to the
original argument (in Finish).
* generator/Signal.cs:
* generator/SignalHandler.cs: Update to generate correct glue for
signals with "ref" or "out" params. (#70566)
* generator/VirtualMethod.cs: Update for ManagedCallString change
* generator/IGeneratable.cs: add comments explaining what each
member does
* gtk/Gtk.metadata: mark Editable.InsertText's "position" arg
* pass-by-ref
* sample/Size.cs: connect to the SizeRequested event and override
it, to test/demo the changes
svn path=/trunk/gtk-sharp/; revision=37854
/*< 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
* sample/NodeViewDemo.cs : rework of TreeViewDemo to use NodeStore.
* sample/TreeViewDemo.cs : added some timing and node counting fu.
2004-12-16 Duncan Mak <duncan@ximian.com>
* gtk/Makefile.am (sources): Added NodeSelection and NodeView.
* gtk/NodeSelection.cs: New file, an implementation of
TreeSelection that exposes ITreeNodes instead of TreeIters.
* gtk/NodeStore.cs : added internal GetIter and GetPath methods for
NodeSelection. Reworked [TreeNodeValue] lookup logic.
out what the Type of data the store holds.
* gtk/NodeView.cs: New subclass of TreeView utilizing NodeStore and
NodeSelection.
* gtk/TreeIter.custom : new internal UserData prop.
* gtk/TreeNodeValueAttribute.cs: Set AllowMultiple to true.
* gtk/TreeView.custom: Obsoleted constructor that uses a NodeStore as
parameter. NodeView should be used instead.
svn path=/trunk/gtk-sharp/; revision=37845
* sample/Makefile.am: Readded TestVfs.cs back and make it conditional.
* sample/TestVfs.cs: New sample contributed by Tamara Roberson.
[Fixes#70262]
svn path=/trunk/gtk-sharp/; revision=37374
* doc/en/*/*.xml : docs for new GValue members and size_t changes.
* generator/SymbolTable.cs : add ssize_t and make size_t a UIntPtr
instead of the current broken int mapping on 64 bit platforms.
* gtkhtml/HTMLStream.custom : fix size_t related overload.
[fixes#69574]
svn path=/trunk/gtk-sharp/; revision=37223
* #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
[Fixes#70187]. Kill two varargs warnings.
* gtk/TextBuffer.custom: Update for that, and also implement
InsertWithTagsByName
* sample/GtkDemo/DemoHyperText.cs:
* sample/GtkDemo/DemoTextView.cs: Remove kludges for broken
TextIter handling. Also fix the i18n demo bits by translating the
octal-encoded UTF-8 to hex-encoded UTF-16.
svn path=/trunk/gtk-sharp/; revision=37039
* generator/StructGen.cs: Check to see if a GType is going to be
generated. If not, generate a GType.Pointer. This fixes bug
#70017.
* glib/TypeConverter.cs: Remove the .IsValueType check, as those
now have GType properties.
* gda/Gda.metadata: Change GdaValue.GType to GdaValue.GdaType.
* doc/en/Gda/Value.xml: Regenerated to reflect new API.
svn path=/trunk/gtk-sharp/; revision=36912
* gtk/ActionEntry.cs:
* gtk/ActionGroup.custom:
* gtk/Gtk.metadata:
* gtk/Makefile.am:
* gtk/RadioActionEntry.cs:
* gtk/ToggleActionEntry.cs:
* gtk/UIManager.custom:
* sample/Actions.cs: Updated to use the new *ActionEntry code. Reflects
testactions.c from gtk+ now.
Added C# syntactic sugar for easily defining Action's for the UIManager.
Derived from the same ActionEntry structs in gtk+.
svn path=/trunk/gtk-sharp/; revision=36638
* generator/ObjectGen.cs: Move child property handling from
ClassBase to ObjectGen (as suggested by Mike) since it's only
used there
svn path=/trunk/gtk-sharp/; revision=36398
* generator/InterfaceGen.cs : beginnings of a real
implementation for GInterfaces. Not quite ready yet,
so it's not active in generation.
svn path=/trunk/gtk-sharp/; revision=36294
* generator/Makefile.am : add new file.
* generator/Method.cs : add Declaration property.
* generator/VirtualMethod.cs : new class to generate virtual
methods for Interfaces and objects. Unfinished.
svn path=/trunk/gtk-sharp/; revision=36292
* generator/*Gen.cs : add ToNativeReturnType to deal with
the g_free string nonsense in the virtual method case.
svn path=/trunk/gtk-sharp/; revision=36289
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
that take the name of the type rather than an object/property
name pair; this way they work for both GObject properties and
GtkContainer child properties.
* glib/glue/value.c (gtksharp_value_create_from_type_name): glue
for that
* glib/Opaque.cs (GetOpaque): Fix this.
* generator/Property.cs (Generate): Use the new GLib.Value
constructors. (Fixes setting of enum-valued child properties.)
svn path=/trunk/gtk-sharp/; revision=36174
glue method to get container->focus_child
* gtk/Gtk.metadata: hide SetFocusChild
* gtk/Container.custom (FocusChild): implement with both getter
and setter
* en/Gtk/Container.xml (FocusChild): Has a getter now too.
(Added): Clarify that this only means "Gtk.Container.Add was
called", and doesn't get fired when you call Gtk.Box.PackStart,
etc
svn path=/trunk/gtk-sharp/; revision=36143
* generator/SymbolTable.cs: Add support for GDestroyNotify, so
that `gtk_cell_layout_set_cell_data_func' will be generated in
Gtk.ComboBox.
svn path=/trunk/gtk-sharp/; revision=36095
* */*-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
(Object(GType)): Mark this ctor Obsolete
* gtk/Gtk.metadata: disable the generated GType ctor on Gtk.Widget
* gtk/Widget.custom (Widget, CreateNativeObject,
Widget_ParentSet): Connect to our own ParentSet event from
CreateNativeObject and the GType ctor, and keep a static Hashtable
of parented widgets, so that adding a managed widget to a
container keeps both the GObject and the managed object alive.
* generator/ObjectGen.cs (GenCtors): handle the disable_gtype_ctor
flag. Also, mark GType ctors [Obsolete]
svn path=/trunk/gtk-sharp/; revision=35885
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
* gtk/FileChooserDialog.custom:
* gtk/FileChooserWidget.custom: Properly implement .Filenames. The old
code was a really bad c&p job.
svn path=/trunk/gtk-sharp/; revision=35619
* gnomevfs/Directory.cs: New Create and Delete methods. Free the
FileInfo List returned by gnome_vfs_directory_list_load.
* gnomevfs/FileInfo.cs: Copy the FileInfoNative struct so the original
can be properly freed.
* gnomevfs/Vfs.cs: Move MakeDirectory and RemoveDirectory to Directory.
svn path=/trunk/gtk-sharp/; revision=35535
* gnomevfs/Directory.cs: Bind gnome_vfs_directory_list_load as a static
FileInfo[] GetEntries (uri) method.
* gnomevfs/FileInfo.cs: Add internal FileInfoNative constructor to
create a FileInfo class based on an existing FileInfoNative struct.
* gnomevfs/Makefile.am:
* sample/gnomevfs/Makefile.am:
* sample/gnomevfs/TestDirectory.cs:
svn path=/trunk/gtk-sharp/; revision=35532
* gtk/FileChooserDialog.custom: Add Filenames property to return
the data as a string[] instead of a GSList.
* gtk/FileChooserWidget.custom: Same as above.
* gtk/Makefile.am: Add FileChooserWidget.custom
svn path=/trunk/gtk-sharp/; revision=35492
Gdk.Pixmaps instead, because the former will crash. Also fix the
"data" param to Pixmap.CreateFromXpmD and
Pixmap.ColormapCreateFromXpmD
* gtk/Style.custom (TextAAGC, SetTextAAGC, LightGC, SetLightGC,
DarkGC, SetDarkGC, MidGC, SetMidGC): add these to go along with
BaseGC, SetBaseGC, etc.
* gtk/glue/style.c: add the glue methods needed for the above
svn path=/trunk/gtk-sharp/; revision=35409
if "disable_raw_ctor" is set on the opaque type.
* gtk/Gtk.metadata: Make GtkTargetList opaque (fixes a crash in
Gtk.Drag.Begin), hide the generated constructor and ref/unref
methods, and fix up the interpretation of AddTable.
* gtk/TargetList.custom (TargetList, ~TargetList): Implement the
suppressed constructors and add a finalizer, which handle
refcounting the underlying struct.
(Add, Find, Remove): convenience overloads that take string
instead of Gdk.Atom.
* gtk/Makefile.am (customs): add TargetList.custom
svn path=/trunk/gtk-sharp/; revision=35135
* glib/GString.cs : new marshaling class for GStrings. Used by
generator to map GString params and returns onto managed strings.
* glib/Makefile.am : add new file.
svn path=/trunk/gtk-sharp/; revision=34523
* glib/Source.cs: Add new base class to hold the method to be
called, and the proxy handler we use to keep references to them
and avoid a collection.
Exposes a new variables that references all the active Timeouts
and Idle handlers to avoid collection/
* glib/Timeout.cs: Implement TimeoutProxy that acts as a filter to
remove the proxy when the timeout is removed.
Register a TimeoutProxy when we create a timeout.
* glib/Idle.cs: Implement IdleProxy that acts as a filter to
remove the proxy when the idle handler is removed.
Register an IdleProxy when we create a timeout.
svn path=/trunk/gtk-sharp/; revision=34094
* gdk/Gdk.metadata: change Gdk.KeyVal name return-type from
gchar* to const-gchar*, so we do not try to modify it (call gfree).
[Fixes#64421]
svn path=/trunk/gtk-sharp/; revision=32968
* generator/Signal.cs : use typeof instead of Type.GetType to
specify the event args type.
* glib/ObjectManager.cs : beef up the type lookup code using
Assembly.LoadWithPartialName to fix a very popular win32 bug.
[Fixes#61139 and friends] Thanks to John Luke for expert
patch testing on win32.
svn path=/trunk/gtk-sharp/; revision=32831
* gdk/Drawable.custom : add a DrawPolygon overload with bool filled
and mark the old int filled overload Obsolete.
[Fixes#60702]
svn path=/trunk/gtk-sharp/; revision=32779
* gtk/Gtk.metadata : hide some methods on TextBuffer.
* gtk/TextBuffer.custom : pass -1 for the text length to some
more methods.
svn path=/trunk/gtk-sharp/; revision=32534
* AUTHORS: fix my name
* glade/XML.custom: remove doc comments (in monodoc)
add overload ctor for the most common case so far
[Fixes#62238]
svn path=/trunk/gtk-sharp/; revision=32503
* pango/Pango.metadata : metadata for the pango audit.
* pango/*.custom : customizations to fix audited API.
* doc/en/* : docs for some api changes and additions.
* glib/Marshaller.cs : some gunichar marshal-fu.
* glib/glue/unichar.c : a new glue method.
svn path=/trunk/gtk-sharp/; revision=32462
* gtk/Gtk.metadata : hide Insert and SetText for manual impl.
* gtk/TextBuffer.custom : pass -1 for length to Insert and SetText.
Adapted from a patch by borsanza@yahoo.es (Borja Sanchez Zamorano).
[Fixes#62985]
svn path=/trunk/gtk-sharp/; revision=32317
* gtk/Gtk.metadata:
* glade/Glade.metadata: mark return type as const-gchar* for
Gtk.Global.CheckVersion and Glade.Global.ModuleCheckVersion
so Gtk# does not try to free them. Thanks to
jaspervp@gmx.net (Jasper van Putten) for identifying the Glade
part. Fixes bugs #61329 and #60954
svn path=/trunk/gtk-sharp/; revision=31239
* */*.cs : add lgpl license blurb and clean up (c)'s.
* */*.custom : add lgpl license blurb and clean up (c)'s.
* */glue/*.c : add lgpl license blurb and clean up (c)'s.
file adds without license from now on are punishable by wedgie.
svn path=/trunk/gtk-sharp/; revision=30401
* gdk/Makefile.am (sources): add Pixdata.custom
* gdk/Pixdata.custom: add new file to fix Serialize.
* gnome/CanvasItem.custom: remove the incorrect custom bindings.
* gnome/Gnome.metadata: stop hiding the AffineRelative and
AffineAbsolute the generator gets them right they are not out
params.
* gdk/Gdk.metadata: mark the Pixdata byte stream as and array hide
the broken serialize method.
svn path=/trunk/gtk-sharp/; revision=29941
* sample/rsvg/Makefile.am: do not reference gnome-sharp and art-sharp
* sample/rsvg/svghelloworld.cs: rework with just gtk (no gnome deps)
svn path=/trunk/gtk-sharp/; revision=29923
* configure.in : another "really frozen this time" release.
* gdk/Gdk.metadata : mark a couple array params on Pixbuf.Savev.
* gdk/Pixbuf.custom : add a Save implementation.
svn path=/trunk/gtk-sharp/; revision=29546
* doc/en/*/*.xml : update to remove Override* methods.
* generator/Signal.cs : make the Override* methods private. They
should not ever be called manually and it saves about 800 "do not
call this method" doc entries.
svn path=/trunk/gtk-sharp/; revision=29388
* configure.in : deal with a csc-ism in source paths.
* */Makefile.am : use the GENERATED_SOURCES var.
* */glue/Makefile.am : add -no-undefined for win32 dll builds.
svn path=/trunk/gtk-sharp/; revision=29367
* configure.in : break the monodoc dep, even though it was optional
it was a pain in the backside.
* doc/Makefile.am : add assemble target to build docs using monodoc.
we now have two manual targets which use monodoc, but aren't required
for the default build (update and assemble).
svn path=/trunk/gtk-sharp/; revision=29238
* gdk/Gdk.metadata: mark Window.SetBackPixmap as null_ok.
* glib/Object.cs: in set_Raw, if value == IntPtr.Zero, dont put that
in the weakref hashtable, as it creates later issues with gtk+
returning null and gtk# mistaking if for an object.
svn path=/trunk/gtk-sharp/; revision=29126
* gtk/Widget.custom: expose some easy bool properties for checking
certain WidgetFlags. Make Allocation a settable property.
* gtk/glue/widget.c: bit of glue to make Allocation settable.
* gdk/Window.custom: expose UserData as a usable IntPtr property.
* gdk/Gdk.metadata: hide old GetUserData/SetUserData methods.
* doc/*: ran the updater.
svn path=/trunk/gtk-sharp/; revision=28974
* glib/Object.cs: ConnectDefaultHandlers needs to look at public api
as well for virtual methods.
* gtk/CellRenderer.custom:
* gtk/Container.custom:
* gnome/CanvasItem.custom: Add DefaultSignalHandler to remove the need
for the static ctor.
svn path=/trunk/gtk-sharp/; revision=28851
* generator/Field.cs : add field hiding, for manual impl.
* generator/StructBase.cs : support disable_new, for manual impl.
svn path=/trunk/gtk-sharp/; revision=28715
* generator/ObjectGen.cs : generate protected ctor () for all
GLib.Objects that don't have any ctors.
* gtk/CellRenderer.custom : remove ctor ().
* gtkhtml/Gtk.metadata : add a disable_void_ctor rule for HTML.
svn path=/trunk/gtk-sharp/; revision=28645
* gtk/Gtk.metadata : mark SizeRequest requisition as out, not ref.
[Fixes#59388]
2004-06-01 Mike Kestner <mkestner@ximian.com>
* en/Gtk/Widget.xml : move existing docs to new method sig.
svn path=/trunk/gtk-sharp/; revision=28629
* gdk/Gdk.metadata: fix membler names in WindowClass.
[Fixes#59336]
2004-05-31 Mike Kestner <mkestner@ximian.com>
* en/Gdk/WindowClass.xml : move existing docs to new member names.
svn path=/trunk/gtk-sharp/; revision=28563
* gnome/CanvasItem.custom : for OnUpdate, Art.SVP can be NULL
so treat it as an IntPtr with Zero checks and manual marshaling.
svn path=/trunk/gtk-sharp/; revision=28442
* generator/ObjectGen.cs : adjust to ObjectManager ns change.
* glib/ManagedValue.cs : move to GLib and internalize.
* glib/Object.cs : adjust to ObjectManager ns change.
* glib/ObjectManager.cs : move to GLib.
* glib/TypeConverter.cs : move to GLib. return ManagedValue.GType
when we can't match a type instead of GType.None.
* gtk/*.custom: adjust for new TypeConverter ns and behavior.
2004-05-28 Mike Kestner <mkestner@ximian.com>
* en/* : run updater. fix a few *Sharp copy/pastisms.
svn path=/trunk/gtk-sharp/; revision=28362
* gtk/Container.custom : use glue to invoke the GtkCallback in
Forall.
* gtk/glue/container.c : add gtksharp_container_invoke_gtk_callback.
svn path=/trunk/gtk-sharp/; revision=28047
* configure.in : require mono-0.91.99. Sorry, but we need to
require mono cvs until beta2 because of some recent breakage in
Gnome.Program custom code while reflecting against the runtime.
svn path=/trunk/gtk-sharp/; revision=27901
* gnome/Program.custom: Change the Mono.Runtime stuff to reflect
its new internal nature. This fixes MD, gnunit, and all gnome#
programs that were blowing up for no reason.
svn path=/trunk/gtk-sharp/; revision=27898
* gdk/Pixbuf.custom: Changed Pixbuf.Pixels to return an IntPtr instead
of a byte * -- anyone who needs a byte * can do the cast in an unsafe
context already.
svn path=/trunk/gtk-sharp/; revision=27617
* glib/MissingIntPtrCtorException.cs : new exception to throw if
unable to access an IntPtr ctor on a GLib.Object subclass. We need
an IntPtr ctor to be able to wrap arbitrary object handles.
* glib/Object.cs : have NativeType call LookupGType.
* glib/ObjectManager.cs : throw the new exception in a try/catch.
svn path=/trunk/gtk-sharp/; revision=27563
* generator/ObjectGen.cs : Generate a .cctor that calls the assembly's
ObjectManager.Initialize method if the class will need to be registered
with GLib.ObjectManager. Enhance the Initialize method to allow
multiple invocations.
svn path=/trunk/gtk-sharp/; revision=27554
* generator/SignalHandler.cs : fix some broken/redundant generation in
the Object/Struct wrapping for sig params.
* glib/Object.cs : internalize/protect lots of API that shouldn't need
to be used by non-subclass/non-glib code. Return GType.Object as GType.
* glib/Value.cs : use internal GLib.Object.NativeType prop.
* sample/TestDnd.cs : use ToString instead of TypeName.
svn path=/trunk/gtk-sharp/; revision=27530
* glib/Object.cs: make static GLib.Object.LookupGType protected for now. * gtk/CellRenderer.custom: code to allow for subclassing and
implementing a custom cell renderer.
* gtk/Makefile.am: add custom to build.
* gtk/glue/Makefile.am: add glue to build.
* gtk/glue/cellrenderer.c: glue code to override get_size and render
from cellrenderer.
* sample/CustomCellRenderer.cs: new sample to show how to implement a
custom cell renderer.
* sample/Makefile.am: add CustomCellRenderer sample.
svn path=/trunk/gtk-sharp/; revision=27426
* gtk/Gtk.metadata : change return-type on Global.EventsPending
to a bool to avoid compat problems in 2.4. Also rename to
GetEventsPending so that it's generated as a property.
[fixes#58292]
svn path=/trunk/gtk-sharp/; revision=27043
* gnome/Gnome.metadata: map properties for with_flags DateEdit ctor,
and hide the DateTime, bool, bool ctor
* gnome/Makefile.am: Add DateEdit.custom.
* gnome/DateEdit.custom: Add subclassable ctor for DateEdit and
add enough overloads that accept variable parameter lists to make
Mike Kestner sick.
svn path=/trunk/gtk-sharp/; revision=26961
* gnome/Gnome.metadata: Hide Druid with_window ctor, map About property. add some null_ok from bug #57948.
* gnome/Druid.custom: implement with_window ctor for subclassing, and
a 3 paramatered version for when you dont care about the returned
window. another 3 parametered version for when you have want null
parent, and a 2 parametered version for the null parent and the
discarding of the window (THANKS MIKE!)
* gnome/Makefile.am: add new custom.
svn path=/trunk/gtk-sharp/; revision=26948
* sample/GnomeHelloWorld.cs : guard against null args.Event in the
icon_selected_cb, which occurs on button-presses for some reason.
Thanks to wmealing on irc for the bug report.
svn path=/trunk/gtk-sharp/; revision=26926
[Derived from a patch by Ben Maurer]
* generator/Ctor.cs : generate code to detect subclassing and handle
GType registration and native object creation properly.
* generator/Parameters.cs : add PropertyName accessor for param attr.
* generator/Property.cs : use a new GLib.Value ctor.
* glib/ObjectManager.cs : redo hash access.
* glib/Object.cs : CreateNativeObject method to invoke g_object_newv
and some refactoring of RegisterGType and LookupGType.
* glib/Value.cs : make gtype field an IntPtr.
* glib/glue/object.c : glue for g_object_newv use.
* glib/glue/value.c : new glue for value creation.
* gtk/Dialog.custom : fix a ctor declaration for auto-reg.
* gtk/Gtk.metadata : mark a couple property_name attrs as examples.
* sample/Subclass.cs : use auto-GType-registration now.
svn path=/trunk/gtk-sharp/; revision=26916
* generator/Method.cs: Don't use the "unsafe" modifier for methods which
are part of an interface [fixes#58059].
svn path=/trunk/gtk-sharp/; revision=26843
* gtk/Adjustment.custom: add an a set method for StepIncrement.
* gtk/glue/adjustment.c: add gtk_adjustment_set_step_increment.
svn path=/trunk/gtk-sharp/; revision=26780
* generator/Signal.cs : rmv Handle param to SignalCallback ctor calls.
s/GtkSharp.Signal*/GLib.Signal*.
* generator/SignalHandler.cs : rmv Handle param to ctors as it's
redundant. s/GtkSharp.Signal*/GLib.Signal*. Use new Connect/Disconnect
instead of generating DllImports into libgobject directly.
* glib/SignalArgs.cs : move the the GLib namespace.
* glib/SignalCallback.cs : expose Connect and Disconnect methods to
hide some pinvokes that were previously generated. Also move to the
GLib namespace.
gnome/*Handler.cs : update to new SignalHandler API.
gnome/CanvasProxy.cs : ditto
gnome/void*Signal.cs : ditto
svn path=/trunk/gtk-sharp/; revision=26778
* configure.in : require gtkhtml-3.0.10 so we can use a single
so version (.4).
* sources/* : update to gtkhtml-3.0.10. This produces zero change
in the generated API.
svn path=/trunk/gtk-sharp/; revision=26682
* configure.in : add some checks for gtkhtml-3.1 and use it if avail.
* gtkhtml/gtkhtml-sharp.dll.config.in : deal with 3.1 versioning.
svn path=/trunk/gtk-sharp/; revision=26600
* gtkhtml/Gtk.metadata: Patch from Mike Kestner: make
GtkHTMLStream opaque, to fix a bug that was found by running
Monodoc on MacOS X. We were passing a pointer to a managed
object, instead of a pointer to a HTMLStream-allocated object.
* HTMLStream.custom: Update custom file to reflect change to
Opaque: use Handle instead of this.
svn path=/trunk/gtk-sharp/; revision=26587
* configure.in : lookup gacutil and error out if not found.
* */Makefile.am : add install-data-local and uninstall-local targets
for GAC installation. Add gtk-sharp.pub target to cp the key in for
distcheck.
* */AssemblyInfo.cs.in : remove ../ from key path for VPATH build.
svn path=/trunk/gtk-sharp/; revision=26485
* configure.in : remove BASE_DEPENDENCIES LIBS and CFLAGS and
expose more specific versions for glue building.
* */glue/Makefile.am : use more specific versions of LIBS and CFLAGS
to reduce the ldd footprint.
svn path=/trunk/gtk-sharp/; revision=26438
[Expanded from patch by John Luke attached to bug.]
* gdk/Gdk.metadata : rename Atom.Name to GetName so it props.
* gdk/Atom.custom : new string cast operator.
* sample/TestDnd.cs : fix Atom.Name reference
* sample/GtkDemo/DemoEditableCell.cs : fix a ListStore.Remove
ref broken by last commit.
[Fixes#57721]
svn path=/trunk/gtk-sharp/; revision=26208
* generator/GObjectGen.cs: Added new generatable to handle
plain GObjects the same way we do subclasses.
* generator/ManualGen.cs: Make FromNative/FromNativeReturn virtual
to allow overriding.
* generator/SymbolTable.cs: Use GObjectGen instead of
ManualGen for GObject.
* generator/Makefile.am: Add GObjectGen.cs.
svn path=/trunk/gtk-sharp/; revision=25651
* gnome/Gnome.metadata: Make data an array type so that the image
functions can be used.
* gnome/Print.custom: add a custom handler to print Pixbufs.
* gnome/Makefile.am: add Print.custom.
svn path=/trunk/gtk-sharp/; revision=25252
* generator/ClassBase.cs : remove default ctor generation and
hasDefaultConstructor field.
* generator/Ctor.cs : chain to base (IntPtr.Zero).
* generator/StructBase.cs : remove hasDefaultConstructor usage.
* glib/Object.cs : remove Object () ctor. Add Ben's GetGType
method, although nothing uses it yet. Still working on integrating
the remainder of Ben's patch.
* gtk/Gtk.metadata : remove all the disabledefaultctor rules.
* */*.custom : add base (IntPtr.Zero) or this (...) chaining for
all ctors.
svn path=/trunk/gtk-sharp/; revision=25184
* vte/Vte.metadata: mark argv and envv parameters to
Vte.Terminal.ForkCommand as arrays, it finally works
* sample/Vte-test.cs: adjust for above
svn path=/trunk/gtk-sharp/; revision=25014
* glib/Value.cs : NULL check for g_value_get_string Thanks to Jeroen
Zwartepoorte for the bug report with patch [fixes#54979].
svn path=/trunk/gtk-sharp/; revision=24910
[Reworked a bit by MK]
* Makefile.am : add doc dir
* configure.in : test for monodoc, expand doc/Makefile
* doc/Makefile.am : build and dist docs
* doc/makefile : kill
svn path=/trunk/gtk-sharp/; revision=24805
* gtk/Gtk.metadata : Widget.Events is a Gdk.EventMask, not int
* sample/GtkDemo/DemoDrawingArea.cs : remove int casts
* sample/Scribble.cs : remove int casts
svn path=/trunk/gtk-sharp/; revision=24601