wiki:INTERACTIVITY_COMMONS_R0
Last modified 16 years ago Last modified on 02/03/09 07:49:02

Error: Macro BackLinksMenu(None) failed
compressed data is corrupt

Error: Macro TicketQuery(summary=INTERACTIVITY_COMMONS_R0, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|) failed
current transaction is aborted, commands ignored until end of transaction block

Analysis

Overview

Interactivity is defined as how a user interacts with the book. They may click a button that hides a field, or starts a timeline. They may show three images, then change the page.

These state changes are not permanent to the book. They can be considered changes to the state of the book for this particular user's session. Thus, we'll need to track these changes separately from authoring changes and more importantly, from changes that would affect the saved state of the book. While the author won't allow saving the book, we don't want to rely on that side-effect mechanism to handle this use-case.

You should look at the change system being put into place in PRO_LIB and determine how we can use that for temporary changes caused by the user interacting with the book. For example, there might be a separate change manager that is not part of the undo stack, or maybe later we'll deem it should be. But this change list would not be looked at by Author to determine if the book is indeed changed, in fact, it wouldn't even see these changes, as they would be kept on a completely different list.

In author, when a scene is rendered, it uses the book structure. When in the Reader Mode (or reader itself) it also applies changes from this second, user created change list. Switching between author and reader clears this change manager.

Mouse over is an interesting one. If we can mark the temporal change manager when the mouse enters a frame, ie before any actions are executed, then when the mouse LEAVES the frame, we can simply revert to that marked spot on the list. This would make it super simple for the author to generate something that showed 5 frames around the targeted frame, for example, and when the mouse left the targeted frame, they would all hide again.

Task requirements

  • Make sure the change manager allows us to keep a separate set of changes to objects in the book
  • Determine how we can utilize this second change manager to temporally change objects in the book, working with the action and link tasks

Task result

The result of this task is code

Implementation idea

  • Speak with gogov about the change manager
  • This is really a rendering state issue
  • Make sure we can reset easily to the default object state (change manager should handle this)
  • Remember that going into author mode should clear the temporal change manger

How to demo

  • Demo this along with the link and action tasks

Design

(Describe your design here.)

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.)