Saving / Loading of children's creation
Closed, ResolvedPublic

Description

We now have a baby word processor but the children cannot save his creation. We need to provide a core feature to save / load children's creation.

In the old Gtk+ version we had a simplified load / save dialog box that was showing only a directory view limited to the running activity.

I think we should explore other designs for this feature (I was inspired by the note taking application ColorNote on Android. Sugarlabs [1] is also an interesting more generic approach).

[1] https://wiki.sugarlabs.org/go/Human_Interface_Guidelines/The_Laptop_Experience/The_Journal

bcoudoin created this task.Feb 5 2016, 10:02 AM

My idea is to have a title entry box that will be filled automatically and synced automatically with the first line of text in the word processor. If the title is change manually it is no more synced automatically.

  • When the activity is left the document is saved under the title name.
  • When the children enter the activity he is proposed with the list of saved document and a 'new' button. The list is ordered by date (most recent on top).
  • The list of document has a way to delete a document with confirmation

This design could work for the drawing activity except that it forces to put a title but smaller children can't. So in visual activity we can instead make a small png of the children's creation at save time and use it in the document listing instead of text.

Could also be used for balancebox in the editor, which uses currently a single hardcoded target-filename for the "User"-dataset.

In general would be needed also for other activities that provide editors (maybe in future).

Target directory could be ApplicationInfo::getSharedWritablePath()/<activityname>/

amankumargupta added a subscriber: jjazeix.EditedFeb 16 2018, 6:53 PM

@jjazeix we can make it as a small GCompris directory viewer with the directory corresponding to the playing activity as said by hkaelberer, through which creations for that activity can be handled (as it is in GTK+ version).

Now since we have some activities in which we will save creation- balanceBox, WordProcessor, Piano composition, drawing activities(in the future), we need to have a core file for this and discuss and find a good way to implement this commonly for all the activities which will be able to list both- text files as well as image files within a single API(depending upon the type of creation saved by the activity) as said by bcoudoin in the last sentence of his comment above. We can present it like it was in GTK+ version (save icon to save the creation with the name entered by the user and open icon to view the files in the directory and load them)? The user can also delete a file.

Here's a prototype structure of it's application: https://pasteboard.co/H9fBN1E.jpg

We'll need to add a couple of more functions in the cpp files (depending upon the needs) to enable the functionalities as shown in the picture.

amankumargupta closed this task as Resolved.Nov 25 2018, 11:20 AM
amankumargupta moved this task from Backlog to Done on the GCompris board.
amankumargupta claimed this task.

GCCreationHandler is now integrated with all the configurable activities. Closing this task.