[[BackLinksMenu]]

= Analysis =

== Overview ==
 * The book bottom panel is located at the bottom of the book window. 
 * The panel acts as a container for different elements controlling what is displayed in the book window.
 * The panel should allow attaching and detaching of controls.
 * The panel should change its appearance according to the contained controls.

An example book bottom panel:[[BR]]
[[Image(source:trunk/sophie2-platform/doc/spec-diagrams/BookPanel.png, 50%)]]

At this revision:
[[BR]]Revise the panel. Modularize it and extract the extensions. The Analysis should be made carefully.
== Task requirements ==
 * Revisе the existing code.
 * Make the panel use extensions of the !BookBottomPanelElement extension point of the book window
 * Keep the existing controls statically linked. They will be extracted as extensions in a different module later.
 * It should be part of the book window module.

== Task result ==
The result of this task should be source code.

== Implementation idea ==
Write a method that gets the extensions and adds them to the panel.

== Related ==
[wiki:UNPLANNED_BOOK_WINDOW_R0] [[BR]]
[wiki:PAGE_SELECTOR_R0]

== How to demo ==
 * Start sophie and create a book. 
 * Show the panel.

= Design =
 * The book bottom panel currently contains four parts:
  * the 'navigation panel',
  * the 'quick search panel',
  * the 'reader mode check box'
  * the 'show frames check box'
 * They are all defined as extensions. This is done by creating them from the corresponding 'provider'. see =>  [wiki:UNPLANNED_BOOK_WINDOW_R0 Book window wiki page] for mode information.
 * There will be one more part of the book bottom panel and it is the !ZoomPercentagePanel.
  * This panel will be created by the !ZoomPercentageProvider loaded as an extension.
  * !ZoomPercentagePanels will be created for every book by their provider.
= Implementation =
^(Implementation results should be described and linked here (from the wiki or the repository)^

= Testing =

= Comments =

= Log =
[[Include(wiki:BOOK_BOTTOM_PANEL_R0_LOG)]]