2004-08-04  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Upped the QtRuby version to 1.0.0 - it must work now then..

2004-08-02  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added 'long long' and 'unsigned long long' marshallers

2004-07-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The smokeruby_mark() gc marking f'n now marks the QTableItems owned
	  by a QTable so they don't get garbage collected, even if there are no
	  remaining references in the user code.

2004-07-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added a template based method for QValueList marshallers, and several
	  QValueList types.

2004-07-28  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Removed any marshaller types that weren't in the Smoke runtime from the
	  type name to marshaller function lookup table.

2004-07-28  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* If a class doesn't have a virtual destructor, then no mapping was being
	  kept from the C++ instance to the corresponding ruby value. If the class
	  had virtual method callbacks, this meant that the ruby instance couldn't
	  be found, and the callback couldn't be made.
	
	* Hence, the Qt::ToolTip callback in examples/qt-examples/tooltip didn't
	  work, as that class doesn't have a virtual destructor.

	* Added an 'isEnum()' function to use when matching args in overloaded
	  method resolution.

	* QCString arg types are chosen in preference to QByteArray ones, matching
	  against ruby strings, when resolving an overloaded method call.

	* Qt::Enums and Qt::Integers can be marshalled to uints, longs and ulongs as
	  well as ints.
	  
	* Added a '==' operator to Qt::Enums so they can be compared with ruby Integers

2004-07-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Qt::Integer arithmetic and bit operations return Qt::Integers, rather
	  than ruby Integers so that ops can be nested as for Qt::Enums.

2004-07-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The recently added Qt::Integer bit operators were returning a ruby Integer
	  type. When they were nested, the Integer didn't know how to convert the
	  Enum it was being or'd with to an Integer.
	
	* The solution is to add bit operators to the Enum class which return Enums
	  rather than Integers.

	* The following code didn't work:
	    
	    def initialize(message)
	        super(nil, "passivedlg",
	                Qt::WStyle_Customize | Qt::WX11BypassWM | Qt::WStyle_StaysOnTop |
	                Qt::WStyle_Tool | Qt::WStyle_NoBorder)

2004-07-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Replaced QString casts to 'const char *' with latin1() calls

2004-07-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The Qt::Enum class was missing bit operations, so various bit methods
	  were added to Qt::Enum's superclass, Qt::Integer.
	
	* This was causing this line from examples/uimodules/uidialogs.rb to fail:

	    dlg =   KDE::DialogBase.new(parent, "sample_dialog", false, caption,
                                        KDE::DialogBase::Ok | KDE::DialogBase::Cancel, 
	                                KDE::DialogBase::Ok, true )

2004-07-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added error messages for invalid slot or signal declarations

2004-07-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The standard ruby error message for missing constants and methods is
	  now used when they can't be found in the Smoke library. Removed Alex's
	  comment about the previous approach, now I agree this is the best way 
	  to show errors.

	CCMAIL: me@lypanov.ne

2004-07-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added qDebug(), qFatal() and qWarning() module methods

2004-07-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The parsing of types passed to slots, (or returned from dcop slots) didn't
	  work with template types containing commas such as 'QMap<QString,QString>'.
	* Added 'QMap<QString,QString>&' and 'QMap<QString,QVariant>&' to the
	  handlers.cpp string to marshaller lookup table.

2004-07-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added marshallers for QMap<QString,QString> and QMap<QString,QVariant> to and from ruby hashes

2004-07-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The error messages for missing methods or missing constants now give the
	  name of the missing item.
	* For example, this incorrect line:

	    color_group.setColor( ColorGroup::MyMissingConst, blue )
	  
	  Gives this error:

	    splitter.rb:16:in `const_missing': unresolved constant 
	        reference MyMissingConst (ArgumentError)

	* Implements suggestion from Jeff on the kdebindings list

	CCMAIL: kde-bindings@kde.org

2004-07-19  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added Qt::Enum type. Before a C++ enum was being marshalled to a ruby
	  Integer, and the type name of the enum was lost. A Qt::Enum is a subclass
	  of Integer with an extra type name.
	* This fixes a problem with overloaded method resolution where two methods differ
	  only be an enum type such as this:

	    # KPasswordEdit(EchoMode echoMode, QWidget *parent, const char *name);
	    # KPasswordEdit(EchoModes echoMode, QWidget *parent, const char *name);

	    pw2 = KDE::PasswordEdit.new(KDE::PasswordEdit::ThreeStars, page, "")

2004-07-17  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* After a non-const string arg was passed to a method, the value of the QString
	  is copied into the ruby value. But it wasn't being correctly converted to the
	  correct string format according to $KCODE.
	* QString to ruby string conversions in QStringLists were not localised either.

2004-07-14  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Removed superfluous '(void *)' cast which was causing compilation
	  problems with gcc 3.4
	* Fixes problem reported by Jochen Immendrfer on comp.lang.ruby
	  CCMAIL: kde-bindings@kde.org

2004-07-11  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Qt eucJP and Shift-JIS codecs used to support ruby $KCODE values of 's' 
	  for SJIS and 'e' for EUC

2004-07-08  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added support for strings in QtRuby programs being written in UTF-8.
	  Use the '-Ku' command line option or '$KCODE=u' in the program.
	* Removed recently added QChar marshalling as it wasn't very i18n friendly

2004-07-07  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added QChar marshalling

2004-07-06  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fix for passing C++ 'bool*' and 'bool&' argument types
	  There is a similar problem for bool arg types as with ints, and the mutable
	  Qt::Boolean class can be used like this:
		
	    # QFont getFont(bool * ok, const QFont&initial, QWidget* parent = 0);		
		
	    ok = Qt::Boolean.new
	    font = Qt::FontDialog.getFont(ok, Qt::Font.new("Helvetica [Cronyx]", 10), self)
	    if !ok.nil? 
                # font is set to the font the user selected
	    else 
                # the user canceled the dialog
	    end
		
	  Use 'nil?' to test the value returned in the Boolean
	* Signal and slot type signatures are 'normalized' and any unwanted white space
	  removed
	* Fixed problem with QByteArray arg type matching in overloaded method resolution

2004-07-04  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fix for passing C++ 'int*' and 'int&' argument types
	  Ruby passes numeric values by value, and so they can't be changed when passed to a
	  method. The Qt::Integer class provides a mutable numeric type which does get updated
	  when passed as an argument. For example, this C++ method 'findByFileContent()':
		
		# static Ptr findByFileContent( const QString &fileName, int *accuracy=0 );

		acc = Qt::Integer.new(0)
        	fc = KDE::MimeType.findByFileContent("mimetype.rb", acc)
		
	  It supports the arithmetic operators, and so expressions such as 'acc + 3' 
	  will work.

2004-07-02  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Replaced obsolete STR2CSTR() calls with StringValuePtr()

2004-06-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The internal findAllMethods() method now returns nil rather than an empty array
	  if the given classid is greater than 'smoke->numClasses'. Otherwise, it wasn't 
	  possible to distinguish between a class with no methods, or reaching the end of
	  the classes array.

2004-06-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added QStrList marshalling

2004-06-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Improved Garbage Collection, dispose() and isDisposed() methods
	  - When a ruby instance is garbage collected, the underlying C++ instance will only be
	    deleted if it isn't 'owned' by a parent object. Normally this will 'just work', but
	    there are occasions when you need to delete the C++ ahead of garbage collection, and
	    whether or not it has a parent. Use the dispose() and isDisposed() methods like
	    this:
		
		item0.takeItem(item1)  
		item0.insertItem(item1)  
		
		item2.dispose
		if item2.isDisposed
		    puts "item2 is disposed"
		end

	  - Fixes problem reported by Hans Fugel
	
2004-06-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The marshalling TypeHandler function pointers are now looked up in a
	  QAsciiDict, rather than a ruby Hash.
	* Some unused functions removed
	* QtRuby version upped to 0.9.8

2004-06-09  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* New flags were added for Smoke methods - mf_internal and mf_copyctor.
	  This allows copy constructors which are only used internally by the ruby
	  runtime, to be excluded from the standard api.


2004-05-12  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* When ARGV was passed to the Qt::Application constructor, it was being
	  altered, and the name of the ruby program added as a first entry. The
	  constructor now uses a copy of the array, and ARGV is left unchanged.

2004-05-03  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added a '-kde' option to the rbuic tool to generate require 'Korundum'
	  instead of require 'Qt' statements, and use KDE widgets.

2004-04-30  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Applied patch from Marek Janukowicz.
	* The patch fixes some perlisms, that caused errors on loading a Ruby file
	  generated from .ui file for Qt::MainWindow subclass

2004-04-20  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The rbuic now correctly names KDE widgets with a KDE:: prefix
	* If the rbuic -x option is used, a KDE top level is generated if any
	  KDE widgets have been found.

2004-04-17  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed bug in rbuic generated code for setResizeMode()

2004-04-05  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Improved classname resolution for QListViewItem and QTableItem subclasses using rtti() calls

2004-03-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Ruby slots and signals are now inherited correctly
	* This causes problems with code generated by the rbuic utility
	* Fixes bug 78273 reported by Imobach Sosa

2004-03-10  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* When a mutable, non-const QString, int*, int&, bool* or bool& is passed
	  to a method, the corresponding ruby value is now updated after the 
	  method call.
	* Some f'ns are no longer static, so that the korundum extension can link
	  against them.

2004-03-03  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The f'n new_qobject is no longer static, and can be called from korundum

2004-03-01  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed bugs in QCString, QString and QByteArray marshalling.
	  - When a C++ method with a mutable, non-const QCString arg type 
	    is called from ruby, the C++ arg value is copied back into the
	    corresponding ruby arg VALUE after the call.
	  - A pointer to a locally allocated QString was being returned,
	    giving memory corruption problems.
	* The default debug level in qtruby.rb is DebugLevel::OFF, otherwise
	  very verbose error messages are produced.

2004-01-28  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed bug where a QCString was being ranked equally with a QString,
	  when resolving ambiguous method overloading. Caused the KDE::URL
	  constructor to fail with a string arg.

2003-11-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added DOM:: namespace for the DOM:: classes in the Smoke library.
	* The scope operator in nested classnames is now '::' rather
	  than '__', so changed the qtruby runtime to expect that.

2003-11-13  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added the KillerFilter event filtering example from chapter 16
	  of 'Programming with Qt'
	* Improved classname resolution via the Qt rtti mechanisms in
	  QObject, QEvent and QCanvasItem. This fixed a problem in the
	  KillerFilter example when a QMouseEvent was passed to the ruby 
	  event handler, it was being instantiated as a ruby Qt::Event, 
	  rather than a Qt::MouseEvent.

2003-11-11  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Improved nil argument matching, and nil can match any type now
	  not just classes. Translated the code from the Qt.pm in PerlQt,
	  after discussion on the kde-perl list.
	* Fixed bug in rbuic where a C++ 'QString::null' was "" in ruby, and
	  should have been a nil.

2003-11-08  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Finally fixed huge leak, causing the progress.rb example to grow by
	  1 Mb a minute.
	* Added a cache from ruby classname to Smoke class id
	* Speeded up method selector look ups
	* Put some C++ code inside blocks to ensure that the destructor clean
	  up code was called, when the current f'n longjmp's up the stack rather
	  than returns normally.
	* QtRuby looking good, raised the version to 0.9.6 to celebrate

2003-11-07  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed some memory leaks
	* Ensured that any instance 'owned' by ruby, ie with the the allocated
	  flag set to true, is always added to the pointer_map.
	  Otherwise, the same C++ instance can be wrapped twice and will be deleted
	  twice.

2003-11-03  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* When marshalling a const ref type to a ruby VALUE, it is now copied
	* Applied some fixes for construct_copy() from the PerlQt version of
	  handlers.cpp
	* Fixed some minor bugs in the progress.rb Qt example

2003-11-03  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added method selector caching for class methods and constructors,
	  although performance still 'sedate' compared with C++ or Perl.

2003-10-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The smokeruby_mark() f'n now marks the QListViewItems in a QListView
	* Fixed a QLayoutItem crash in smokeruby_free()

2003-10-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The smokeruby_mark() f'n was completely wrong, as it is only called if 
	  the current object is already marked. So marking the current object
	  doesn't make a lot of sense. Instead, if the instance is a kind of
	  QObject then its childeren are marked.
	* The smokeruby_delete() object doesn't delete instances which have
	  parents of one sort or another.
	* Made some fixes to the tutorial examples
	* Removed equality '==' operator overloading as it only expects a single
	  arg in ruby, and not two.

2003-10-22  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Changed some error messages in do_method_missing() to be 'debug only' for now.

2003-10-22  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Got the checklists.rb example working after bug report from Mikhail Yakshin
	  - Corrected some coding errors in the example itself.
	  - The arg matching code in method_missing() has been improved and simplified.
	  - In the overloaded arg type resolution matching, an enum is type 'long'
	  - A class which matches exactly is a better match than a subclass.
	    Multiple matches are allowed as long as there is a 'best match'.
	  - Operator overloading now looks for methods of the form 'operator+=',
	    'operator-=' etc in the Smoke runtime.

2003-10-14  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed serious random crash problem
	  - qt_invoke() and qt_emit() were not calling super if a ruby signal or
	    slot hadn't been found, which stopped C++ signals from working. 
	  - This prevented destroy() signals from invoking event filter list clean
	    up when a QObject was deleted, leaving deleted instances in the list.
	  - 'QUObject*' args are now marshalled as a ruby list with a single
	    entry of a VALUE wrapping the pointer.
	* The ruby ALLOCA_N macro is no longer used as it is based on alloca(),
	  which doesn't seem a good idea. malloc(), calloc() and free() are used
	  instead

2003-10-11  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added khtml:: namespace, although it isn't in the SmokeKDE runtime yet
	* Improved method_missing error messages if a method can't be resolved

2003-10-09  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added KIO:: and KParts:: namespaces for the new classes in libsmokekde

2003-10-08  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Korundum KDE ruby extension 
	  - made various changes so it can be linked against the QtRuby code

2003-09-18  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Removed leading 'K' from class names of when adding to KDE:: namespace.
	  As per Germain Garand's suggestion on the kde-bindings list:

	  ..actually, I used the same scheme as for Qt when possible, that is:
	        $class =~ s/^Q/Qt::/ or
	        $class =~ s/^K/KDE::/ or
	        $class = "KDE::" . $class
	        unless $class eq "Qt";

2003-09-18  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added support for KDE classes under module KDE:: for use with
	  the new libsmokekde.so. You can now write KDE programs in Ruby,
	  here is Hello World:

	    about = KDE::KAboutData.new("one", "two", "three")
	    KDE::KCmdLineArgs.init(1, ["four"], about)
	    a = KDE::KApplication.new()
	    hello = KDE::KPushButton.new(nil) { setText "Hello World" }
	    a.setMainWidget(hello)
	    hello.show()
	    a.exec()

2003-09-14  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The rbuic -embed option finally works. Fixed QByteArray marshalling.

2003-09-13  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Improved the rbuic -embed option, and added some fixes

2003-09-12  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* More passing blocks to constructors fun! You can now also pass 
	  an arg to the block, and it will be run in the context of the arg:
		
		w = MyWidget.new { |theWidget| theWidget.setCaption "foobar" }

	I got this idea from the FXRuby bindings, from the ChangeLog:

	"This approach has the advantage that the initialization code now has
	access to the outer scope, as blocks normally would. Thanks to
	Rich Kilmer for this suggestion."

	If you don't pass an arg to the block, the block is run in the context 
	  of the new instance as before.

	* Debugging left in handlers.cpp (must stop doing this)

2003-09-12  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Marshallers now return Qnil, rather than Qundef (for internal use only)

2003-09-10  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Improved garbage collection with various 'ad hoc' rules from the
	  QtJava bindings about when it's ok/not ok to destruct an instance.
	  Not always just a 'parent() != 0' check in Qt.

2003-09-10  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added QByteArray <-> Ruby string marshaller

2003-09-09  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Blocks can now be passed to constructors, like this:
	    w = MyWidget.new { setCaption("foobar") }

2003-09-08  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added method selector caching, scribbling may be slightly faster..

2003-09-08  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* GC getting closer to working. Debugging code improved.

2003-09-08  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* From below 'watch out for extra crashes!' - indeed! Have now disabled
	  smokeruby_free() and smokeruby_mark() until garbage collection works.

2003-09-08  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* The pointer_map is now a QPtrDict rather than a ruby Hash, and
	  the entries are weak references. An implementation was tried 
	  using the ruby WeakRef class, but it didn't work because rb_gc_mark()
	  didn't prevent them being garbage collected.
	* smokeruby_free() and smokeruby_mark() have been implemented
	* The C++ instance for a ruby object is deleted in smokeruby_free(),
	  so watch out for extra crashes!
	* Improved README with more details about QtRuby

2003-09-07  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Improved error message handling, changed rb_error() calls to rb_raise()
	* Decided changing method calls like foobar? to isFoobar() not a good idea,
	  as the Qt property could just as also be hasFoobar() or foobar() 

2003-09-06  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Set methods such as autoMask= are converted to setAutoMask()
	* Get methods such as modal? are converted to isModal()

2003-08-31  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* rbuic code generation brought up to date wrt Qt 3.2 uic
	  Main change is that a 'languageChanged()' method is generated

2003-08-30  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* rbuic() code generation fixes

2003-08-30  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added 'Run Selection' menu option to the QtRuby shell

2003-08-30  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Operator methods are now called 'operator..' in QGlobalSpace and not renamed
	* Added unary minus, and a test in opoverloading.rb

2003-08-29  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Updated TODO list, improved rbuic code generation for images

2003-08-28  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Improved operator overloading to work with operators not in QGlobalSpace

2003-08-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Changed the operator overloading implementation to be more like PerlQt

2003-08-27  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Translated the rbqtsh filePrint() method from perl

2003-08-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added 'changed' attribute to the MetaInfo class, so that the C++ metaObject
	  is reconstructed if the slots or signals are changed.
	* Changed window title on rbqtsh to 'QtRuby'. The example slot now works
	  correctly. Only just tried this utility - Wow Alex!!

2003-08-26  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* findMethod() now looks in the QGlobalSpace pseudo class as well as the normal target class.
	* The bitBlt() code in the scribble example works correctly

2003-08-25  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Removed ugly _current_object global variable. 
          The current target object is now passed to the MethodCall constructor.

2003-08-25  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Removed obsolete rb_enable_super() calls
	* Removed test for _current_object in class_method_missing()
	* Fixed missing index in signalInfo() method
	* Added Qt scribble example - TODO add Qt::PaintDevice.bitBlt() calls to SMOKE runtime

2003-08-23  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added rbuic tool for ruby Qt Designer support

2003-08-12  Alexander Kellett   <lypanov@kde.org>

	* Add debug level setting via Qt::debug_level
	* When calling .new on a Qt object with a incorrect prototype
	  the list of appropriate constructors is printed
	* Fix a number of cases in which imperfect code would cause a crash

2003-08-11  Alex Zepeda   <zipzippy@sonic.net>

	* Various fixes to get QStringList marshalling working
	* Treat Ruby strings as UTF-8 strings in order to fix the QFont examples

2003-08-09  Alexander Kellett   <lypanov@kde.org>

	* Added support for operator overloading

2003-08-07  Alexander Kellett   <lypanov@kde.org>

	* Added rbqtapi and rbqt tools (port of the PerlQt tools of the same name)

2003-08-06  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Added some TODO list entries, added Alex to the AUTHORS list

2003-08-06  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed 'int&' marshalling so script name appears in window title

2003-08-12  Alexander Kellett   <lypanov@kde.org>

	* Add several new marshalling types - QCanvasItemList for example,
	  unfortuantely due to several improvements in Qt 3.2 these 
	  improvements will not be seen when compiling against Qt 3.1.2

2003-08-05  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Moved SLOT(), SIGNAL() and emit() to global scope

2003-08-05  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Removed redundant 'rb_eval_string("include Qt")' call from extension initialization.

2003-08-05  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Qt::Application constructor safer, but program name still not appearing in the window title

2003-08-05  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed bug in resolution of overloaded Qt::Popup.insertItem() methods

2003-08-05  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Use new const_missing from ruby 1.8.x to allow for constant access from base class, for example "Qt::RichText"
	* QString::null now maps onto Qnil, rather than a zero length ruby string

2003-08-04  Alexander Kellett   <lypanov@kde.org>

	* Allow for accumulative slots/signals declarations in a class
	* Minor build fixes

2003-08-02  Alexander Kellett   <lypanov@kde.org>

	* Fix several deprecation warnings when running under 1.8.x
	* Several more build fixes

2003-08-01  Alexander Kellett   <lypanov@kde.org>

	* Slightly improve ease of debugging of qtruby programs 
	  which subclass Qt base classes by print out some useful
	  debugging informationn when/if method_missing ever 
	  fails to find a matching function in the baseclass.

2003-08-01  Alex Zepeda   <zipzippy@sonic.net>

	* Remove need to manually run extconf.rb by some automation via a configure.in.in
	* Various other build fixes

2003-07-31  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed bug in marshalling QString::null to a ruby VALUE

2003-07-31  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Changed require in Qt.cpp to 'Qt/Qt.rb' instead of 'lib/Qt/Qt.rb'

2003-07-31  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* Fixed problem with non-working installed version, lib/Qt.rb moved to lib/Qt/Qt.rb

2003-07-30  Richard Dale  <Richard_Dale@tipitina.demon.co.uk>

	* QtRuby - a Ruby SMOKE adaptor for Qt, initial checkin


