Version 7 (modified by boyan, 16 years ago) (diff) |
---|
Analysis
Overview
This group of tasks is about embedded books support. A user should be able to:
- Insert a book into a frame (either by dragging and dropping or by using the Insert menu).
- Choose whether the inserted book should be fully embedded or just linked.
- These two do not differ in the way the embedded book is displayed but in the way it is stored - inside the book for the former and at a remote location for the latter.
- Choose how to display the embedded book - in a frame or in its own window.
- Manage the resources in the embedded book (via the Resources palette).
- Navigate through the embedded book (change pages, interact with resources (play audio, video, etc.)).
- Modify some basic properties of the embedded book (rename, scale, delete, etc.)
At this revision only a basic version of some of these features will be implemented.
Task requirements
At this iteration the following should be achieved:
- Provide basic support for embedded books:
- Define and implement embedded book frame content.
- Allow inserting of a Sophie book through the menu.
- Resolve issues related to embedded book resources:
- See if cyclic referencies cause problems and resolve them.
- Make sure that when the embedded book is on focus, only its resources are shown in the Resource palette.
- Make sure that when the embedded book is on focus, only its pages are shown in the Pages palette.
- Think of other possible smells and resolve or document them.
- Define interaction with the embedded books:
- Add a panel for controlling the embedded books or use the existing book's bottom panel.
- Allow navigating through pages in the embedded book.
- Define how embedded books will be managed:
- Add an embedded books palette or use the existing books palette.
- Allow renaming and deleting of embedded books.
- (Optional) Document things related to embedded books in a wiki page: EMBEDDED_BOOKS?
Task result
- Source code
- (Optional) Wiki page
Implementation idea
- Create classes EmbeddedBookContent and EmbeddedBookResource (similar to other frame contents and resources).
- You may display the first page of a book as a starting point and change that later.
- Have a look at the Resource library and see how it handles cyclic dependencies.
- See similar tasks in the Related section to get an idea of how things can be done.
Related
EMBEDDED_BOOKS_CONTENT_R0
EMBEDDED_BOOKS_RESOURCE_SUPPORT_R0
EMBEDDED_BOOKS_MANAGING_R0
GROUP_PDF_R0
Specification about embedded books
How to demo
- Insert a Sophie2 book.
- Navigate through its pages.
- Show that resources are displayed correctly in the resource palette.
- (Optional) Show the created wiki page.
Design
Currently the resource library does not handle cyclic references. If this cannot be fixed, importing a book that will cause cyclic references will be disabled.
When an EmbeddedBook frame is selected, the current book and book view should change to reflect that. This will affect the resources displayed in the Resources palette and the behaviour of the book bottom panel.
Renaming and deleteing of embedded books will be implemented if resource management works.
The embedded books will be listed in the opened books palette, below the book they are embedded in and indented to the right.
Implementation
(Describe and link the implementation results here (from the wiki or the repository).)
Testing
(Place the testing results here.)
Comments
(Write comments for this or later revisions here.)