EQL5/examples/M-modules/quick/sokoban
2017-03-19 00:16:31 +01:00
..
3rd-party QML sokoban: add undo 2017-03-16 08:51:15 +01:00
lib small revision of '.pro' files 2017-03-04 11:41:32 +01:00
qml add QML example "table-view"; some revisions; 2017-03-19 00:16:31 +01:00
properties.lisp add QML example "sokoban" (port of "examples/7-Sokoban/") 2017-02-28 10:35:37 +01:00
qml-lisp.lisp add QML example "table-view"; some revisions; 2017-03-19 00:16:31 +01:00
README.txt review QML "sokoban" 2017-03-06 17:21:20 +01:00
sokoban.lisp QML sokoban: add undo 2017-03-16 08:51:15 +01:00

INFO
====

This is a QML port of example "examples/7-Sokoban/".

The main difference is the use of simple animations when moving items.


RUN
===

Please run it from this directory. For Emacs/Slime, this would be:

    eql5 ~/slime/eql-start-swank.lisp sokoban.lisp


NOTES
=====

This example shows how to dynamically create QML items from Lisp.

The ability to call Lisp from QML comes in handy for the Lisp functions
which need to wait for eventual running animations to finish.

See e.g. class:

    "qml/ext/NumberAnimationExt.qml"


TIP
===

See also function QML-SET-ALL, which is convenient for dynamically created
QML items, since many of them may have the same 'objectName'.

Examples:

    (qml-set-all "wall" "opacity" 1/2)

    (qml-set-all "object" "scale" 2/3)