* gtk/FileChooserDialog.custom : move backend to first param to
avoid conflicts with button names in overloaded ctor.
svn path=/trunk/gtk-sharp/; revision=39856
* 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
* 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
* 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
* 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
* 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
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
* 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
* 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
[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
* 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
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
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
* */*-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
* 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
* 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
* 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