commonqt:commonqt.git
7 years agoanticipate deletion of method returns values passed over the stack -- Test missing! stack-value-fix
David Lichteblau [Mon, 3 Jan 2011 00:01:09 +0000 (01:01 +0100)]
anticipate deletion of method returns values passed over the stack -- Test missing!

7 years agoTest and fix for QWebView construction: When caching superclass pointers, be careful... qwebview-fix
David Lichteblau [Tue, 28 Dec 2010 15:47:49 +0000 (16:47 +0100)]
Test and fix for QWebView construction: When caching superclass pointers, be careful around cross-module casts

7 years agoqtype-deconstify instead of nonconst-name (from 87f8c366 by Ivan Shvedunov)
David Lichteblau [Sun, 26 Dec 2010 20:57:58 +0000 (21:57 +0100)]
qtype-deconstify instead of nonconst-name (from 87f8c366 by Ivan Shvedunov)

7 years agonoch strings
David Lichteblau [Tue, 28 Dec 2010 15:48:06 +0000 (16:48 +0100)]
noch strings

7 years agoAvoid babel calls by building a table of all methodnames
David Lichteblau [Sun, 26 Dec 2010 20:39:59 +0000 (21:39 +0100)]
Avoid babel calls by building a table of all methodnames

7 years agoDisable hanging microbenchmark CALL-PARENT for now
David Lichteblau [Sun, 26 Dec 2010 20:39:05 +0000 (21:39 +0100)]
Disable hanging microbenchmark CALL-PARENT for now

7 years agoAdd microbenchmarks for the INTERPRET- functions
David Lichteblau [Sun, 26 Dec 2010 20:03:34 +0000 (21:03 +0100)]
Add microbenchmarks for the INTERPRET- functions

... renamed /naive to -interpret

... now that repetition time is variable, this test doesn't hang as long as
before can be enable safely.

... one -interpret test per normal test

... also includes some last-minute tweaks to benchmark output and repetition
times.

7 years agoAdd Microbenchmarks as tests/microbench.lisp
David Lichteblau [Sun, 26 Dec 2010 19:29:15 +0000 (20:29 +0100)]
Add Microbenchmarks as tests/microbench.lisp

7 years agoBugfix: Signal an error on invalid function specifications (with test case)
David Lichteblau [Sun, 26 Dec 2010 18:18:59 +0000 (19:18 +0100)]
Bugfix: Signal an error on invalid function specifications (with test case)

7 years agoMacroexpand function specifications (with test case)
David Lichteblau [Sun, 26 Dec 2010 18:18:30 +0000 (19:18 +0100)]
Macroexpand function specifications (with test case)

7 years agoAdd a test case for :override in defclass
David Lichteblau [Sun, 26 Dec 2010 18:00:11 +0000 (19:00 +0100)]
Add a test case for :override in defclass

7 years agoAdded QVariant conversions for single/double float, QColor, QPixmap and QIcon.
Ivan Shvedunov [Mon, 20 Dec 2010 13:40:46 +0000 (16:40 +0300)]
Added QVariant conversions for single/double float, QColor, QPixmap and QIcon.

7 years agoAccept types as strings in QTYPEP.
Ivan Shvedunov [Sat, 18 Dec 2010 20:52:52 +0000 (23:52 +0300)]
Accept types as strings in QTYPEP.

7 years agoSignal an error when invalid signal / slot signatures are encountered.
Ivan Shvedunov [Sat, 18 Dec 2010 20:51:47 +0000 (23:51 +0300)]
Signal an error when invalid signal / slot signatures are encountered.

7 years agoFixed OUTPUT-FILES method for CPP->SO in qt.asd.
Ivan Shvedunov [Thu, 16 Dec 2010 02:27:14 +0000 (05:27 +0300)]
Fixed OUTPUT-FILES method for CPP->SO in qt.asd.

There were problems with FASL relocation (qt was always reloaded upon load-op)
and SWANK:DELETE-SYSTEM-FILES. The latter was only deleting libcommonqt.so
leaving other files, which wasn't enough for libcommonqt.so symlink to be
recreated during make (the primary target is libcommonqt.so.1.0.0).

7 years agoRegression fix and test case for QByteArray unmarshalling qbytearray-fix
David Lichteblau [Sun, 12 Dec 2010 18:52:49 +0000 (19:52 +0100)]
Regression fix and test case for QByteArray unmarshalling

7 years agoremove INCLUDEPATH, library directories from project file
David Lichteblau [Sun, 12 Dec 2010 16:48:19 +0000 (17:48 +0100)]
remove INCLUDEPATH, library directories from project file

... they should not have been listed in that file in the first place
    (mea culpa)

... users who need a special directory (as I did in the past, when this
    file pointed to my home directory) should not edit the file, but
    rather run:

    qmake INCLUDEPATH=/path/to/abc LIBS='-L /path/to/def'

7 years agoIn case if receiver is specified for CONNECT, pass it as the first argument of the...
Ivan Shvedunov [Sun, 12 Dec 2010 16:24:08 +0000 (19:24 +0300)]
In case if receiver is specified for CONNECT, pass it as the first argument of the target function.

7 years agoImplemented dynamic slot connections, added DWIMish CONNECT and DISCONNECT.
Ivan Shvedunov [Sun, 12 Dec 2010 14:43:52 +0000 (17:43 +0300)]
Implemented dynamic slot connections, added DWIMish CONNECT and DISCONNECT.

7 years agoTreat const X& as X when looking for a static unmarshaller.
Ivan Shvedunov [Sun, 12 Dec 2010 13:39:19 +0000 (16:39 +0300)]
Treat const X& as X when looking for a static unmarshaller.

7 years agoqt.asd: Don't depend on bordaux-threads, it's not currently used anywhere, except...
Stas Boukarev [Wed, 8 Dec 2010 14:05:41 +0000 (17:05 +0300)]
qt.asd: Don't depend on bordaux-threads, it's not currently used anywhere, except for qt-repl system.

7 years agoqtypep: don't crash if instance is not an abstract-qobject.
Stas Boukarev [Wed, 8 Dec 2010 13:58:15 +0000 (16:58 +0300)]
qtypep: don't crash if instance is not an abstract-qobject.

7 years agoMake qt-tutorial.asd asdf2 friendly.
Stas Boukarev [Mon, 6 Dec 2010 19:26:49 +0000 (22:26 +0300)]
Make qt-tutorial.asd asdf2 friendly.

7 years agoFixed enum handling in can-marshal-p (this also fixes marshalling of QList<QKeySequen...
Ivan Shvedunov [Fri, 19 Nov 2010 22:20:54 +0000 (01:20 +0300)]
Fixed enum handling in can-marshal-p (this also fixes marshalling of QList<QKeySequence>).

7 years agoAdd QList<QListWidgetItem/QTreeWidgetItem/QTableWidgetItem/QGraphicsItem *> marshalling.
Stas Boukarev [Thu, 18 Nov 2010 12:41:56 +0000 (15:41 +0300)]
Add QList<QListWidgetItem/QTreeWidgetItem/QTableWidgetItem/QGraphicsItem *> marshalling.

7 years agoAdd QList<QKeySequence> marshalling.
Stas Boukarev [Wed, 17 Nov 2010 10:57:33 +0000 (13:57 +0300)]
Add QList<QKeySequence> marshalling.

7 years agoMerge https://github.com/ivan4th/commonqt
Stas Boukarev [Wed, 17 Nov 2010 10:35:20 +0000 (13:35 +0300)]
Merge https://github.com/ivan4th/commonqt

Conflicts:
commonqt.cpp

7 years agoMerge branch 'mi-hack' of git://gitorious.org/commonqt/commonqt
Stas Boukarev [Wed, 17 Nov 2010 06:30:34 +0000 (09:30 +0300)]
Merge branch 'mi-hack' of git://gitorious.org/commonqt/commonqt

7 years agoQuick hack to cache objects under their pointers for MI superclasses, too mi-hack
David Lichteblau [Tue, 16 Nov 2010 23:37:30 +0000 (00:37 +0100)]
Quick hack to cache objects under their pointers for MI superclasses, too

7 years agoAdded workaround for temporary macros + RT problem.
Ivan Shvedunov [Tue, 16 Nov 2010 23:02:27 +0000 (02:02 +0300)]
Added workaround for temporary macros + RT problem.

7 years agoFixed can-marshal-p for QLists and QByteArrays, added support for QList<QModelIndex>.
Ivan Shvedunov [Tue, 16 Nov 2010 12:24:28 +0000 (15:24 +0300)]
Fixed can-marshal-p for QLists and QByteArrays, added support for QList<QModelIndex>.

7 years ago"Inclusion of header files from include/Qt is deprecated."
Stas Boukarev [Tue, 16 Nov 2010 12:17:46 +0000 (15:17 +0300)]
"Inclusion of header files from include/Qt is deprecated."

7 years agoAdd QString* marshalling.
Stas Boukarev [Mon, 15 Nov 2010 08:53:25 +0000 (11:53 +0300)]
Add QString* marshalling.

7 years agoAdded some RT-based tests.
Ivan Shvedunov [Sat, 6 Nov 2010 21:48:17 +0000 (00:48 +0300)]
Added some RT-based tests.

7 years agoImproved marshalling/unmarshalling of QList<T> (for some values of T), QStringList...
Ivan Shvedunov [Sat, 6 Nov 2010 21:47:14 +0000 (00:47 +0300)]
Improved marshalling/unmarshalling of QList<T> (for some values of T), QStringList, QByteArray and QVariant.

Don't use the 'dynamic unmarshalling' approach introduced before, as it had some serious drawbacks:
1. Using QList<void*> / QList</int> for all QLists is risky at best.
   No proper constructors/destructors invoked when necessary and overall
   this approach relies on sheer luck.
2. It didn't handle primitive types like int correctly because marshaller-2 doesn't handle them.

Some macros are used on C++ side to assist QList<T> definitions for different types.

7 years agoDon't use gensyms to name macros as this approach is fragile when using SBCL, use...
Ivan Shvedunov [Sat, 6 Nov 2010 21:40:15 +0000 (00:40 +0300)]
Don't use gensyms to name macros as this approach is fragile when using SBCL, use gentemp and :qt-internal package instead.

7 years agoqlist-element-type: fix the detection of *.
Stas Boukarev [Thu, 4 Nov 2010 19:55:43 +0000 (22:55 +0300)]
qlist-element-type: fix the detection of *.

7 years agoExport qtypep.
Stas Boukarev [Sun, 31 Oct 2010 17:55:33 +0000 (20:55 +0300)]
Export qtypep.

7 years agoqt-repl: provide *sldb-quit-restart*.
Ivan Shvedunov [Sat, 23 Oct 2010 23:49:34 +0000 (03:49 +0400)]
qt-repl: provide *sldb-quit-restart*.

7 years agoAlways place Makefile into the proper directory.
Ivan Shvedunov [Sat, 23 Oct 2010 23:11:04 +0000 (03:11 +0400)]
Always place Makefile into the proper directory.

7 years agoqt-repl: don't allow *PACKAGE* to be reset to CL-USER when starting the GUI thread.
Ivan Shvedunov [Sat, 23 Oct 2010 22:16:59 +0000 (02:16 +0400)]
qt-repl: don't allow *PACKAGE* to be reset to CL-USER when starting the GUI thread.

7 years agoWorked around Qt+SBCL SIGCHLD handler conflict.
Ivan Shvedunov [Sat, 23 Oct 2010 22:15:45 +0000 (02:15 +0400)]
Worked around Qt+SBCL SIGCHLD handler conflict.

7 years agoDefine qobject-pointer generic function.
Stas Boukarev [Wed, 20 Oct 2010 18:08:27 +0000 (22:08 +0400)]
Define qobject-pointer generic function.

7 years agoreader.lisp: Recognize ==, <, etc, use operator== methods for them.
Stas Boukarev [Mon, 18 Oct 2010 19:31:14 +0000 (23:31 +0400)]
reader.lisp: Recognize ==, <, etc, use operator== methods for them.

7 years agoForgot to commit new file.
Stas Boukarev [Fri, 15 Oct 2010 22:57:13 +0000 (02:57 +0400)]
Forgot to commit new file.

7 years agocommonqt.cpp: Rename ThinBinding to Binding, and FatBinding to DynamicBinding.
Stas Boukarev [Fri, 15 Oct 2010 22:24:23 +0000 (02:24 +0400)]
commonqt.cpp: Rename ThinBinding to Binding, and FatBinding to DynamicBinding.

7 years agoRemove code duplication in resolve-call.
Stas Boukarev [Fri, 15 Oct 2010 22:03:37 +0000 (02:03 +0400)]
Remove code duplication in resolve-call.

7 years agoFactor out common parts of optimized-new and optimized-call.
Stas Boukarev [Fri, 15 Oct 2010 21:56:15 +0000 (01:56 +0400)]
Factor out common parts of optimized-new and optimized-call.

7 years agoSlightly reorganize file structure.
Stas Boukarev [Fri, 15 Oct 2010 21:27:49 +0000 (01:27 +0400)]
Slightly reorganize file structure.

7 years agoFactor out symbols creation from optimized-new/call.
Stas Boukarev [Fri, 15 Oct 2010 17:16:16 +0000 (21:16 +0400)]
Factor out symbols creation from optimized-new/call.

7 years agoSimplify and document cached-values-bind macro.
Stas Boukarev [Fri, 15 Oct 2010 17:06:39 +0000 (21:06 +0400)]
Simplify and document cached-values-bind macro.

7 years agoUse alexandria:named-lambda for naming continuations.
Stas Boukarev [Thu, 14 Oct 2010 16:41:45 +0000 (20:41 +0400)]
Use alexandria:named-lambda for naming continuations.

7 years agoFactor binding setting part from %%new into set-object-binding function.
Stas Boukarev [Thu, 14 Oct 2010 16:05:48 +0000 (20:05 +0400)]
Factor binding setting part from %%new into set-object-binding function.

7 years agoMore descriptive names for ClassFn related functions and variables.
Stas Boukarev [Thu, 14 Oct 2010 15:58:22 +0000 (19:58 +0400)]
More descriptive names for ClassFn related functions and variables.

7 years agoFactor out ClassFn calling from %%new and %%call into call-class-fun.
Stas Boukarev [Thu, 14 Oct 2010 15:22:00 +0000 (19:22 +0400)]
Factor out ClassFn calling from %%new and %%call into call-class-fun.

7 years agoReuse %%call inside %%new.
Stas Boukarev [Thu, 14 Oct 2010 13:05:51 +0000 (17:05 +0400)]
Reuse %%call inside %%new.

7 years agoFactor out common code in bindings.
Stas Boukarev [Thu, 14 Oct 2010 01:15:41 +0000 (05:15 +0400)]
Factor out common code in bindings.

7 years ago%qobject: don't signal an error on unsuccessful instance-qclass.
Stas Boukarev [Wed, 6 Oct 2010 14:11:43 +0000 (18:11 +0400)]
%qobject: don't signal an error on unsuccessful instance-qclass.

7 years agoDetermine the real object class in %QOBJECT, reuse cached objects of different class...
Ivan Shvedunov [Sun, 3 Oct 2010 23:33:46 +0000 (03:33 +0400)]
Determine the real object class in %QOBJECT, reuse cached objects of different class when inheritance allows it.

7 years agoFixed REPL integration.
Ivan Shvedunov [Sun, 3 Oct 2010 23:31:17 +0000 (03:31 +0400)]
Fixed REPL integration.

7 years agoAutomatic QList unmarshalling.
Stas Boukarev [Thu, 23 Sep 2010 13:01:44 +0000 (17:01 +0400)]
Automatic QList unmarshalling.

7 years agoenum-or: work on integers and enums.
Stas Boukarev [Thu, 23 Sep 2010 09:42:17 +0000 (13:42 +0400)]
enum-or: work on integers and enums.

7 years agomake-qapplication: instantiate QCoreApplication only once.
Stas Boukarev [Sat, 18 Sep 2010 00:21:04 +0000 (04:21 +0400)]
make-qapplication: instantiate QCoreApplication only once.

7 years agoExport null-qobject-p.
Stas Boukarev [Sat, 18 Sep 2010 00:11:56 +0000 (04:11 +0400)]
Export null-qobject-p.

7 years agocall.lisp: remove debug output.
Stas Boukarev [Fri, 17 Sep 2010 23:54:28 +0000 (03:54 +0400)]
call.lisp: remove debug output.

7 years ago%qobject: check that the class of the cached object is suitable.
Stas Boukarev [Fri, 17 Sep 2010 23:36:31 +0000 (03:36 +0400)]
%qobject: check that the class of the cached object is suitable.

7 years agomarshal.lisp(defmarshal): instead of LAMBDA define a function named TYPE-marshaller...
Stas Boukarev [Fri, 17 Sep 2010 23:28:56 +0000 (03:28 +0400)]
marshal.lisp(defmarshal): instead of LAMBDA define a function named TYPE-marshaller for easier debugging.

7 years agoFix call-with-signal-marshalling for immediate objects.
Stas Boukarev [Thu, 16 Sep 2010 00:30:26 +0000 (04:30 +0400)]
Fix call-with-signal-marshalling for immediate objects.

7 years agocall-with-signal-marshalling: setup **void for arguments correctly.
Stas Boukarev [Wed, 15 Sep 2010 23:17:03 +0000 (03:17 +0400)]
call-with-signal-marshalling: setup **void for arguments correctly.

7 years agoRemove unused call-with-signal-marshalling.
Stas Boukarev [Tue, 14 Sep 2010 02:39:13 +0000 (06:39 +0400)]
Remove unused call-with-signal-marshalling.

7 years agofind-qtype: off by one error.
Stas Boukarev [Fri, 10 Sep 2010 23:05:20 +0000 (03:05 +0400)]
find-qtype: off by one error.

7 years agocommonqt.pro: more sensible include and libs paths.
Stas Boukarev [Sat, 4 Sep 2010 03:22:19 +0000 (07:22 +0400)]
commonqt.pro: more sensible include and libs paths.

7 years agoMake emit-signal work on existing signals from Qt. Not very pretty.
Stas Boukarev [Sat, 4 Sep 2010 02:31:37 +0000 (06:31 +0400)]
Make emit-signal work on existing signals from Qt. Not very pretty.

7 years agoRemove unused bits.
Stas Boukarev [Mon, 30 Aug 2010 13:54:09 +0000 (17:54 +0400)]
Remove unused bits.

7 years agoRemove unused map-qobject-children.
Stas Boukarev [Mon, 30 Aug 2010 13:49:53 +0000 (17:49 +0400)]
Remove unused map-qobject-children.

7 years agoemit-signal: normalize signature with QMetaObject::normalizedSignature.
Stas Boukarev [Mon, 30 Aug 2010 04:10:43 +0000 (08:10 +0400)]
emit-signal: normalize signature with QMetaObject::normalizedSignature.

8 years agoAdd QVariant marshalling.
Stas Boukarev [Thu, 19 Aug 2010 23:01:51 +0000 (03:01 +0400)]
Add QVariant marshalling.

8 years agocommonqt.cpp: fix unused variables warnings, and some other minor clean up.
Stas Boukarev [Wed, 11 Aug 2010 01:16:40 +0000 (05:16 +0400)]
commonqt.cpp: fix unused variables warnings, and some other minor clean up.

8 years ago.gitignore: *.so => *.so*, add Makefile.
Stas Boukarev [Wed, 11 Aug 2010 01:04:44 +0000 (05:04 +0400)]
.gitignore: *.so => *.so*, add Makefile.

8 years agoFix compilation warnings.
Stas Boukarev [Wed, 11 Aug 2010 01:03:06 +0000 (05:03 +0400)]
Fix compilation warnings.

8 years agoinfo.lisp(find-qtype): If no <module> optional parameter is specified, search through...
Stas Boukarev [Thu, 5 Aug 2010 12:03:07 +0000 (16:03 +0400)]
info.lisp(find-qtype): If no <module> optional parameter is specified, search through all modules.

8 years agoCommit package.lisp.
Stas Boukarev [Wed, 4 Aug 2010 14:47:14 +0000 (18:47 +0400)]
Commit package.lisp.

8 years agoenum-or: new function which, does logical OR on enums.
Stas Boukarev [Wed, 4 Aug 2010 14:46:53 +0000 (18:46 +0400)]
enum-or: new function which, does logical OR on enums.

8 years agoAdd QList<QListWidgetItem*> unmarshalling.
Stas Boukarev [Tue, 3 Aug 2010 17:42:03 +0000 (21:42 +0400)]
Add QList<QListWidgetItem*> unmarshalling.
Adding umarshalling manually for every type doesn't seem good,
but whatever works to keep me going.

8 years agoTry to treat class objects allocated on the stack. Though I'm not really sure what...
Stas Boukarev [Tue, 3 Aug 2010 17:39:09 +0000 (21:39 +0400)]
Try to treat class objects allocated on the stack. Though I'm not really sure what's going on here.

8 years agoStrongly reference live dynamic objects
David Lichteblau [Mon, 24 May 2010 12:29:05 +0000 (14:29 +0200)]
Strongly reference live dynamic objects

8 years agoMethod lookup caching
David Lichteblau [Mon, 5 Apr 2010 17:47:26 +0000 (19:47 +0200)]
Method lookup caching

8 years agoLess strict uint unmarshalling
David Lichteblau [Sun, 4 Apr 2010 23:25:27 +0000 (01:25 +0200)]
Less strict uint unmarshalling

8 years agonew function cancel-finalization
David Lichteblau [Sun, 4 Apr 2010 23:25:12 +0000 (01:25 +0200)]
new function cancel-finalization

8 years agonew function cancel-finalization
David Lichteblau [Sun, 4 Apr 2010 19:49:07 +0000 (21:49 +0200)]
new function cancel-finalization

8 years agoRemoved +x bits
David Lichteblau [Sun, 4 Apr 2010 19:48:02 +0000 (21:48 +0200)]
Removed +x bits

8 years agodocumentation update: git has moved
David Lichteblau [Sun, 4 Apr 2010 12:57:39 +0000 (14:57 +0200)]
documentation update: git has moved

8 years agocast 'this', too
David Lichteblau [Sun, 4 Apr 2010 12:57:29 +0000 (14:57 +0200)]
cast 'this', too

8 years agosome QList support
David Lichteblau [Sun, 4 Apr 2010 12:57:09 +0000 (14:57 +0200)]
some QList support

8 years agodocumentation update
David Lichteblau [Sat, 3 Apr 2010 18:41:54 +0000 (20:41 +0200)]
documentation update

8 years agoWindows fixes
david [Fri, 2 Apr 2010 18:48:15 +0000 (20:48 +0200)]
Windows fixes

... on Windows, assume VC++ instead of GCC/MinGW

... no need for the STDCALL workaround (anymore?)

8 years agoMore casting fixes
David Lichteblau [Sat, 3 Apr 2010 17:18:37 +0000 (19:18 +0200)]
More casting fixes

8 years agoAdded missing size member in struct Class
David Lichteblau [Sat, 3 Apr 2010 16:50:35 +0000 (18:50 +0200)]
Added missing size member in struct Class

8 years agofixed %cast for modules
David Lichteblau [Sat, 3 Apr 2010 13:03:00 +0000 (15:03 +0200)]
fixed %cast for modules

8 years agomake the name argument to ensure-smoke mandatory
David Lichteblau [Fri, 5 Feb 2010 23:35:50 +0000 (00:35 +0100)]
make the name argument to ensure-smoke mandatory