Placeable |
Detailed Description
A model of the Placeable concept is an item that can be measured and placed within a visual space.
- Refinement Of:
- Associated Types:
Extents Type typename placeable_extents_type<Placeable>::type
Models adobe::extents_t. Used by the Placeable to relate the minimum visual extents it requires in order to be placed correctly. Placement Data Type typename placement_data_type<Placeable>::type
Models adobe::place_data_t. Contains the derived information necessary for the Placeable to position itself within the visual space
- Todo:
- Need concepts for extents and placement data
- Notation:
T
A type that is a model of Placeable t
Object of type T
e
Object of type Placeable::extents_type
p
Object of type Placeable::placement_data_type
- Definitions:
- Valid Expressions:
Name Expression Type requirements Return type Measure measure(t, e);
e is a reference parameter that on return must contain the calculated horizontal and vertical extents of t
within the visual spacevoid Place place(t, p);
p contains the calculated horizontal and vertical extents of t
within the visual spacevoid
- Expression Semantics:
Name Expression Precondition Semantics Postcondition Place place(t, p);
p
must not be less than the minimum extents specified bymeasure
Places t
within the visual space according top
t
is properly placed within the visual space
- Complexity Guarantees:
- Invariants:
- Type(s) Modeling this Concept:
- Most user interface elements are Placeable, in that they need to be measured before they can be placed appropriately within the dialog to which they belong.
- Notes:
- See Also:
- concept_placeable, measure, place
- Example:
Placeable_t p; adobe::extents_t h; measure(p, h); adobe::place_data_t(/*initialized with h and actual placement location*/); place(p, d);