Version 21 (modified by milen, 16 years ago) (diff) |
---|
Analysis
(Give as much as possible of the needed information for designing and implementing the task in the following sections.)
Overview
There should be an automatic chaining availability when text frame is used.
Task requirements
- Add a new object in the frame list for chaining: "Auto chain".
- When setting auto chaining to a text frame the following things should be acquired:
- If there is no other text frame on the page and the text overflows:
- If next page exist and it is empty (without any content) then on the next page text frame is created with the same properties as the first one (position, size, background etc.).The both frames are linked.
- If next page exist and it is not empty then a new page is created after the current page and a text frame is created with the same properties as the first one (position, size, background etc.).The both frames are linked. All the pages after the new created one are shifted after it.
- If there is no next page, then it's created with a text frame with the same properties as the first one (position, size, background etc.).The both frames are linked.
- If there are some text frames(not one) on the page and the last frame overflow then a new page with the same number, location, size and style of the linked text frames is created and the new created frames are linked in the same way as in the previous page and they are linked with the last one of the first page.
- If there is unlinked text frame on the same page, auto chaining links with it. If the unlinked frames are more than one the link is with the earliest added one.
- If there are two pages which have text frames that are linked and if a new text frame is inserted to the first one then this frame should be linked after the last frame on the first page and before the first frame on the second page.
- If there is no other text frame on the page and the text overflows:
- Deleting a text frame which is part of linked text frames and is not the last one of them deletes the frame, don't destruct the links between the others and open a PopUp for asking if the text in the frame to be saved:
- If the answer is "yes" the text in the frame is reordered in the next frames in the line(in need a new frame as last one is created in the appropriate way).
- If the answer is "no" the frame and the text in the frame are deleted permanently.
If the deleted text frame is the last one, a warning message that the frame with all its content will be deleted should appear together with confirmation and deny buttons.
- Deleting a page that contain linked text frames with other pages' frames should act in the same way as deleting a frame but including all the linked frames in the page.
- Unlinking text frames should come with a PopUp asking where the text after the point of interception to be saved: before or after this point:
- If before is chosen:
- The text is saved before the point of interception
- If the frames before are not big enough for the entire text, the text after the last frame of them becomes floating and invisible.
- The frames after the point of unlinking stays empty but not deleted.
- All the other links between the other text frames still exist.
- If after is chosen:
- All the text frames and text in them remain.
- This link is broken but all the other links between the other frames still exist.
- If before is chosen:
Task result
The result is code.
Implementation idea
Add auto chain in the list of chained frames:
Auto chain should always be available for a text frame.
Related
TEXT_AUTO_CHAIN_BEHAVIOUR_R0
TEXT_CHAINING_BEHAVIOUR_R0
TEXT_AUTO_CHAIN_MULTI_FLOW_R0
TEXT_CHAIN_HALOS_R0
How to demo
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.)
Attachments
- autochain.jpg (21.7 KB) - added by milen 16 years ago.
- TextChainHud.png (9.5 KB) - added by boyan 16 years ago.