My plans regarding implementation of Programming shape activity in Qt Quik
Souradeep Barua
sourad97 at gmail.com
Sun Mar 19 23:26:21 UTC 2017
Hi,
Emmanuel Charruau (IRC Nickname: Allon1) asked me how I would implement the
block part in programming shape activity from Qt Point of view. He asked me
to send this to Johnny and other mentors, that's why I am sending this to
the mailing list.
Following is a description. Please let me know if you find this convincing,
or else I would change my proposal.
A mockup of the activity is here : https://youtu.be/ERcfHr7W2ek
The bar on the left side of the answer sheet will be a qml object, which is
a grid view. It has drop points attached to it.
Adding a new block to it will increase the count (Similar to what is done
on AnswerSheet.qml in programming maze).
The loop qml object will have properties like :
repeat: when the value of it's spin box is changed, editingFinished()
signal is sent. And the corresponding onEditingFinished handler sets this
variable to the spin box value.
statements_count: counts the number of statements attached to it
We use an array to store information about the instructions. If we are
calling it codequeue.
function create_queue() {
codequeue = []
for 1 to bar.count:
if(barmodel.get(index) == normal_statements)
codequeue.push(normal_statements)
else if(barmodel.get(index) == loop_object)
{
for 1 to loop_object.repeat:
for 1 to loop_object.statements_count:
codequeue.push(normal_statements)
}
}
When the codequeue is iterated:
function run() {
if(codequeue[it++] == forward)
movePenForward()
else if(codequeue[it++] == turn)
turnPen()
}
Please let me know as soon as possible, if this seems convincing to you
that it can be finished within the given timeline or else, I would change
my proposal immediately.
Thanks :)
--
*Regards,*
*Souradeep Barua,*
*Computer Science and Engineering Department,*
*Jadavpur University, kolkata*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/gcompris-devel/attachments/20170320/dacfae0b/attachment-0001.html>
More information about the GCompris-devel
mailing list