My plans regarding implementation of Programming shape activity in Qt Quik
Souradeep Barua
sourad97 at gmail.com
Mon Mar 20 16:42:37 UTC 2017
Hi,
Here's a video link to a mockup of handling the blocks in the programming
shape activity. https://youtu.be/bCJGq7QD3Mk
Please let me know what you think about this and if you have any other
concerns about whether I can finish this activity within the timeline. If
you still think it cannot be done within the timeline I'll change my
proposal.
Looking forward to your reply. :)
On Mon, Mar 20, 2017 at 7:49 PM, Souradeep Barua <sourad97 at gmail.com> wrote:
> We can delete the block when it is double clicked. Should I make a demo
> video about that?
>
> On Mon, Mar 20, 2017 at 12:11 PM, Emmanuel Charruau <echarruau at gmail.com>
> wrote:
>
>> M'y worry is more about how you will attach graphical éléments. Allow
>> user to delete some if they want to.
>>
>> Le 20 mars 2017 00:26, "Souradeep Barua" <sourad97 at gmail.com> a écrit :
>>
>>> 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*
>>>
>>
>
>
> --
>
>
> *Regards,*
>
> *Souradeep Barua,*
>
> *Computer Science and Engineering Department,*
>
> *Jadavpur University, kolkata*
>
--
*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/1943fb5e/attachment-0001.html>
More information about the GCompris-devel
mailing list