|
|
2007-02-19 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Fixed a bug where the sort method of TQt::ListView and TQt::ListViewItem |
|
|
was no longer working, as the classes are 'Enumerable' and ruby was |
|
|
calling the ruby sort method instead. Thanks to kelko for reporting it |
|
|
on #kde-ruby. |
|
|
|
|
|
2006-12-05 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Backported some improvements to TQt::Variants from Qt4 QtRuby |
|
|
* When marhalling TQMap types with TQVariant values, if the Ruby value isn't |
|
|
a TQt::Variant then one is created |
|
|
* TQt::Variants can now be constructed with Hash's of String/TQt::Variant |
|
|
pairs, and from Arrays of TQt::Variants |
|
|
* When marshalling TQValueList<TQVariant> types from Ruby to C++, if any elements |
|
|
aren't Ruby TQt::Variants, they are automatically converted. Hence, the |
|
|
following will work: |
|
|
|
|
|
v = TQt::Variant.new([1, 2, 3]) |
|
|
|
|
|
The TQt::Variant v will contain a list of 3 TQVariants with typeName 'int' |
|
|
* Change all instances of strcmp() to tqstrcmp() |
|
|
|
|
|
2006-11-20 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Made TQt::ListView, TQt::ListViewItem, TQt::BoxLayout, TQt::HBoxLayout, |
|
|
TQt::VBoxLayout and TQt::GridLayout Enumerable with implementations |
|
|
of each() so they don't need to use the Qt External iterators like |
|
|
TQt::LayoutIterator anymore. For instance: |
|
|
|
|
|
lv = TQt::ListView.new do |
|
|
["one", "two", "three", "four"].each do |label| |
|
|
TQt::ListViewItem.new(self, label, "zzz") |
|
|
end |
|
|
end |
|
|
|
|
|
lv.each do |item| |
|
|
p item.inspect |
|
|
pp item.inspect |
|
|
end |
|
|
|
|
|
* Add inspect() and pretty_print() methods to TQt::ListViewItem so that |
|
|
they show the text of their columns |
|
|
|
|
|
2006-09-19 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Upped the QtRuby version to 1.0.13 for the KDE 3.5.5 release |
|
|
|
|
|
* Fixed a crash when a slot was inherited by a subclass, and the |
|
|
subclass had no slots or signals of its own |
|
|
|
|
|
2006-09-17 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Fixed bug reported by Caleb Tennis where temporary TQString const arguments |
|
|
were only being deleting after marshalling if they weren't const types. |
|
|
|
|
|
2006-09-14 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Added a new variant of connect, which takes a SIGNAL as an argument, along with |
|
|
a block. For example: |
|
|
|
|
|
quit.connect(SIGNAL(:clicked)) { puts 'quit pressed' } |
|
|
|
|
|
The block is called in the context of where the connect call was made, and 'self' |
|
|
needn't be a TQt::Object. It is similar to the signal_connect() method in |
|
|
ruby-gnome. This was suggested by rickdangerous on the #qtruby irc channel. |
|
|
|
|
|
2006-09-13 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Blocks can now be used as slots in TQt::Object.connect() calls. There are two |
|
|
versions, a singleton method and an instance method. |
|
|
|
|
|
* Here is an example of the class method connect() call with a block as a target: |
|
|
|
|
|
app = TQt::Application.new(ARGV) |
|
|
quit = TQt::PushButton.new('Quit') |
|
|
TQt::Object.connect(quit, SIGNAL('clicked()'), app) { puts 'quit clicked' } |
|
|
|
|
|
The block is executed in the context of the target instance, 'app' in this |
|
|
case. |
|
|
|
|
|
* And the instance method form: |
|
|
|
|
|
class MyButton < TQt::Button |
|
|
def initialize(text) |
|
|
super(text) |
|
|
connect(self, SIGNAL('clicked()')) { puts 'button clicked' } |
|
|
end |
|
|
... |
|
|
|
|
|
The block is executed in the context of self - the instance making the |
|
|
connect() call. |
|
|
|
|
|
* The Rails version of the Ruby 1.9 method Object#instance_exec was used |
|
|
to invoke the block. Thanks to kelko on the #kde-ruby channel for the |
|
|
idea and the code, and #rickdangerous for further discussion. |
|
|
|
|
|
2006-08-29 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Backported some memory leak fixes from Qt4 QtRuby |
|
|
|
|
|
2006-08-10 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* The Ruby VALUE to 'uchar *' marshaller wasn't working correctly if the |
|
|
Ruby string contained nulls. Fixed by Dirk Mueller (thanks) and also |
|
|
applied for 'char *' types. |
|
|
|
|
|
2006-07-12 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* The Ruby String to 'char *' and String to 'unsigned char *' were using |
|
|
the pointer within the Ruby String directly which meant they were |
|
|
deleted when the Ruby String was gc'd. So they are copied with |
|
|
strdup () instead. |
|
|
|
|
|
2006-06-05 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* The metaObject methods for slots and signals are no longer added when |
|
|
a TQt::Object is constructed, but when slots or signals are added to |
|
|
a class. This means that signals as well as slots can be added to an |
|
|
existing instance. |
|
|
|
|
|
2006-06-04 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* For TQt::TQObject classes which are immediate subclasses of TQt::Base, |
|
|
don't add C metaObject() and tqt_invoke() methods as they aren't |
|
|
needed. This means that a TQMetaObject is no longer constructed for |
|
|
these classes, and the one that the corresponding C++ class has is |
|
|
returned instead. |
|
|
|
|
|
2006-05-20 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Fix regression for dynamic class creation via TQMetaObject info causing |
|
|
a crash. |
|
|
* A list of properties is now returned via TQt::MetaObject.propertyNames |
|
|
for a TQt::Object with properties for the inspect and pretty_print |
|
|
methods. |
|
|
|
|
|
2006-05-15 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Removed the customized version of Kernel.exec, Kernel.open etc |
|
|
as they aren't needed anymore. |
|
|
|
|
|
2006-05-14 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* When an unknown C++ class is found, a corresponding Ruby class is now |
|
|
created. For instance, if a KPresenter KPart is loaded, a |
|
|
KDE::PresenterDoc class is created. |
|
|
* It is now possible to set and get properties without needing to use |
|
|
TQt::Object.property() and TQt::Object.setProperty(). For instance: |
|
|
|
|
|
factory = KDE::LibLoader.self().factory("libkpresenterpart") |
|
|
@kpresenter = factory.create(self) |
|
|
p @kpresenter.presentationDuration |
|
|
@kpresenter.presentationDuration = true |
|
|
|
|
|
* A TQt::Variant.to_ruby method has been added which returns a Ruby value |
|
|
corresponding to the current value of a TQt::Variant |
|
|
* A boolean TQt::Variant can now be constructed with a TQt::Variant.new(true) |
|
|
call, and a dummy second arg (as for C++) is no longer needed. |
|
|
|
|
|
2006-05-07 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* An an type of TQ_UINT16 wasn't working with QtRuby. Fixes problem |
|
|
reported by maelclerambault. |
|
|
|
|
|
2006-05-03 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* The tqt_emit() and tqt_invoke() methods are overriden by the QtRuby |
|
|
runtime. When they are called the runtime looks for a Ruby slot or |
|
|
signal matching the call, and invokes it if found. If a Ruby version |
|
|
wasn't found for a signal however, the tqt_invoke() method was being |
|
|
called in the Smoke library instead of tqt_emit(). This occasionally |
|
|
caused a crash in code using KDE::HTMLPart. |
|
|
|
|
|
2006-04-17 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Made :foobar a synonym for 'foobar()' for slots and signals |
|
|
* Added some calls for TQt::Event.type methods to force them |
|
|
to go via method_missing() |
|
|
|
|
|
2006-03-29 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Don't special case open() in virtual method callbacks, because all |
|
|
the Qt classes with open methods now have explicit open() method |
|
|
calls. So it isn't possible that Kernel.open() will be called |
|
|
wrongly anymore. |
|
|
|
|
|
2006-03-29 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Added a KDE::KonsolePart class for when a konsolePart KPart is |
|
|
dynamically loaded. |
|
|
|
|
|
2006-03-21 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Added various explicit calls to method_missing() for methods which |
|
|
are defined in Kernel and Object, such as 'exec', 'select', 'format' |
|
|
etc. Otherwise, the corresponding methods in the Smoke library were |
|
|
not being invoked correctly. |
|
|
* Removed a virtual destructor compile warning |
|
|
* Removed obsolete qtruby-only.patch and tdevelop project file |
|
|
|
|
|
2006-03-14 Richard Dale <rdale@foton.es> |
|
|
|
|
|
* Fixed bugs in const lists marshallers, where the items in the ruby |
|
|
Array were wrongly being updated after a method call |
|
|
|
|
|
2006-02-09 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The Kernel#select method was being redefined as it clashed with |
|
|
TQt::SqlCursor#select and TQt::SqlSelectCursor#select methods. This |
|
|
caused a problem when QtRuby was used with Rails ActiveRecord which |
|
|
also has a select method. So the methods are now defined in the Sql |
|
|
classes, and use method_missing() to explictly invoke the methods in |
|
|
the Smoke library. Fixes problem reported by Imo Sosa. |
|
|
|
|
|
2006-01-18 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Improved the debug logging of virtual method callbacks so that the |
|
|
arg types are shown too |
|
|
|
|
|
2005-12-16 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The logger_backend() function has been removed and replaced with |
|
|
tqWarning() calls. This was because of problems with getting the |
|
|
logger_backend() code to work on Windows. |
|
|
|
|
|
2005-12-16 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Improved the code to call a C++ slot via tqt_invoke() when a ruby slot hasn't |
|
|
been defined. It now invokes the method in the Smoke lib directly, rather |
|
|
than going via method_missing(). |
|
|
|
|
|
2005-12-08 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The ruby display() method was clashing with a display() method in some |
|
|
QtRuby classes, and so it was aliased to _display(). However, this caused |
|
|
problems with the ruby RMagick extension. The display methods are now |
|
|
special cased in TQt::LCDNumber, TQt::WhatsThis and TQt::TimeEdit. Fixes |
|
|
problem reported by David Corbin. |
|
|
* The slots and signals methods are now module methods of TQt::Base, |
|
|
rather than defined as ordinary methods in class Module, reducing name |
|
|
space pollution. Thanks to Esteban Manchado for pointing this out. |
|
|
|
|
|
2005-12-06 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* QtRuby didn't work with versions of ruby > 1.8.3, as it didn't call |
|
|
initialize methods correctly. It used the rb_respond_to() method |
|
|
to check it a newly created qt instance responded to :initialize. |
|
|
However, in newer versions of ruby rb_responds_to() ignores |
|
|
private methods such as initialize(). The solution was to just remove |
|
|
the test, as it was redundant anyway. |
|
|
* Fixes problem reported by Hans Fugel and Caleb Tennis. |
|
|
|
|
|
2005-11-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* When dispose() was used to delete a ruby instance, the mapping between |
|
|
the C++ ptr and corresponding ruby instance was not being removed, and |
|
|
this caused a crash. Fixes problem reported by Christopher Chan-Nui. |
|
|
|
|
|
2005-11-04 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* 'signed int&' types were not being matched or marshalled correctly |
|
|
|
|
|
2005-11-02 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* A TQt::Canvas owned by a TQt::CanvasItem is marked as in use |
|
|
and not needing garbage collection |
|
|
|
|
|
2005-10-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Argument types of 'unsigned short int' were not working. Fixes |
|
|
problem reported by Ian Monroe |
|
|
|
|
|
2005-10-05 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* More fixes from the Qt4 version |
|
|
* The TQt::ByteArray class is now a normal Smoke class, |
|
|
rather than a special case, as it's easier to make a |
|
|
TQt::ByteArray look like a ruby String, than the other way |
|
|
round. |
|
|
* The overloaded method resolution for enum arg types has been |
|
|
improved |
|
|
* Added missing relational operators to TQt::Integer |
|
|
|
|
|
|
|
|
2005-09-26 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added some fixes from the Qt4 version of QtRuby |
|
|
* There was a clash between operator methods in Kernel |
|
|
for '>', '>=', '<' and '<=' and the ones in the Smoke lib. |
|
|
* Fixed a TQt::ByteArray marshalling problem |
|
|
|
|
|
2005-09-12 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed various problems with the rbuic code generation for database |
|
|
.ui forms reported by Daniel Morris |
|
|
|
|
|
2005-09-11 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed problem with TQt::SqlCursor.select() reported by Daniel Morris |
|
|
|
|
|
2005-09-02 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a TQt::Char.to_s method for converting a TQt::Char to a ruby |
|
|
string |
|
|
|
|
|
2005-08-09 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Caleb Tennis wrote: |
|
|
One nice feature would be to allow TQt::Object::inherits() to use the QtRuby |
|
|
naming scheme for valid lookups. For example, right now: |
|
|
|
|
|
irb(main):001:0> w = TQt::Widget.new(nil) |
|
|
irb(main):002:0> w.inherits("TQt::Widget") |
|
|
=> true |
|
|
irb(main):003:0> w.inherits("TQt::Object") |
|
|
=> false |
|
|
irb(main):004:0> w.inherits("TQWidget") |
|
|
=> true |
|
|
irb(main):005:0> w.inherits("TQObject") |
|
|
=> true |
|
|
|
|
|
* Inherits now works for "TQObject", and for "TQt::Object" as well. |
|
|
|
|
|
2005-08-04 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a file called 'COPYING' to the qtruby project, with a note that |
|
|
the 'Qt' trademark in the QtRuby name is used with Trolltech's permission, |
|
|
followed by the text of the GPL v2 license. |
|
|
|
|
|
2005-07-30 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* TQt::version and TQt::ruby_version are now module methods |
|
|
|
|
|
2005-07-15 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* TQt::Socket started working correctly when I and regenerated and rebuilt |
|
|
my Smoke library. Before then it was calling the wrong version of |
|
|
TQSocket::at() for some reason, and wasn't discarding bytes that had |
|
|
already been read. |
|
|
* Removed comment from the client.rb example about TQt::Socket.canReadLine |
|
|
always returning true now it works. |
|
|
|
|
|
2005-07-14 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added example programs for client/server programming with TQt::Socket |
|
|
and associated classes. client.rb illustrates current bugs in QtRuby |
|
|
* TQt::Socket.canReadLine() always returns true |
|
|
* TQt::readLine() seg faults when called a second time |
|
|
* A memory leak and seg faulting problems like the above were reported |
|
|
by Caleb Tennis |
|
|
|
|
|
2005-07-09 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* When a Qt method returned a TQString value type, such as: |
|
|
TQString TQSocket::readLine() |
|
|
A temporary TQString was being created that wasn't deleted and caused a |
|
|
memory leak. Fixes problem reported by Caleb Tennis. |
|
|
|
|
|
2005-06-28 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Improved display of TQt::Enums in the KDevelop debugger. With a p |
|
|
command it just looks like a constant, but a pretty print pp command |
|
|
shows the type of the underlying C++ enum: |
|
|
|
|
|
(rdb:1) p AlignTop |
|
|
16 |
|
|
|
|
|
(rdb:1) pp AlignTop |
|
|
#<TQt::Enum:0x1825db68 @type=TQt::AlignmentFlags, @value=16> |
|
|
|
|
|
2005-06-04 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.10 |
|
|
|
|
|
2005-06-04 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The Object.id method was clashing with the one in TQt::WidgetStack. |
|
|
Both methods now work correctly. Fixes problem reported by Dave M. |
|
|
|
|
|
2005-05-29 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The rbuic '-subimpl' option now works correctly |
|
|
|
|
|
2005-05-29 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The initialize methods in code generated by the rbuic tool, now have |
|
|
named parameters with default values, rather than '*k' |
|
|
|
|
|
2005-05-29 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed bug where the rbuic tool was generating incorrect code |
|
|
for an array of strings used as a combo box value |
|
|
|
|
|
2005-05-28 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added support for the TQScintilla text editing widget, including an optional |
|
|
'--enable-qscintilla=yes' configure option. The TQScintilla classes are included in a |
|
|
Qext:: namespace. Thanks to Blackshack for the idea and configure code. |
|
|
* The KDE namespace modules are only created if the Korundum extension is used. |
|
|
Otherwise the Object namespace was being polluted with unused constants. |
|
|
* Some enums in the TQScintilla headers had a spurious comma after |
|
|
the last enum value, and kalyptus was failing with a parse error. |
|
|
The comma is now ignored. |
|
|
|
|
|
2005-05-25 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* '!=' operator methods in the Smoke library were being shown via ruby introspection when they |
|
|
can't actually be written in ruby, and are derived from the corresponding '==' operator method. |
|
|
* '==' operator methods can now be called. |
|
|
|
|
|
2005-05-22 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed bug in Smoke code generation where spaces were not being removed from operator |
|
|
methods such as 'operator *' |
|
|
* Operator methods are now displayed correctly via ruby introspection |
|
|
|
|
|
2005-05-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Improved the format of enums displayed by rbqtapi and rbkdeapi |
|
|
|
|
|
2005-05-20 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Removed unused TQt::Internal functions |
|
|
* Added KNS:: to the namespaces expected by the rbkdeapi tool |
|
|
* Introspection via Object#methods, public_methods, protected_methods and singleton_methods |
|
|
or Module#constants, instance_methods, protected_instance_methods and public_instance_methods |
|
|
now all include methods from the Smoke runtime. This fixes part of the request in bug 105772, but |
|
|
not enabling 'respond_to?' to be used with Smoke methods. |
|
|
|
|
|
2005-05-16 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The Kernel.format() method was clashing with the TQt::MimeSource.format() method. |
|
|
The correct method is now called according to the type of the first argument. Fixes |
|
|
problem reported by Armin Joellenbeck |
|
|
|
|
|
2005-04-29 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Removed superfluous "require 'pp'" statement |
|
|
|
|
|
2005-04-25 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.9 for the RubyForge release |
|
|
|
|
|
2005-04-09 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed regressions in the rbqtapi and rbkdeapi utilities caused by the TQt::Internal namespace |
|
|
tidy up |
|
|
* TQt::version and TQt::ruby_version had wrongly been moved to the TQt::Internal module |
|
|
|
|
|
2005-04-03 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.8 for the RubyForge release |
|
|
|
|
|
2005-03-30 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* An 'include Qt' statement in qtruby.rb where a couple of methods were being added to |
|
|
class Module was causing all the Qt methods to be added to Module. Oops, this a really |
|
|
serious bug. Various methods in qtruby.rb are now module methods in the TQt::Internal |
|
|
module. Big thanks to Eric Veensta and Samir Patel for pointing out this can of worms. |
|
|
|
|
|
* It also fixes a problem reported by David Crosby where a "require 'time'" statement was |
|
|
incompatible with a "require 'Qt'" statement. As the cause was unknown, a hacky workround |
|
|
had to be added, which is no longer needed. |
|
|
|
|
|
2005-03-24 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* When a subclass of TQObject is instantiated in the C++ world, and the exact class doesn't |
|
|
exist in ruby, then scan up the inheritance heirarchy via TQObject::metaObject() until a |
|
|
class is found which does have a ruby equivalent. Fixes problem reported by Dmitry Morozhnikor |
|
|
where a KViewPart was being returned as a TQt::Object, rather than a KParts::ReadOnlyPart. |
|
|
* The internal method 'cast_object_to()' now takes a class literal as a second parameter, |
|
|
rather than the class name as a string |
|
|
|
|
|
2005-03-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Moved Qt.rb from qtruby/lib/Qt to qtruby/lib. Fixes problem building qtruby on Mac OS X |
|
|
with extconf.rb reported by Michael Doppler |
|
|
* Rename 'README.build' as INSTALL |
|
|
|
|
|
2005-02-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.7 for the KDE 3.4 release |
|
|
* Removed the tdehtml:: namespace as it wasn't being used |
|
|
|
|
|
2005-02-07 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a KNS:: namespace for the TDENewStuff library |
|
|
|
|
|
2005-02-06 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The KDE::Win::WindowInfo nested class is included in the Korundum runtime |
|
|
|
|
|
2005-01-27 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Made some changes to get code generated by the rbtdeconfig_compiler |
|
|
to work. When an argument is a non-const reference to a primitive |
|
|
type, or a TQString or TQStringList, then don't delete it after the |
|
|
method call. This is because a class like TDEConfigSkeleton takes |
|
|
references, and then 'stquirrels them away' - before the references |
|
|
were just pointing to junk on the stack. |
|
|
* The method 'isImmutable' is added to KDE::ConfigSkeletonItems |
|
|
|
|
|
2005-01-26 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* If a ruby Array is passed as an argument to an overloaded method, give |
|
|
priority to TQStringList args. |
|
|
|
|
|
2005-01-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* rbuic was giving widgets names containing a '@' to match the ruby instance variable |
|
|
name. However, this doesn't work with KDE::ConfigDialog which expects the names to |
|
|
match the ones generated in a KDE::ConfigSkeleton by rbtdeconfig_compiler so '@' is no |
|
|
longer added. |
|
|
|
|
|
2005-01-20 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed bug reported by Ian Monroe where the TDEIO.copy() method wasn't being found in |
|
|
the Smoke runtime. Modules methods are now trapped with method_missing and |
|
|
despatched to call Smoke methods correctly |
|
|
* Added support for the KDE::ConfigSkeleton and subclasses. Constructors for nested |
|
|
classes can now be called correctly |
|
|
|
|
|
CCMAIL: ian.monroe@gmail.com |
|
|
|
|
|
2005-01-16 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a TQt::Integer.coerce method so that TQt::Integers and TQt::Enums can be |
|
|
combined in arithmetic expressions with ruby Integers. |
|
|
|
|
|
2005-01-04 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.6 for the KDE 3.4 beta 1 release |
|
|
|
|
|
2005-01-02 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The TQt::Object pretty_print method now shows the class name of enum properties |
|
|
|
|
|
2004-12-30 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed an interesting bug reported by Stephan Oehlert. Kernel has a method called |
|
|
open() which takes a String as the first argument. But when a call is made to an open() |
|
|
method in the Qt classes, it messes up the method_missing() logic to divert it to the |
|
|
Smoke library. Instead it attempts to call the Kernel method with the wrong arg types. |
|
|
|
|
|
* The problem is fixed by calling the appropriate method based on the |
|
|
type of the first arg. However, it is no longer possible to override virtual methods |
|
|
called 'open'. |
|
|
|
|
|
CCMAIL: stephan.oehlert@gmx.net |
|
|
|
|
|
2004-12-28 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a parent attribute to the TQt::Object pretty_print() method |
|
|
* Removed all the properties from the TQt::Object inspect() method except name, |
|
|
x, y, width, height (the last four for for TQt::Widgets only). This speeds up fetching |
|
|
the details of TQt::Objects that have more than just a handful of children. |
|
|
The full details can still be fetched with a pretty_print() call via a debugger 'pp' |
|
|
command. |
|
|
|
|
|
2004-12-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The qtruby runtime needs to be able to run the code for an initialize() method up |
|
|
to the point where the C++ instance has been constructed and wrapped, and then |
|
|
jump out. It then re-runs initialize() with the wrapped instance. Before a callcc() call |
|
|
had been used for the jumping which worked fine. However, it made the frame stack |
|
|
look strange when debugging code with the KDevelop debugger. The fix is to use |
|
|
catch and throw instead, as they leave the stack in a more normal looking state. |
|
|
|
|
|
2004-12-20 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a work round for a bug caused by an incompatibility between QtRuby |
|
|
the 'require time' statement, reported by David Crosby |
|
|
|
|
|
CCMAIL: dcrosby42@gmail.com |
|
|
|
|
|
2004-12-18 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a 'receivers' property to the TQt::Object inspector. This allows the active signal |
|
|
connections for a TQt::Object instance to be viewed in the KDevelop debugger as a |
|
|
Hash. The hash keys are the signal names, and the hash values are arrays of the target |
|
|
signals/slots as TQt::Connection instances. |
|
|
|
|
|
2004-12-17 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added 'metaObject' as an expandable property for TQt::Objects. This allows the |
|
|
TQt::MetaClass class heirarchy to be browsed, and signals/slots declarations inspected. |
|
|
|
|
|
2004-12-17 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed bug in lower case/underscore method naming to camel case conversion |
|
|
|
|
|
2004-12-15 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added an attribute of 'children' to the TQt::Object inspect method, which is an array |
|
|
of the TQt::Object's children |
|
|
* The TQObjects in a TQObjectList were not being created with the exact ruby class |
|
|
if they hadn't been allocated from within the ruby code, and just left as TQt::Objects |
|
|
|
|
|
2004-12-14 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* TQt::Object properities of type enum are shown by name in the KDevelop debugger, |
|
|
and not as numeric literals |
|
|
|
|
|
2004-12-14 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Changed the format of the TQt::Color inspect string to #<TQt::Color:0x0 #ffffff> |
|
|
* Added some more attributes to the TQt::Font inspector |
|
|
* Added a TQt::Cursor inspector |
|
|
|
|
|
2004-12-12 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed a bug where the debugger was calling an inspect method on an instance |
|
|
which wasn't fully initialized yet, and not of type T_DATA. |
|
|
|
|
|
2004-12-10 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added inspect() and pretty_print() methods for TQt::SizePolicy |
|
|
* Greatly improved the TQt::Object Qt property based inspect() and pretty_print() |
|
|
methods. Property types such as TQt::Point, TQt::Font and TQt::Rect can be |
|
|
viewed as expandable items in the KDevelop debugger variable tree. |
|
|
|
|
|
2004-12-09 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* More inspect() and pretty_print() methods for common classes to improve debugging - |
|
|
TQt::Color, TQt::Font, TQt::Point, TQt::Rect, TQt::Size, TQt::Date, TQt::DateTime and TQt::Time |
|
|
|
|
|
2004-12-08 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added inspect() and pretty_print() methods for TQt::Objects that get the TQObject properties and |
|
|
show them as 'name=value' pairs. This means the KDevelop debugger can make TQt::Object |
|
|
variables expandable and show their properties. |
|
|
|
|
|
2004-11-29 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the QtRuby version to 1.0.5 for the KDE 3.3.2 release |
|
|
|
|
|
2004-10-30 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* qError(), tqWarning() and tqFatal() are now Object instance methods, rather than Qt module |
|
|
methods. This means they don't need to be referenced with an ugly 'Qt.' module scope anymore. |
|
|
|
|
|
2004-10-21 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* If a class method was called before super, it was wrongly throwing an exception |
|
|
as an error. For instance, this call to i18n(): |
|
|
|
|
|
def initialize() |
|
|
super(TreeList, i18n("My App Preferences"), |
|
|
Help|Default|Ok|Apply|Cancel, Ok) |
|
|
... |
|
|
|
|
|
|
|
|
2004-10-16 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Until super has been called in an initialize() method, Qt methods can't be called on |
|
|
it. An exception is now thrown 'Instance not initialized', instead of it causing a seg fault. |
|
|
* For instance: |
|
|
|
|
|
class MyWidget < TQt::ComboBox |
|
|
def initialize |
|
|
# Must call super first |
|
|
insertItem('abc') |
|
|
super |
|
|
end |
|
|
end |
|
|
|
|
|
* Fixes problem reported by Han Holl |
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-16 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.4 for the RubyForge release |
|
|
* Added some names to AUTHORS from the ChangeLog |
|
|
|
|
|
2004-10-14 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* If the smokeruby_mark() function was called for an instance of a TQObject, it should |
|
|
mark all the instances below it in the TQObject tree, as not needing garbage collection. |
|
|
However, if a node in the tree didn't have a mapping onto a ruby instance the marking |
|
|
process stopped there, even though the grandchildren and their descendants might |
|
|
have a valid mapping onto ruby instances. |
|
|
* The solution is to always traverse the entire tree. Fixes problem reported by Han Holl. |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-13 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* All the TQt::CanvasItems owned by a TQt::Canvas are marked with rb_gc_mark() to |
|
|
prevent them being garbage collected |
|
|
* The top level widgets are no longer disposed() on TQt::Application exit |
|
|
* Fixed some bugs in the chart example. |
|
|
|
|
|
2004-10-13 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed arg matching to give priority to 'int' or 'signed' when passed a ruby Integer, or |
|
|
'double' when passed a ruby Float |
|
|
* The chart example can now save and load chart files |
|
|
|
|
|
2004-10-13 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added greater than and less than operators to TQt::Enum, so that enums can be compared with |
|
|
Integers |
|
|
* Added the chart example for Qt Tutorial #2 |
|
|
|
|
|
2004-10-12 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added TQt::Application.ARGV. It returns the original ruby ARGV array with Qt command line |
|
|
options removed. |
|
|
|
|
|
2004-10-11 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a global flag 'application_terminated'. Once this is set the QtRuby runtime will no longer |
|
|
delete any C++ instances. This will hopefully fix crash on application exit problems reported |
|
|
by Thibauld Favre. |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-10 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The recent fix for checking invalid arg types, didn't work with nil passed as a value |
|
|
|
|
|
2004-10-10 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* A TQRgb[] color table was being wrongly deleted after marshalling |
|
|
|
|
|
2004-10-10 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* If a ruby method overriding a virtual method returned a primitive type when an instance of a class |
|
|
was expected, it caused a seg fault. A ruby exception is now thrown instead. Fixes problem reported by |
|
|
Han Holl. |
|
|
|
|
|
* For instance, |
|
|
class ContainerGrid < TQt::Widget |
|
|
def sizeHint |
|
|
# next line should return a TQt::Size, not an integer |
|
|
100 |
|
|
end |
|
|
end |
|
|
|
|
|
Now gives the following error: |
|
|
|
|
|
qsize.rb:12:in `method_missing': Invalid type, expecting TQSize (ArgumentError) |
|
|
from qsize.rb:12 |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-10 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The smokeruby_mark() function was only marking the immediate children of a |
|
|
TQt::Object for not being garbage collected. It now marks all the TQt::Objects |
|
|
in the object tree below it. |
|
|
|
|
|
2004-10-07 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added Qt Designer Tutorial 'Creating Dialogs' translated into QtRuby. It |
|
|
shows how you can combine ruby code generated from .ui files with the rbuic |
|
|
tool, with your own code. |
|
|
|
|
|
* The .ui files and images are identical to the original C++ versions. |
|
|
|
|
|
* It features a simple Makefile to run rbuic when you change the .ui files, and |
|
|
regenerate the ruby sources. |
|
|
|
|
|
2004-10-06 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed rbuic '-embed' option which had been broken after adding DCOP suppot |
|
|
to Korundum, after changes in the TQt::ByteArray class. |
|
|
* Fixed TQRgb* marshalling problem where the ruby value was overflowing a signed int. |
|
|
The target for marshalling is now an array of unsigned ints. |
|
|
* When a TQt::Application exits after returning for an TQt::Application.exec() call, the top |
|
|
level widgets are deleted as well as the TQt::Application itself. This fixes a problem where |
|
|
ruby does garbage collection in an arbitrary order after the ruby app has exited. It destroys |
|
|
a ruby Hash of TQMetaData info that the TQt::Application or TQt::MainWindow need to clean up. |
|
|
* The layout of the ruby code generated by rbuic has been improved with better indenting. |
|
|
* attr_reader attribute accessors have been added for the most important instance variables |
|
|
in an rbuic generated class to make them more easily accessed from another class. |
|
|
|
|
|
2004-10-05 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Given a C++ instance and an approximate classname, the QtRuby runtime uses the |
|
|
various Qt rtti mechanisms such as TQObject::className() to improve the resolution |
|
|
of the name. However, the numeric classId into the array of classnames in the Smoke |
|
|
runtime was not being updated in line with the more accurate name. |
|
|
* This caused problems with method argument matching which uses the numeric classId |
|
|
rather than the ruby object's classname, and so QtRuby wrongly assumed that a an |
|
|
instance of a TQt::Widget was a TQt::Object. |
|
|
* Fixes problem reported by Han Holl |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-05 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Fixed a couple of errors in the rbuic generated code found as a result of |
|
|
the recently improved stricter arg type matching. |
|
|
|
|
|
2004-10-04 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* When a ruby app exits, rb_gc_call_finalizer_at_exit() is called and all the ruby |
|
|
instances are garbage collected. The problem is that this is done in an arbitrary |
|
|
order, and TQt::Application was occasionally crashing in its destructor because |
|
|
TQMetaObject info it still needed was being deleted before then. |
|
|
|
|
|
* Fixes problem reported by Thibauld Favre |
|
|
|
|
|
CCMAIL: <tfavre@mandrakesoft.com> |
|
|
|
|
|
2004-10-04 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* When a TQMetaData object was contructed the class name was a pointer from a ruby |
|
|
string, and was being corrupted when the string was freed. The string is now copied. |
|
|
|
|
|
2004-10-03 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Han Holl's report about a when you pass an incorrect arg type to a QtRuby |
|
|
method, it caused a crash has opened a 'can of worms'. This was because there |
|
|
was no arg type checking if there was only one candidate method in the |
|
|
Smoke runtime. Now that arg type checking is applied to all QtRuby method calls, not |
|
|
not just those that after lookup in Smoke map onto a single method, the overloaded |
|
|
method resolution via the arg types has had to be greatly improved. This has |
|
|
been done, and so the arg type matching is now extremely fussy. |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-03 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* An optimization in the overloaded method resolution matching causes a crash; |
|
|
instead of throwing a ruby exception when a programming error is made. |
|
|
If there is only one method found in the Smoke runtime, it assumes that it must |
|
|
be the right one and just takes that. |
|
|
|
|
|
* For example: |
|
|
|
|
|
lay = TQt::HBoxLayout.new(self) |
|
|
ed = TQt::LineEdit.new('blah',self) |
|
|
# The next line should be: lay.addWidget(ed) |
|
|
lay.addLayout(ed) |
|
|
|
|
|
* Fixes problem reported by Han Holl |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-03 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* A common programming error is to accidently leave off the 'new' method call when |
|
|
creating an instance. The QtRuby runtime wasn't correctly trapping an attempt to |
|
|
call an instance method on a class object, and was seg faulting rather than |
|
|
throwing an exception. |
|
|
|
|
|
* For example: |
|
|
|
|
|
# The next line should be: lay = TQt::HBoxLayout.new(self) |
|
|
lay = TQt::HBoxLayout |
|
|
ed = TQt::LineEdit.new('blah',self) |
|
|
lay.addWidget(ed) |
|
|
|
|
|
* Fixes problem reported by Han Holl |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-10-03 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped version to 1.0.3 for the KDE 3.3.1 release |
|
|
|
|
|
2004-10-02 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added Ruby Array to TQPair<int,int>& marshaller |
|
|
|
|
|
2004-09-30 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The resolve_classname() function in handlers.cpp uses the various Qt rtti mechanisms to |
|
|
get a more accurate classname to instantiate as a ruby instance. It has now been extended |
|
|
with a callback to the Korundum library to do the same for KDE classes. |
|
|
|
|
|
CCMAIL: zack@kde.org |
|
|
|
|
|
2004-09-29 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added Jim Menard's ruboids as an OpenGL/TQt::GL* Widgets example |
|
|
* Improved instructions and exconf.rb for building the gui extension from Michal 'hramrach' Suchanek |
|
|
|
|
|
2004-09-13 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.2 for Rubyforge release |
|
|
|
|
|
2004-09-12 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added a 'tqui' extension for reading in .ui Qt Designer files at runtime |
|
|
* For example: |
|
|
|
|
|
require 'Qt' |
|
|
require 'tqui' |
|
|
|
|
|
a = TQt::Application.new(ARGV) |
|
|
if ARGV.length == 0 |
|
|
exit |
|
|
end |
|
|
|
|
|
if ARGV.length == 2 |
|
|
QUI::WidgetFactory.loadImages( ARGV[ 0 ] ) |
|
|
w = QUI::WidgetFactory.create( ARGV[ 1 ] ) |
|
|
if w.nil? |
|
|
exit |
|
|
end |
|
|
w.show() |
|
|
a.connect( a, SIGNAL('lastWindowClosed()'), a, SLOT('quit()') ) |
|
|
a.exec() |
|
|
end |
|
|
|
|
|
|
|
|
2004-09-07 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Upped the version to 1.0.1 for the current Rubyforge release |
|
|
|
|
|
2004-09-05 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added Kate:: and KTextEdit:: namespaces for writing Kate plugins |
|
|
|
|
|
2004-09-03 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Some newer changes from the uic were added to the rbuic tool. |
|
|
|
|
|
2004-09-03 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Brought the rbuic code to uncompress zip files in line with the current uic code |
|
|
* Added a qmake project file for building the rbuic tool on Mac OS X, and some |
|
|
notes on how to build QtRuby on a Mac. |
|
|
|
|
|
2004-08-29 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added Kontact module to provide a namespace for the kontact plugin api |
|
|
|
|
|
2004-08-25 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Underscore naming for can be used for method names instead of camel case if |
|
|
preferred. Any underscores in method names are removed, and the following |
|
|
character is capitalised. For example, either of these two forms can be used |
|
|
to call the same method: |
|
|
|
|
|
create_standard_status_bar_action() |
|
|
|
|
|
createStandardStatusBarAction() |
|
|
|
|
|
2004-08-23 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* A 'thing?' ruby method can now be used as a synonym for either isThing() or hasThing() in the Smoke runtime |
|
|
|
|
|
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 TQTableItems owned |
|
|
by a TQTable 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 TQValueList marshallers, and several |
|
|
TQValueList 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 TQt::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. |
|
|
|
|
|
* TQCString arg types are chosen in preference to TQByteArray ones, matching |
|
|
against ruby strings, when resolving an overloaded method call. |
|
|
|
|
|
* TQt::Enums and TQt::Integers can be marshalled to uints, longs and ulongs as |
|
|
well as ints. |
|
|
|
|
|
* Added a '==' operator to TQt::Enums so they can be compared with ruby Integers |
|
|
|
|
|
2004-07-27 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* TQt::Integer arithmetic and bit operations return TQt::Integers, rather |
|
|
than ruby Integers so that ops can be nested as for TQt::Enums. |
|
|
|
|
|
2004-07-27 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The recently added TQt::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", |
|
|
TQt::WStyle_Customize | TQt::WX11BypassWM | TQt::WStyle_StaysOnTop | |
|
|
TQt::WStyle_Tool | TQt::WStyle_NoBorder) |
|
|
|
|
|
2004-07-27 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Replaced TQString casts to 'const char *' with latin1() calls |
|
|
|
|
|
2004-07-27 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* The TQt::Enum class was missing bit operations, so various bit methods |
|
|
were added to TQt::Enum's superclass, TQt::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 tqDebug(), tqFatal() and tqWarning() 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 'TQMap<TQString,TQString>'. |
|
|
* Added 'TQMap<TQString,TQString>&' and 'TQStringVariantMap&' to the |
|
|
handlers.cpp string to marshaller lookup table. |
|
|
|
|
|
2004-07-26 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added marshallers for TQMap<TQString,TQString> and TQStringVariantMap 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 tdebindings list |
|
|
|
|
|
CCMAIL: kde-bindings@kde.org |
|
|
|
|
|
2004-07-19 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added TQt::Enum type. Before a C++ enum was being marshalled to a ruby |
|
|
Integer, and the type name of the enum was lost. A TQt::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, TQWidget *parent, const char *name); |
|
|
# KPasswordEdit(EchoModes echoMode, TQWidget *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 TQString |
|
|
is copied into the ruby value. But it wasn't being correctly converted to the |
|
|
correct string format according to $KCODE. |
|
|
* TQString to ruby string conversions in TQStringLists 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 Immend<EFBFBD>fer 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 TQChar marshalling as it wasn't very i18n friendly |
|
|
|
|
|
2004-07-07 Richard Dale <Richard_Dale@tipitina.demon.co.uk> |
|
|
|
|
|
* Added TQChar 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 |
|
|
TQt::Boolean class can be used like this: |
|
|
|
|
|
# TQFont getFont(bool * ok, const TQFont&initial, TQWidget* parent = 0); |
|
|
|
|
|
ok = TQt::Boolean.new |
|
|
font = TQt::FontDialog.getFont(ok, TQt::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 TQByteArray 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 TQt::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 TQString &fileName, int *accuracy=0 ); |
|
|
|
|
|
acc = TQt::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 TQStrList 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 |
|
|
TQAsciiDict, 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 TQt::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 TQt::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 TQListViewItem and TQTableItem 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 TQString, 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 TQCString, TQString and TQByteArray marshalling. |
|
|
- When a C++ method with a mutable, non-const TQCString 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 TQString 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 TQCString was being ranked equally with a TQString, |
|
|
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 |
|
|
TQObject, TQEvent and TQCanvasItem. This fixed a problem in the |
|
|
KillerFilter example when a TQMouseEvent was passed to the ruby |
|
|
event handler, it was being instantiated as a ruby TQt::Event, |
|
|
rather than a TQt::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++ 'TQString::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 TQListViewItems in a TQListView |
|
|
* Fixed a TQLayoutItem 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 |
|
|
TQObject 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 |
|
|
- tqt_invoke() and tqt_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 TQObject was deleted, leaving deleted instances in the list. |
|
|
- 'TQUObject*' 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 tdehtml:: 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 TDEIO:: 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/TQt::/ 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::TDEAboutData.new("one", "two", "three") |
|
|
KDE::TDECmdLineArgs.init(1, ["four"], about) |
|
|
a = KDE::TDEApplication.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 TQByteArray 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 TQByteArray <-> 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 TQPtrDict 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 TQGlobalSpace 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 TQGlobalSpace |
|
|
|
|
|
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 TQGlobalSpace 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 TQt::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 TQt::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 TQStringList marshalling working |
|
|
* Treat Ruby strings as UTF-8 strings in order to fix the TQFont 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 - TQCanvasItemList 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> |
|
|
|
|
|
* TQt::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 TQt::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 "TQt::RichText" |
|
|
* TQString::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 TQString::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 |
|
|
|
|
|
|
|
|
|