//prepare the arrays with the desired component sizes //
//determine where the breaks are: int breakCount; breakCount = _compositor->compose(natural, stretchability, shrinkability, componentCount, _lineWidth, breaks);
//lay out components according to breaks // }
//-------------------------------------------------------------------- //subclass of Compositor class SimpleCompositor : public Compositor { public: SimpleCompositor();
virtualint compose(Coord natural[], Coord stretch[], Coord shrink[], int componentCount, int lineWidth, int breaks);
// };
class TeXCompositor : public Compositor { public: TeXCompositor();
virtualint compose(Coord natural[], Coord stretch[], Coord shrink[], int componentCount, int lineWidth, int breaks);
// };
class ArrayCompositor : public Compositor { public: ArrayCompositor();
virtualint compose(Coord natural[], Coord stretch[], Coord shrink[], int componentCount, int lineWidth, int breaks);