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