Changes between Version 7 and Version 8 of PAGE_ELEMENT_GROUPING_R0


Ignore:
Timestamp:
05/20/09 12:30:06 (16 years ago)
Author:
kyli
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PAGE_ELEMENT_GROUPING_R0

    v7 v8  
    77 
    88== Overview == 
    9 ( The idea is to have groups of page elements in the model. Selecting page elements is one thing and creating a group of the selected elements is the thing that this task is about. Grouped elements should be persisted and restored when opening the book. A page element should be part of no group or one group only - page elements cannot be part of different groups. ) 
    109 
    11 Every book view has a work area related to it. It must contain the corresponding page, as well as the book extras, attached to it. Pages can contain frames or groups of frames. Extras will have similar abilities in the near future. The groups should be a method for organizing frames and other groups for easy manipulation - for example, we can group several frames to move/resize them together, change their background, etc. If we go further, groups should contain frames and/or other groups. Grouping 2 elements (groups an/or frames) together means making a group, containing both of them. Ungrouping of group is detaching its top-level elements from each other. Groups should not contain both frames and stickies (for example), so it would be better if book extras were at the same grouping level as the page itself. ''To be continued..'' 
     10Every book view has a work area related to it. It must contain the corresponding page, as well as the book extras, attached to it. Pages can contain frames or groups of frames. Extras probably will have similar abilities in the near future.  
     11The groups should be a method for organizing frames and other groups for easy manipulation - for example, we can group several frames to move/resize them together, change their background, etc. If we go further, groups should contain frames and/or other groups. Grouping 2 elements (groups an/or frames) together means making a group, containing both of them. Ungrouping of group is detaching its top-level elements from each other. Groups should not contain both frames and stickies (for example), so it would be better if book extras were at the same grouping level as the page itself. A page element (frame, sticky, etc.) can be in only one group at one time.  
    1212 
    1313== Task requirements == 
    1414 * Define how grouping should be introduced in the model. 
    15  * Save groups along with the book. 
    16  * Load groups along with the book. 
     15  * Groups must be persistable along with the book. 
     16  * Groups must not conflict with the current template model. 
     17  * A group cannot contain both frames and extras. 
    1718  * If a group is loaded it should be represented as selected elements in the view. 
    1819 * Create a halo button that will create a group of elements from the currently selected ones when clicked in the view. 
     
    2223== Task result == 
    2324 * code 
     25 
    2426== Implementation idea == 
    25  * In the class for page in the model, create a value list property containing groups of elements. 
    26  * Implement the group of elements as s class. 
    27   * It should be able to contain different kinds of elements. 
     27 * Get into the current group model, get familiar with its negatives. 
     28 * Watch this [http://asteasolutions.net/videos/2009-05-16-Discussion05(bg%20audio).MPG video], see the new design ideas for the grouping. 
     29 * Use the current tests written for grouping. 
     30 * In order to make a group persistable, it would be best to be implemented as a resource. 
    2831  * It may contain different properties that are common for the group like background(for background supported elements), border color, border size etc. 
    2932  * It may have a size and position. This is the bounding rectangle for the elements in the group.