Version 6 (modified by mira, 16 years ago) (diff) |
---|
Analysis
Overview
The frame paddings are the blank outer fields inside the frame which separate the frame`s content from the frame border. Paddings could have different width. They could be left, right, top or bottom. It should be possible for the user to define the paddings using HUD menu.
Task requirements
- The frame should have properties defining its padding width.
- There should be HUD menu for paddings (could be communal with margins`s HUD)
- The frame content should adjust its position to the paddings width.
Task result
The result of this task is source code.
Implementation idea
- Add Insets paddingInsets property to the Frame.
- Use the HUD to change the padding and show how the frame content is adjusting to the new padding.
Related
- trunk/sophie2-platform/doc/spec-diagrams/FrameBounds.png
- FRAME_PADDING_R0
- FRAME_BOUNDS_R0
- FRAME_SIZE_R0
- FRAME_INSETS_R0
How to demo
- Create frame with concrete paddings and check if the content adjusts to it.
- Use the HUD to change the padding and show how the frame content is adjusting to the new padding.
Design
- Add InsetsProp paddingInsets() property for representing padding insets. They are used by the BoundMode enum to calculate the frame rectangle in different modes.
- For their visualization add FramePaddingRectangle class in FrameViewToDo class. This class should be used for representation of the frame padding rectangle. It is used to init the paddingRectangle property, which is added to the frameSceneElement so that it could be drawn.
Implementation
(Implementation results should be described and linked here (from the wiki or the repository))
Testing
Comments
(Write comments for this or later revisions here.)