/*< 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
* 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
* 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
* 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
* 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
(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
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
* 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
* 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
* 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
* 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
* 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
[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
* 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
* 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
* 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
* generator/ObjectGen.cs : don't gen a Signals hash per class.
* generator/Signal.cs : gen checks for [ConnectBefore].
* generator/SignalHandler.cs : add connect_flags param to ctor.
* glib/ConnectBeforeAttribute.cs : new attr
* glib/Makefile.am : add new file
* glib/Object.cs : add before/after hashes and EventLists
* gnome/CanvasProxy.cs : use AfterSignals and AfterHandlers.
svn path=/trunk/gtk-sharp/; revision=24157
* */Makefile.am : automakify the build
* */Makefile.in : kill
* *.custom : remove System.Drawing dependencies
* *.cs : remove System.Drawing dependencies
* *-api.xml : mv to *-api.raw
* glue/* : mv to lib specific gluelibs for glib, gdk, gtk, and glade.
* gtk/gtk-symbols : alias GtkType to GType
* sources/gtk-sharp-sources.xml : create .raw files. They are now
transformed to .xml files by the metadata compilation step.
svn path=/trunk/gtk-sharp/; revision=23967
* generator/ObjectGen.cs : ignore virtual_method elems for now.
* parser/gapi2xml.pl : parse the non-signal class methods and add as
virtual_method elements in the API xml
* */*-api.xml : regen
svn path=/trunk/gtk-sharp/; revision=23809
* gconf/GConf.PropertyEditors/PropertyEditorColorPicker.cs :
nuke a GnomeSharp.
* generator/Signal.cs : move eventhandlers and args into the
base namespace instead of a *Sharp namespace.
* sample/*.cs : nuke using *Sharp.
svn path=/trunk/gtk-sharp/; revision=22956
* art/Art.metadata : mark a field private
* art/art-api.xml : regen
* gda/Gda.metadata : mark a few structs opaque
* gda/gda-api.xml : regen
* gdk/*.custom : fix changed field names
* gdk/gdk-api.xml : regen
* generator/Field.cs : StudlyCase simple typed field names.
* gnome/Gnome.metadata : mark FontEntry.weight private to
avoid collision with Weight field. s|//|/api/namespace|g
* gnome/gnome-api.xml : regen
* gtk/Gtk.metadata : rename AccelKey.accel_key to key to
avoid collision with type name.
* gtk/*.custom : fix changed field names
* gtk/gtk-api.xml : regen
* pango/pango-api.xml : regen
* parser/gapi_pp.pl : add a private_regex to hide BACKEND
and ENGINE apis, which are by convention private.
* sample/* : make compile
* sample/GtkDemo/* : make compile
* sample/test/* : make compile
* sources/gtk-sharp-sources.xml : exclude a bunch of pango
source files.
svn path=/trunk/gtk-sharp/; revision=22947
* generator/Method.cs : for Opaque/Object retvals, if raw_ret is
NULL, return null instead of an object with a NULL handle.
svn path=/trunk/gtk-sharp/; revision=22847
* generator/CustomMarshalerGen.cs : beginnings of a new generatable.
* generator/SymbolTable.cs : mangle interface keyword to iface.
svn path=/trunk/gtk-sharp/; revision=22712
* generator/BoxedGen.cs : gen a Value to Boxed explicit cast op.
* generator/Property.cs : use new cast in Boxed getters.
[Fixes#53414]
svn path=/trunk/gtk-sharp/; revision=22553
like void Foobar (..., out int baz, ...) are turned into the more .NET like
signature int Foobar (...), this fixes bug 46392
* generator/Signature.cs: Ditto
* generator/MethodBody.cs: Ditto
* gtk/ListStore.custom: Ditto
* gtk/TextBuffer.custom: Ditto
* gtk/TreeStore.custom: Ditto
svn path=/trunk/gtk-sharp/; revision=22126
* generator/SymbolTable.cs (MangleName): Add "lock" and "callback"
to the list of names that need to be mangled. The former is a C#
reserved keyword and the latter is already used as an argument to
methods which marshal callbacks.
svn path=/trunk/gtk-sharp/; revision=21276
* generator/BoxedGen.cs : s/uint/GLib.GType
* generator/ManualGen.cs : add a ctor to pass ToNative handle name
* generator/ObjectGen.cs : s/uint/GLib.GType
* generator/Signal.cs : use GLib.GType and call OverrideVirtualMethod
* generator/SymbolTable.cs : make GType a ManualGen and update a few
ManualGens to the new signatures.
* glib/DefaultSignalHandler.cs : s/Type/System.Type
* glib/ManagedValue.cs : s/uint/GLib.GType
* glib/Object.cs : s/uint/GLib.GType, add OverrideVirtualMethod.
* glib/Type.cs : s/uint/IntPtr, add static fields for fundamentals.
make it a value type and add ==, !=, Equals, and GetHashCode.
* glib/TypeConverter.cs : use new GType statics, not fundamentals.
* glib/Value.cs : use new GType statics, not fundamentals.
* gnome/*.custom : s/uint/GLib.GType
* gtk/*Store.custom : use GType statics, not fundamentals.
* sample/Subclass.cs : s/uint/GLib.GType.
svn path=/trunk/gtk-sharp/; revision=21181
* generator/CallbackGen.cs : use new sig and isig classes.
* generator/Ctor.cs : use new sig, isig, and body classes.
* generator/ImportSignature.cs : isig code spun out from Parameters.
* generator/Method.cs : use new sig, isig, and body classes.
* generator/MethodBody.cs : spun Initialize, GetCallString,
Finish, and Exception throwing methods from Parameters.
* generator/Parameters.cs : Slayed the evilness that was CreateSignature.
It is now essentially a container for Parameter classes instead of a
tangled mess of code trying to do everything remotely related to
parameter lists. Also completely killed the VAType/IsVarArgs stuff,
as it can be done with the array and params attrs instead.
* generator/Property.cs : use new sig class.
* generator/Signature.cs : new method sig generator extracted from
Parameters class. add "params" keyword support for tagged parameters.
* gnome/Gnome.metadata : hide IconList.GetSearchPath (to be manual)
* gnome/gnome-api.xml : regen
* gtk/ListStore.custom : kill unneeded overload
* gtk/TreeStore.custom : kill unneeded overload
* gtk/Gtk.metadata : mark params/args on *store_newv
* gtk/gtk-api.xml : regenerated
svn path=/trunk/gtk-sharp/; revision=20755
* generator/CallbackGen.cs : use a temporary ret value if there
is any cleanup to be done after the call. Thanks to John Luke
for a patch which identified the problem.
svn path=/trunk/gtk-sharp/; revision=19561
* generator/Parameters.cs : mark enum pointer params as out.
need to audit if any are really arrays. [Fixes#49779]
svn path=/trunk/gtk-sharp/; revision=19153
* gdk/Gdk.metadata : mark an array param on PixbufDestroyNotify
* gdk/gdk-api.xml : regenerated
* generator/CallbackGen.cs : Handle out params in callback sigs
and ditch the object[] args handling for typed args.
* generator/Parameters.cs : more proactive PassAs logic. We now
default all simple pointer types (uint*, int*, double*, etc...)
to out params unless they are marked otherwise in the XML with a
pass_as tag or an array tag. [Fixes#32104]
svn path=/trunk/gtk-sharp/; revision=18993
* generator/OpaqueGen.cs (FromNativeReturn): just do a
new on the type. GLib.Opaque.GetOpaque was apparently an
homage to GetObject that just seems wrong.
svn path=/trunk/gtk-sharp/; revision=18893
* generator/Parameters.cs : Properly handle out params for
Object and Opaque types.
* gtk/ListStore.custom: remove out on GetValue overload
* gtk/TreeStore.custom: remove out on GetValue overload
* gtk/gtk-api.xml : regenerated
* sources/Gtk.metadata : remove some incorrect out tags
svn path=/trunk/gtk-sharp/; revision=18891
* api/gtk-api.xml : regenerated
* generator/Method.cs : gen new_flag automatically if set
* sources/Gtk.metadata : mark new_flag on Gtk.Bin.GetChild
svn path=/trunk/gtk-sharp/; revision=18736
* generator/ObjectGen.cs (Generate): check sigs.Count in addition
to the null check to determine if the signals hash should be
generated.
svn path=/trunk/gtk-sharp/; revision=18718
* Makefile.in : add gtkhtml dir.
* configure.in : expand gtkhtml/Makefile
* api/Makefile.in : remove gtkhtml-api.xml
* generator/CodeGenerator.cs : parse new --outdir, --customdir,
and --assembly-name args.
* generator/GenerationInfo.cs (Ctor): new (dir, dir,assembly) ctor
* gtkhtml/HTMLStream.custom : moved here from gtk dir
* gtkhtml/gtkhtml-api.xml : moved here from api dir
* gtkhtml/Makefile.in : gen source and build dll
* sources/gtk-sharp-sources.xml : write gtkhtml api to new dir
svn path=/trunk/gtk-sharp/; revision=18696
* generator/InterfaceGen.cs (Generate): gen the EventHandlers for sigs
* generator/Signal.cs (GetHandlerName): kill this and split it into
EventHandlerName and EventHandlerArgsName props instead of the ugly
out param hack.
(GenEventHandler): make public void and add gen_info param. open
stream with gen_info. use new *Name props.
(Generate): only gen the EventHandler if we're genning the container,
not for implementors.
svn path=/trunk/gtk-sharp/; revision=18684
* generator/CodeGenerator.cs (Main): use new ObjectGen.GenerateMappers.
* generator/GenerationInfo.cs (Ctor): new (dir, assembly) ctor
* generator/ObjectGen.cs : move hash management to Generate from Ctor,
index it on dir, and make it hold new DirectoryInfo refs. Refactor
GenerateMapper. The object mappers are now assembly based instead of
namespace based.
svn path=/trunk/gtk-sharp/; revision=18681
* generator/Signal.cs (Generate): pass gen_info to sighdnlr.Generate.
use gen_info.AssemblyName in Args instantiation.
* generator/SignalHandler.cs (Generate): use gen_info to open stream.
refactor out some local vars.
svn path=/trunk/gtk-sharp/; revision=18678
* api/gtk-symbols.xml : make GtkType a uint like GType.
* generator/CodeGenerator.cs : adopt new parser semantics
* generator/Parser.cs : move to single parser/multiple Parse. Remove
DoGenerate hack and let the CodeGenerator control this. Return
generatables instead of loading symboltable.
* generator/SymbolTable : add AddTypes method. Revamp dealiasing code.
svn path=/trunk/gtk-sharp/; revision=18570
* glib/DelegateWrapper.cs: Remove 'RemoveIfNotAlive'
and revamp the memory management to use destroy
notification.
* generator/CallbackGen.cs: Do not generate the call to
RemoveIfNotAlive.
* gtk/GtkSharp.GtkClipboardGetFuncNative,
GtkSharp.GtkClipboardClearFuncNative: Do not call
RemoveIfNotAlive.
svn path=/trunk/gtk-sharp/; revision=18163
* Makefile.in : add a gen-clean target to clean all but glue/parser.
* generator/Signal.cs : use restructured SignalHandler.
* generator/SignalHandler.cs (GetName): break up this monument to
structured programming.
svn path=/trunk/gtk-sharp/; revision=18099
* generator/Parameters.cs (CreateSignature): begin refactoring this
unholy mess. Eliminated one pass thru the param list. Eliminated
prev/curr param refs. Switched to a for loop since lookbacks are
required.
svn path=/trunk/gtk-sharp/; revision=18050
* generator/Parameters.cs : keep an ArrayList of Parameter objects
and refactor the hell out of the joint using the new Count and this[].
Still need to refactor a couple methods.
svn path=/trunk/gtk-sharp/; revision=18030
* generator/Parameters.cs (IsLength): use a switch to make the
growing list of valid len types more readable.
svn path=/trunk/gtk-sharp/; revision=18029
* generator/Parameters.cs: Handle string length parameters specified
not just as int but also signed/unsigned int, long or short
svn path=/trunk/gtk-sharp/; revision=18027
* generator/StructBase.cs:
* generator/SymbolTable.cs: Fixed the keyword base was not
mangled, also did a little refactoring.
svn path=/trunk/gtk-sharp/; revision=17702
[Equal credit to Ettore Perazzoli <ettore@ximian.com> for fixing
all the bugs in the initial patch]
* */*.custom : fix incorrect usage of new Object (IntPtr) where
Glib.Object.GetObject should've been used. add ref_owned param
to GetObject calls.
* generator/CallbackGen.cs : setup ref_owned in bodies
* generator/ClassBase.cs : add ref_owned to GetObject FromNative call
* generator/Method.cs : setup ref_owned in bodies
* generator/Property.cs : setup ref_owned in bodies
* generator/SignalHandler.cs : pass ref_owned to GetObject
* generator/StructBase.cs : setup ref_owned in bodies
* glib/Object.cs : kill Ref/Unref methods. Don't want it to be
easy for users to screw with ref counts, or make it look like they
should need to.
(GetObject): add ref_owned param and ref/unref to remain at 1
* glib/Value.cs : pass ref_owned to GetObject
svn path=/trunk/gtk-sharp/; revision=16581
* generator/Method.cs (GenerateBody): kill the "cast_type"
overload of this, since cast_type wasn't even used.
* generator/Property.cs : call simpler GenerateBody sig
svn path=/trunk/gtk-sharp/; revision=16550
* api/*-api.xml : regenerated
* gdk/Drawable.custom : DrawRectangle filled param is now bool
* generator/Parameters.cs : studlify names ending w/ uscore
* gtk/GtkSharp.GtkClipboardClearFuncNative : s/Opaque/Object
* gtk/GtkSharp.GtkClipboardGetFuncNative : s/Opaque/Object
* parser/gapi2xml.pl : put <ns>_string_* methods in Global
* sample/Scribble.cs : update to new DrawRectangle api
* sources/Gdk.metadata : hide some conflicting methods
* sources/Gtk.metadata : finally fix the Progress crap and
renames, hides and such to fix conflicts
* sources/README : mention new gtk-2.2 reqs
* sources/gtk-sharp.sources : update to new gtk-2.2 reqs
* sources/makefile : update for 2.2 api
svn path=/trunk/gtk-sharp/; revision=16254
* api/*-api.xml : regenerated
* gdk/Threads.cs : killed since the methods are now gen'd
* generator/ClassGen.cs : new, static class generatable
* generator/Parameters.cs : mangle new and byte as param names
* generator/Parser.cs : parse new <class> elements
* generator/SymbolTable.cs : add GC SimpleGen
* parser/gapi2xml.pl : static class element fixes
* parser/GAPI/Metadata.pm : add class element
* sources/Art.metadata: new, rename Affine.ToString method
* sources/Atk.metadata: rename State class
* sources/Gdk.metadata: hide Pixbuf static class for now. rename
Event and Pango static classes to avoid collisions.
* sources/Gnome.metadata: rename Gtk and Gdk static classes to
avoid collisions.
* sources/GnomeDb.metadata: rename Stock static class to
avoid collisions.
* sources/Gtk.metadata: rename Stock static class to
avoid collisions. Hide Idle class.
svn path=/trunk/gtk-sharp/; revision=16115
* generator/GenBase.cs : put #line directive after the
#region so line numbers match up.
2003-07-02 Mike Kestner <mkestner@speakeasy.net>
* generator/StructBase.cs : remove doc comments
svn path=/trunk/gtk-sharp/; revision=15873
* gconf/Value.cs: Update to use new string marshalling.
* generator/StringGen.cs, ConstStringGen.cs: Added.
* generator/IGeneratable.cs: Add new method ToNativeReturn.
* generator/CallbackGen.cs: Implement ToNativeReturn. Call
ToNativeReturn for the return statement. Fix a couple of
places where s_ret was being used incorrectly for m_ret.
* generator/ClassGen.cs, EnumGen.cs, ManualGen.cs,
SimpleGen.cs, StructBase.cs: Implement ToNativeReturn.
* generator/SignalHandler.cs: Call ToNativeReturn for the
return statement, instead of CallByName.
* generator/SymbolTable.cs: Use StringGen for gchar, char,
and gunichar, and ConstStringGen for their const variants.
Add a new method wrapper for ToNativeReturn.
(Trim): Add a special-case for const strings so that the
const is not stripped. Otherwise there is no way of
resolving the const case.
* glade/XML.custom: Update to use new string marshalling.
* glib/Marshaller.cs: Added.
* glib/GException.cs, Markup.cs, ObjectManager.cs,
Value.cs: Update to use new string marshalling.
* glib/Object.cs: Remove old g_type_name DllImport
as it is no longer used.
* glue/fileselection.c (gtksharp_file_selection_get_fileop_entry):
Mark this as const return.
* gtk/ColorSelection.custom, FileSelection.custom,
SelectionData.custom: Update to use new string marshalling.
svn path=/trunk/gtk-sharp/; revision=15286
* generator/CallbackGen.cs : use non-static symtab, kill doc comments
* generator/ClassBase.cs : use non-static symtab
* generator/CodeGenerator.cs : use non-static symtab
* generator/EnumGen.cs : kill doc comments, don't gen using System here
* generator/GenBase.cs : gen using System here for all types
* generator/InterfaceGen.cs : don't gen using System here.
* generator/Method.cs : use non-static symtab
* generator/ObjectGen.cs : kill doc comments, use non-static symtab
* generator/OpaqueGen.cs : don't gen using System here.
* generator/Parameters.cs : use non static symtab.
* generator/Parser.cs : use non static symtab. add SimpleGen's and
ManualGen's
* generator/Property.cs : use non static symtab
* generator/SignalHandler.cs : use non static symtab
* generator/StructBase.cs : use non static symtab
* generator/SymbolTable.cs : major refactoring. now uses SimpleGen and
ManualGen IGeneratables to simplify the method and prop code. Is now
instance based with a static prop to get the singleton instance, so that
a this indexer can be provided to access the IGeneratables nicely. Gearing
up to remove even more code from here by accessing IGeneratables directly.
svn path=/trunk/gtk-sharp/; revision=14687
* configure.in : bump the version to 0.10
* generator/CallbackGen.cs (GenWrapper): Update sig preparing for
external assembly wrapper generation. Kill doc comment generation.
Make marshaling delegate internal.
svn path=/trunk/gtk-sharp/; revision=14564
* generator/ClassBase.cs (GenSignals): remove doc comment param
* generator/GenBase.cs (CreateWriter): alter generated file comment
* generator/InterfaceGen.cs (CreateWriter): remove doc comments
* generator/ObjectGen.cs (Generate): use new GenSignals sig
* generator/Signal.cs : make signal marshalers internal and remove
doc comments.
* generator/SignalHandler.cs : make signal marshalers internal and remove
doc comments.
* gnome/CanvasProxy.cs : use Gnome.voidObjectSignal since the gtk one is
inaccessible now.
svn path=/trunk/gtk-sharp/; revision=14385
* generator/CallbackGen.cs: the new generated wrappers have:
-(optional) Field of the same type returned by the callback.
-A call to RemoveIfNotAlive at the beginning. It returns true,
return the dummy field.
-Added an object to the ctor signature and pass it to the base
class.
* generator/Ctor.cs: added a Params property.
* generator/Method.cs: set Static property in Parameters if the method
is static.
* generator/Parameters.cs: added Static property. The call creation of
the delegate wrapper (if applicable) uses the new signature. Pass a null
as object is the method is static.
* generator/StructBase.cs: set Static for the parameters of the ctors.
* glib/DelegateWrapper.cs: the ctor takes an object (the one creating
the wrapper or null) and creates a weak reference to it. Store it in
a static Hashtable (this way the wrapper itself is not garbage
collected).
(RemoveIfNotAlive): called from the native delegate callbacks. If the
target of the weak reference has been garbage collected, removes itself
from the hashtable to let the GC dispose this instance and returns true.
* gdk/Pixbuf.custom:
* gtk/Clipboard.custom:
* gtk/GtkSharp.GtkClipboardClearFuncNative.cs:
* gtk/GtkSharp.GtkClipboardGetFuncNative.cs:
* glade/XML.custom: changed delegate wrappers to match the new
signature.
svn path=/trunk/gtk-sharp/; revision=13237
* generator/SignalHandler.cs : Added Patch submitted by
Mark Crichton <crichton@gimp.org>, to get GtkMozEmbed
bindings working.
svn path=/trunk/gtk-sharp/; revision=13043
* generator/SignalHandler.cs: the generated Dispose method now calls
base.Dispose and always disconnects the handler. Thanks to
Petr Danecek <danecek@ucl.cas.cz>.
svn path=/trunk/gtk-sharp/; revision=12060
* generator/Parser.cs: use XmlDocument.Load (Stream). The one using
(String) expects an uri.
* generator/Signal.cs: always remove the delegate from the signal
callback (prior to this, the last handler was not being removed).
Dispose the callback (ie, disconnect from the signal) when there are
no registered delegates to handle it.
* generator/SignalHandler.cs: added 2 new fields to hold the instance
and the handler ID. The finalization is now done in Dispose and
disconnects the signal handler when no delegate will handle the signal.
Changed gobject-2.0 to libgobject-2.0-0.dll.
* glib/SignalCallback.cs: implemented IDisposable interface.
svn path=/trunk/gtk-sharp/; revision=11976
* generator/ObjectGen.cs : gen GLib.Value ctor, not uint
* glib/Object.cs : use GLib.Type in RegisterGType and
make the g_object_new ctor use GLib.Type.
* glib/Type.cs : new thin wrapper for GValue type
* glib/*.cs : s/Type/System.Type
svn path=/trunk/gtk-sharp/; revision=11920