30e653825c
weeks. I'll be posting an update to gtk-sharp-list in a bit to describe my latest psychosis. svn path=/trunk/gtk-sharp/; revision=1797
397 lines
17 KiB
Text
397 lines
17 KiB
Text
2002-01-04 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* makefile : switch to the new generator.
|
|
* generator/CodeGenerator.cs : New main program class.
|
|
* generator/IGeneratable.cs : Interface for generation methods/props.
|
|
* generator/EnumGen.cs : Subclass of IGeneratable for enums.
|
|
* generator/Parser.cs : The XML parser.
|
|
* parser/gapi_pp.pl : A source preprocessor for api extraction.
|
|
* parser/gapi2xml.pl : Produces Xml document for GObject based APIs.
|
|
|
|
2001-12-31 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : Fix EOL handling for DOS \r\n patterns as
|
|
reported by David Dawkins.
|
|
|
|
2001-12-17 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* makefile : Add the pango subdir.
|
|
* codegen/defs-parse.pl : Add a buttload of type entries to %maptypes
|
|
and %marshaltypes. Ignore props, sigs, and methods for non GObject
|
|
types. Turn on all classes. Major beefup of struct generation. Start
|
|
to use the new sighandlers. Rip out const- types. Handle Unicode
|
|
string marshalling.
|
|
* codegen/gdk-structs.defs : Regenerated.
|
|
* codegen/get-structs-from-source.pl : Handle typedef x y; Suppress
|
|
structs with "Private" in the typename. Handle multiple levels of
|
|
typedeffing. Handle function pointers. Suppress comments sanely.
|
|
* codegen/gtk-props.defs : Fill out the rest of the classes.
|
|
* codegen/gtk-signals.defs : Fill out the rest of the classes.
|
|
* codegen/gtk-structs.defs : First pass. Hacked obscenely.
|
|
* codegen/hardcoded.defs : Kill. No hardcoding needed anymore.
|
|
* codegen/makefile : Use the new defs files.
|
|
* codegen/pango.defs : Ripped from pygtk.
|
|
* codegen/pango-structs.defs : New struct defs gen'd with my tool.
|
|
* codegen/pango-types.defs : Ripped from pygtk.
|
|
* gdk/makefile : Add the pango-sharp.dll ref.
|
|
* gdk/SimpleEvent.cs : Killed.
|
|
* glib/SimpleSignal.cs : Killed.
|
|
* gtk/makefile : Add the pango-sharp.dll ref.
|
|
* gtk/Widget.cs : Killed.
|
|
* pango/makefile : New build dir.
|
|
|
|
2001-12-11 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/get-structs-from-source.pl : New define-struct extractor.
|
|
* codegen/gdk-structs.defs : generated defs with a few hand edits.
|
|
|
|
2001-12-04 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : Index %structs by cname, not name. Derive
|
|
structs from class to facilitate marshalling since Value types can't
|
|
use the Marshal.PtrToStructure method. Generate StructLayout attr
|
|
for struct class defs. Stuff the signal args into a SignalArgs inst
|
|
to pass to the EventHandlers.
|
|
* sample/HelloWorld.cs : some cleanup and temporary signal playcode.
|
|
|
|
2001-12-01 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* makefile : Make ROOT /cygdrive/, not //.
|
|
|
|
2001-11-25 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl (get_sighandler): gen the helper class. arg
|
|
passing and return value handling need beefing up still.
|
|
* glib/SignalArgs.cs : New arg passing/ return value handling class.
|
|
* glib/SignalCallback.cs (dtor): kill, this will be gen'd in the
|
|
subclasses. (ctor): prune down to two params.
|
|
|
|
2001-11-24 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : mkdir the glib/generated dir.
|
|
(gen_signal): Call new get_sighandler sub. Doesn't use the returned
|
|
value yet. s/event/ev3nt on arg names.
|
|
(get_sighandler): new sub to lookup or gen a signal helper/delegate.
|
|
Only generates the delegate so far.
|
|
* codegen/hardcoded.defs : Added a stub for Gdk.Event.
|
|
* gdk/Event.cs : Killed, now a generated struct.
|
|
* gdk/SimpleEvent.cs (SimpleEventCallback): Use Marshal.PtrToStructure
|
|
to create the Event, not a ctor(IntPtr).
|
|
* glib/SignalCallback.cs : New abstract base class for signal helpers.
|
|
|
|
2001-11-14 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : Add System.Collections to usings.
|
|
s/event/signal. Add gen_signal sub and call it from gen_object.
|
|
Mangle method names that collide with signal names by prepending
|
|
Emit to the method name.
|
|
* codegen/makefile : add gtk-signals.defs to the build.
|
|
|
|
2001-11-13 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/get-signals-from-source.pl : My own little perl signal
|
|
parser.
|
|
* codegen/gtk-signals.defs : Ripped the GtkWindow signals into here
|
|
to goof with.
|
|
|
|
2001-11-10 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : Fix String prop generation code.
|
|
* gtk/Window.custom : Fix ctor param casting error.
|
|
|
|
2001-11-09 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : Use the @ctors list to determine if a class
|
|
is abstract. There is an abstract indicator in the new defs format
|
|
description, but it doesn't appear in the defs files currently. This
|
|
method should be reliable though, even in the long term. Use the same
|
|
check to determine if ctor(IntPtr obj) should be gen'd.
|
|
|
|
2001-11-09 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : Now genning Window, AccelGroup, Bin, and
|
|
GdkPixbuf classes to peel the csc error onion. Explicitly add GObject
|
|
to the "exists ($objects{...})" branches, since GObject is a hard
|
|
coded Class.
|
|
|
|
2001-11-08 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : Build a structs hash and gen the structs
|
|
after the first pass of the defs. For structs and functions, mangle
|
|
the 100s of params/fields named object to objekt. Insert using stmnts
|
|
for structs too.
|
|
* codegen/hardcoded.defs : Add GtkAccelEntry struct.
|
|
|
|
2001-11-07 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl (gen_object): Insert using statements. Insert
|
|
class members from corresponding .custom file.
|
|
* gtk/Window.custom : Renamed file from Window.cs. Removed all the
|
|
automatically generated members. This will be the mechanism used to
|
|
improve upon the mechanically generated binding.
|
|
|
|
2001-11-05 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl (gen_object): Generate a ctor (IntPtr obj) for
|
|
every object. This is a wrapper constructor for use by an Object
|
|
manager which will be called by GLib.Object.GetObject eventually to
|
|
wrap raw GObject pointers returned by methods/props.
|
|
|
|
2001-11-04 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : struct generation. Added float and double
|
|
type mapping entries.
|
|
* codegen/hardcoded.defs : GdkGeometry definition. define-struct
|
|
doesn't appear to be supported in the current defs files. This file
|
|
will be used for manual definition of unsupported defs.
|
|
* codegen/makefile : add hardcoded.defs.
|
|
|
|
2001-11-02 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : define-struct detection. Partial ctor
|
|
support. Still need to deal with ctor signiature collisions.
|
|
Refactored gen_method to share get_param_strings with ctors.
|
|
|
|
2001-10-30 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/defs-parse.pl : streamline mkdir stuff. Prune the object
|
|
list back to just Window for now. Suppress generation of the Prop
|
|
get/set accessor methods.
|
|
* codegen/gdk-types.defs : Updated the 2button/3button event types
|
|
since I don't feel like automangling them now.
|
|
* gdk/Event.cs : Killed the now redundant EventType declaration.
|
|
* glib/Object.cs : Override the Equals and GetHashCode methods.
|
|
|
|
2001-10-25 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/Object.cs : Added Get|SetProperty methods for Object
|
|
properties.
|
|
|
|
2001-10-25 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* codegen/get-props-from-source.pl : Temporary (possibly) defs
|
|
generator for props. Will probably kill this when the official
|
|
defs support props.
|
|
* codegen/defs-parse.pl : Added object-based aggregation of
|
|
defs. Generate the class shells, methods, and props.
|
|
* codegen/gdk-types.defs : ripped from pygtk.
|
|
* codegen/gtk.defs : ripped from pygtk.
|
|
* codegen/gtk-props.defs : some props defs.
|
|
* codegen/makefile : add the new defs files.
|
|
|
|
2001-10-11 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* makefile : Add the codegen directory
|
|
* codegen/defs-parse.pl : Moved here from topdir and updated to parse
|
|
the new defs format for enums and flags.
|
|
* codegen/gtk-types.defs : Borrowed from pygtk.
|
|
* codegen/makefile : new
|
|
* gtk/makefile : remove generation step.
|
|
* gtk/gtk.defs : removed, now in codegen dir.
|
|
|
|
2001-10-07 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* gtk/Button.cs : Some nomenclature changes. s/EmitClicked/Click, etc.
|
|
We need a consistent way to deal with naming clashes in gtk's method
|
|
and signal namespaces. When clashes exist, events will be made past
|
|
tense and methods to programatically emit events will be the present
|
|
tense (e.g. Clicked event and Click method).
|
|
|
|
2001-10-07 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/Object.cs : Added public Handle property. It would be nice
|
|
if I could make the RawObject public for get and protected for set,
|
|
but that doesn't appear to be possible with C# properties.
|
|
* gtk/Container.cs : New class with 2 of the 3 props and the Add/Remove
|
|
methods only implemented.
|
|
* gtk/Widget.cs : Added SizeRequest prop which is a combination of
|
|
HeightRequest and SizeRequest. Embrace and extend gtk...
|
|
* gtk/Window.cs : Derive from newly added Container subclass.
|
|
* sample/ButtonApp.cs : Simple tire-kicking app.
|
|
|
|
2001-10-06 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* gtk/Button.cs : Implemented 3 constructors, 5 methods, 4 properties,
|
|
and 6 signals. Button API is 100% implemented. Need to implement
|
|
some Container methods to be able to complete testing.
|
|
|
|
2001-10-05 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* defs-parse.pl : A little automation for the binding. The enums and
|
|
flags can be painlessly generated from defs files.
|
|
* gtk/makefile : use defs-parse.pl to produce generated.cs.
|
|
* gtk/.cvsignore : hush generated.cs
|
|
* gtk/gtk.defs : unceremoniously ripped from gtk+ HEAD.
|
|
* gtk/Window.cs : Killed the WindowType enum which is now generated.
|
|
|
|
2001-10-04 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/SimpleSignal.cs : Reworked to parallel SimpleEvent.
|
|
|
|
2001-10-04 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* gtk/Widget.cs : Implemented all the bool, string, and int props.
|
|
|
|
2001-10-04 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* gdk/SimpleEvent.cs : Temporarily uncomment the GCHandle code until
|
|
a layout is ready and exceptions can be avoided.
|
|
* gtk/Widget.cs : Killed all the signal and event attaching methods.
|
|
They never belonged here, and now they exist in the SimpleEvent.
|
|
Add a Signals hash to hold refs of the Signal handlers. Killed default
|
|
ctor and the dtor. The event Add/Remove methods now create a
|
|
SimpleEvent, stuff it in the hash, and remove it when the last handler
|
|
disappears.
|
|
|
|
2001-10-04 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* HACKING : Little bit of cleanup.
|
|
* gdk/SimpleEvent.cs : Redesigned a bit. Docs. Replaced refcounting
|
|
mechanism with an instance hash and added ctor/dtor. This class
|
|
now completely encapsulates the signal attachment and forwarding
|
|
mechanism for GdkEvent based signals. It attaches to the raw signal,
|
|
maintains a ref to the associated event handler, and uses the static
|
|
callback to activate the event handler on signal receipt.
|
|
* sample/makefile : killed one last CSC explicit reference.
|
|
|
|
2001-10-02 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/Value.cs : Tried adding CallingConvention.Cdecl to all the
|
|
DllImports, but still couldn't get reliable Propery setting without
|
|
periodic NullReference exceptions. When all else fails, drop back
|
|
and punt.
|
|
* glib/Object.cs : Rewrote Set|GetProperty methods. Now they use
|
|
g_object_get|set and don't rely on GValues. The int, bool, and string
|
|
prop types are now working reliably.
|
|
* gtk/Window.cs : Update all Properties to use new GLib.Object
|
|
signatures.
|
|
* sample/HelloWorld.cs : added some more property usage for testing
|
|
purposes.
|
|
|
|
2001-09-29 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/Value.cs (int ctor): New constructor for int-based values.
|
|
(int exp cast): New explicit cast operator for Val to int conversion.
|
|
* gtk/Window.cs (DefaultHeight): New prop.
|
|
(DefaultWidth): New prop.
|
|
|
|
2001-09-28 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/Object.cs (GetProperty): New, gets props from the raw obj.
|
|
(SetProperty): New, for setting props on the raw obj.
|
|
* glib/Value.cs (type ctor): New needed for get accessors.
|
|
*gtk/Window.cs (AllowGrow): Uncommented and filled out.
|
|
(AllowShrink): Uncommented and filled out.
|
|
(DestroyWithParent): Uncommented and filled out.
|
|
(Modal): Uncommented and filled out.
|
|
(Resizable): Added. All the bool Props work now.
|
|
|
|
2001-09-28 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/Value.cs (~Value): New destructor to release g_malloc'd space.
|
|
(default ctor): New default ctor just mallocs without init.
|
|
(String ctor): call default
|
|
(bool ctor): call default
|
|
(Init): New post construct initializer.
|
|
(String exp cast): Replaces ToString method.
|
|
(bool exp cast): New for bool extraction.
|
|
(MarshalAs): Renamed prop was RawValue.
|
|
|
|
2001-09-27 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* glib/Object.cs : Docs for everything. Made Objects hash private.
|
|
Some coding style cleanup. Pruned some of the TODO methods from the
|
|
commented header listing to make a more relistic picture of the
|
|
remaining effort. Some GSignal stuff probly belongs here too.
|
|
([Get|Set]Data): Killed some DllImports and set up methods to store
|
|
arbitrary data in a managed hash table.
|
|
|
|
2001-09-27 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
*.cs : Added .dll extension to a load of DllImports.
|
|
* makefile : now can make the project with one make windows and on
|
|
both NT and Win98.
|
|
* gdk/Event.cs : Fixed some invalid symbol names and commented out a
|
|
load of stuff.
|
|
* gdk/SimpleEvent.cs : Relocated file from unnecessary subdir and fixed
|
|
several event keyword clashing bugs. Need to relocate the EventArgs
|
|
class out of here into its own file. Fixed loads of typos.
|
|
* glib/Object.cs : Killed the Constructor, this should be a purely
|
|
abstract class. made Events property public until I can fix the Signal
|
|
proxying system's broken reliance on it.
|
|
* glib/SimpleSignal.cs : Relocated, namespaces, and named this Class.
|
|
Loads of bugfixes. Still doesn't work worth a damn, but it builds.
|
|
* glib/TypeFundamentals.cs : New enum for use in the Value code.
|
|
* glib/Value.cs : Implemented a more opaque approach with heap allocated
|
|
memory and g_value_init and friends. Still doesn't work. Will probably
|
|
switch to a more C# like approach and avoid GValues altogether.
|
|
* gtk/Button.cs : Commented out some brokeness until I can get around
|
|
to fixing it later.
|
|
* gtk/Widget.cs : Commented out a bunch of the new signal stuff until
|
|
I get around to it.
|
|
* gtk/Window.cs (Title): using g_object_set until I work out the
|
|
details of the new Value/SetProperty system. It looks like g_object_set
|
|
will end up being easier to use via PInvoke.
|
|
|
|
2001-09-25 Bob Smith <bob@thestuff.net>
|
|
|
|
* Added refcounts to delegates to make sure they can be unpined when
|
|
not needed.
|
|
|
|
2001-09-21 Bob Smith <bob@thestuff.net>
|
|
|
|
* Signal system totally reworked. It should be stable now.
|
|
* glib/Object.cs: Rewrote the way the wrapper is kept track of.
|
|
|
|
2001-09-20 Bob Smith <bob@thestuff.net>
|
|
|
|
* glib/ObjectManager.cs: Nuked.
|
|
* glib/Object.cs: Keep track of wrapper.
|
|
* gtk/Object: First stab at better signal system. Should reduce
|
|
number of pins nessisary.
|
|
|
|
2001-09-19 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
* HACKING : New rulez.
|
|
* NOTES: Killed. We have a mailing list now for this kind of stuff.
|
|
* glib/makefile : New, to build the new glib-sharp.dll target.
|
|
* glib/Object.cs : (GetObject): Commented out. Design problems here.
|
|
IntPtr's can't be used in the manner this code attempts to use them.
|
|
(Data prop): Commented out. Apparently keyed properties are not
|
|
supported.
|
|
(Object prop): Renamed RawObject, and made it protected.
|
|
(Events): Fixed to cause list to be initialized if null and then
|
|
return the list.
|
|
* glib/ObjectManager.cs : commented out entirely. Not sure what this
|
|
code is trying to accomplish and it doesn't compile.
|
|
* glib/Value.cs : New attempt at implementing GValues. Doesn't work
|
|
yet.
|
|
* gtk/Button.cs : Updated to use RawObject.
|
|
(Clicked event): s/EmitDeleteEvent/EmitClickedEvent.
|
|
(Button(String)): s/gtk_label_new_with_lable/gtk_button_new_with_label.
|
|
* gtk/Label.cs : Fixed some yank and paste errors where 2 value params
|
|
were getting passed to all the set_* property methods.
|
|
* gtk/Window.cs : Fixed hanging GTK namespace ref.
|
|
* sample/HelloWorld.cs : Fixed hanging GTK namespace ref.
|
|
|
|
|
|
2001-09-18 Bob Smith <bob@thestuff.net>
|
|
|
|
* glib/Object.cs : Moved parts of gtk/Object.cs here, and added
|
|
static GetObject method and a Data property.
|
|
* glib/ObjectManager.cs : New.
|
|
* gtk/Object.cs : removed some GObject wrapping code.
|
|
* gtk/*.cs : Updated namespace from GTK to Gtk.
|
|
|
|
2001-09-18 Bob Smith <bob@thestuff.net>
|
|
|
|
* gtk/Object.cs : Added EventList and Object properties.
|
|
* gtk/Widget.cs : Updated event emission logic.
|
|
* gtk/Window.cs : added Window(IntPtr) constructor.
|
|
* gtk/Button.cs : New. Partial implementation of Button class.
|
|
* gtk/Label.cs : New. Partial implementation of Label class.
|
|
|
|
2001-09-17 Mike Kestner <mkestner@speakeasy.net>
|
|
|
|
Initial Import. Partial implementation of Object, Widget, Window,
|
|
and Application classes and HelloWorld.cs sample app.
|