[[BackLinksMenu]] [[TicketQuery(summary=TIMELINES_REDESIGN_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|)]] = Analysis = == Overview == The current implementation of timelines lacks a couple of things and those need to be added: * Support for groups activation. * Intro, main and outro parts. * Properly manage the time values of each page - currently there is one timer for the book, changing the page should start a new timer for the page. Besides that the current model should be reworked to correspond to the new resource model. == Task requirements == This task should modify the timeline flap, which shows timeline properties for a selected object (which can be a frame or a group of frames) or a page. The timeline flap for an object should consist of: * the title bar of the timeline flap should display the name of the selected object. * activation channels or a visibility channel; more channels will appear in later revisions of this task. * (If more than one frame is in the group, each frame in the group should have its own set of channels.) * a playhead that can be moved across the timeline from 0:00 to 1:00. * a control bar for the selected channel with two fields and four buttons: * a field where the user can enter a start point (by default 0:00) * a field where the user can enter a stop point (by default 0:00) * a "toggle visibility" button: if clicked this will change the state of the frame's visibility from the start point to the end point. * a "show all" button: if clicked this will make the frame visible for the complete duration of the timeline. * a "hide all" button: if clicked this will make the frame invisible for the complete duration of the timeline. Activation for a frame or a group of frames means the time span when the frame's own timeline is played. The channel for activation allows to set these periods in the parent timeline. By default, all frames on the page are shown all the time. If the user changes a frame's visibility, this will be reflected in the frame's channel at the point in time where the playhead is currently set. If the user moves the playhead, the page should reflect the visibility of the text frames at that particular point in the timeline. In future revisions of this task, other kinds of frames will appear on the timeline. Other frame properties (example: margin types) will appear as channels for each frame; each of these properties should probably have its own dedicated control bar (e.g., color & width settings for margins). Future revisions of this task will allow starting a timeline from a link; this task only includes manipulating the timeline via the timeline interface in Author to show and hide text frames. A wireframe: [[Image(source:/branches/private/danvisel/sophie2-platform/doc/spec-diagrams/TimelineWireframe2.png)]] The properties of the selected frame or object appear as channels. For this revision, it's just visibility. The channels can be selected; in this wireframe, Frame A's visibility is selected. (In the future, we'll want multiple selection.) The control bar of the timeline interface has fields for start point, end point, and four buttons. If the user clicks the "Hide All" button, the frame will be hidden from 0:00-1:00. If the user thn enters 0:10-0:20 and clicks the "Toggle Visiblity" button, the frame will be shown from 0:10-0:20. Below the control bar is the slider (the orange arrow); this can be dragged back and forth by the user. The timeline for a page shows channels for all the objects on the page; they can be activated or deactivated: [[Image(source:/branches/private/danvisel/sophie2-platform/doc/spec-diagrams/TimelineRedesignPages.png)]] An activated frame will play its timeline when the page timeline plays. == Task result == Prototype. == Implementation idea == * Use the design draft posted by milo in http://pastebin.asteasolutions.net/f444cc8f1. * Implement new time values that are shifted by a large value like C = 10^15^ for the 3 different parts of the timeline, thus intro will be in the interval of [0, C), main - [C, 2C), outro - [2C, 3C). == Related == [wiki:GROUP_TIMELINES_R0] == How to demo == ^(Provide instructions for demonstration of the task.)^ = 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.)