wiki:DETACHED_TEXT_FRAME_EDITOR_R0
Last modified 14 years ago Last modified on 01/29/09 00:08:08

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

Error: Macro TicketQuery(summary=DETACHED_TEXT_FRAME_EDITOR_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

The user should be able to edit text frames content in another dialog appearing above. This dialog should provide the user with full text editing functionality, also spell check and text search(Please be aware that the last two are different tasks, however this editor should provide easy integration for them as well as for text formatting tasks). Should be evoked from tools menu and halo buttons. Also when the user select a text frame or the text inside and do a right click the detached text frame editor should be available from the drop down menu.

Task requirements

Create a prototype of the editor. With 3 areas

  • properties bar - text stings and styles should be available here as well as paragraph properties
  • preview area - the text should be visible and editable here
  • functions bar - contains OK and cancel buttons, both close the dialog, cancel button repealed the changes.

Task result

  • The result should be code

Implementation idea

Try using or extending JTextPane. Here is a scheme that basically explains the layout.
source:trunk/sophie2-platform/doc/userdoc-images/RELEASE_4/detachedTextFrameEditor.jpg

TEXT_FORMATTING?
TEXT_SPELL_CHECK?
SEARCHING?

How to demo

  • run the application
  • create a new book
  • insert a text frame
  • evoke the text editor
  • edit the text and save the changes

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