Test receiving C++ classes by value in a slot
Thu Apr 9 00:37:07 CEST 2009 Tobias Rautenkranz <tobias@rautenkranz.ch>
* Test receiving C++ classes by value in a slot
hunk ./src/signal-slot.lisp 143
- "Receive a qt:object signal."
+ "Receive a qt:object pointer signal."
hunk ./src/signal-slot.lisp 154
- (5am:is (eq object button))
+ (5am:is (eq button object))
hunk ./src/signal-slot.lisp 160
+(5am:test receive-by-value
+ "Receive a C++ class by value signal."
+ (qt:with-app
+ (let ((model (make-instance 'qt:string-list-model))
+ (count 0))
+ (qt:connect (qt:get-signal model
+ "rowsInserted(QModelIndex, int, int)")
+ #'(lambda (parent start end)
+ (declare (ignore previous))
+ (5am:is (eq (cxx:internal-id (cxx:parent (cxx:index model start)))
+ (cxx:internal-id parent)))
+ (incf count)))
+ (5am:is (= 0 count))
+ (cxx:insert-rows model 0 1)
+ (5am:is (= 1 count))
+ (cxx:insert-rows model 0 3)
+ (5am:is (= 2 count)))))