Adobe Source Libraries 1.49.0
A collection of C++ libraries.
Loading...
Searching...
No Matches

Classes

struct  PlaceableConcept< T >
 Concept map and constraints checking for the Placeable concept. More...
struct  PlaceableConcept< T * >
 Concept map and constraints checking for to allow std::reference_wrapper<T> to model this concept when T does. More...
struct  PlaceableTwoPassConcept< T >
 Concept map and constraints checking for the PlaceableTwoPass concept. More...
struct  PlaceableTwoPassConcept< T * >
 Concept map and constraints checking for to allow std::reference_wrapper<T> to model this concept when T does. More...

Functions

template<class T>
void measure (T &t, extents_t &result)
template<class T>
void place (T &t, const place_data_t &place_data)
template<class T>
void measure_vertical (T &t, extents_t &calculated_horizontal, const place_data_t &placed_horizontal)

Detailed Description

Function Documentation

◆ measure()

template<class T>
void measure ( T & t,
extents_t & result )

Get the placeable object-specific information from the client. The client is allowed to modify the Extents parameter passed in as they please in order to best describe the geometric details of this placeable object... It is an ouput-only parameter. This is the second (first if the placeable object is not a container) proc called while the layout engine is solving the layout.

The default implementation calls the member function on T of the same name. Can be specialized or overloaded for user types.

Definition at line 166 of file placeable_concept.hpp.

◆ place()

template<class T>
void place ( T & t,
const place_data_t & place_data )

Place is the final function signaled from the Eve engine to a placeable object. When this function is made there are several guarantees for the client:

  • All parent views for this placeable object have already had their place function invoked
  • All data provided in the place_data_t is the final geometric information for the placeable object.
Note that this function can be invoked multiple times- given a
view re-layout (i.e. during a window resize event) the other
functions will not be invoked- the layout will be adjusted
internally in the Eve engine and only this function will be
invoked with updated placement information for the placeable
object.

The default implementation calls the member function on T of the same name. Can be specialized or overloaded for user types.

Definition at line 198 of file placeable_concept.hpp.

◆ measure_vertical()

template<class T>
void measure_vertical ( T & t,
extents_t & calculated_horizontal,
const place_data_t & placed_horizontal )

Sometimes a placeable object's height is dependent upon the solved width of that placeable object. An example of this would be a placeable object with paginated text inside of it. In that case, the placeable object should provide a function here to remeasure just the vertical slice information for the placeable object. All other information modified here will be discarded in favor of the values given during the first calculate call. Calculated_vertical is an output-only parameter. Horizontal and positioning information should be obtained from placed_horizontal.

The default implementation calls the member function on T of the same name. Can be specialized or overloaded for user types.

Definition at line 293 of file placeable_concept.hpp.