1 #ifndef __DW_OOFPOSITIONEDMGR_HH__
2#define __DW_OOFPOSITIONEDMGR_HH__
Set at the top when drawing.
Set at the top when getting the widget at the point.
dw::core::Shape implemtation for simple rectangles.
An interface to encapsulate platform dependent drawing.
bool consideredForExtremes
OOFAwareWidget * generator
core::Widget * getWidget(int i)
bool allChildrenConsideredForExtremes()
int getLeftBorder(int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)
Get the left border for the vertical position of y, for a height of h", based on floats; relative to ...
virtual bool posXAbsolute(Child *child)=0
void tellPosition1(core::Widget *widget, int x, int y)
Called before tellPosition2, see there for more.
OOFAwareWidget * container
bool hasFloatRight(int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)
Return whether there is a float on the right side.
lout::container::typed::HashTable< lout::object::TypedPointer< dw::core::Widget >, Child > * childrenByWidget
void containerSizeChangedForChildren()
bool affectsRightBorder(core::Widget *widget)
bool posXDefined(Child *child)
bool posYDefined(Child *child)
lout::container::typed::Vector< Child > * children
virtual void sizeAllocateChildren()=0
bool getPosLeft(core::Widget *child, int availWidth, int *result)
void addWidgetInFlow(OOFAwareWidget *widget, OOFAwareWidget *parent, int externalIndex)
int getLeftFloatHeight(int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)
Assuming there is a float on the left side, return the rest height of it.
bool affectsLeftBorder(core::Widget *widget)
int generatorPosX(Child *child)
int generatorPosY(Child *child)
bool getPosBorder(core::style::Length cssValue, int refLength, int *result)
int addWidgetOOF(core::Widget *widget, OOFAwareWidget *generator, int externalIndex)
bool getPosRight(core::Widget *child, int availWidth, int *result)
virtual bool posYAbsolute(Child *child)=0
void markExtremesChange(int ref)
void markSizeChange(int ref)
core::Allocation containerAllocation
void sizeAllocateEnd(OOFAwareWidget *caller)
bool doChildrenExceedContainer()
enum dw::oof::OOFPositionedMgr::@14 containerAllocationState
int getRightFloatHeight(int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)
Assuming there is a float on the right side, return the rest height of it.
void draw(core::View *view, core::Rectangle *area, core::DrawingContext *context)
void tellPosition2(core::Widget *widget, int x, int y)
Called after tellPosition1.
bool containerMustAdjustExtraSpace()
bool mayAffectBordersAtAll()
int getRightBorder(int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)
Get the right border for the vertical position of y, for a height of h, based on floats; relative to ...
bool generatorPosDefined(Child *child)
int getClearPosition(OOFAwareWidget *widget)
Return value is relative to the calling generator (not container).
void tellIncompletePosition1(core::Widget *generator, core::Widget *widget, int x, int y)
bool getPosTop(core::Widget *child, int availHeight, int *result)
void moveExternalIndices(OOFAwareWidget *generator, int oldStartIndex, int diff)
bool allChildrenConsideredForSize()
bool hasFloatLeft(int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)
Return whether there is a float on the left side.
bool dealingWithSizeOfChild(core::Widget *child)
void tellIncompletePosition2(core::Widget *generator, core::Widget *widget, int x, int y)
void sizeAllocateStart(OOFAwareWidget *caller, core::Allocation *allocation)
core::Widget * getWidgetAtPoint(int x, int y, core::GettingWidgetAtPointContext *context)
bool getPosBottom(core::Widget *child, int availHeight, int *result)
Represents additional data for OOF containers.
Typed version of container::untyped::HashTable.
Typed version of container::untyped::Vector.
This is the base class for many other classes, which defines very common virtual methods.
A typed version of object::Pointer.
int Length
Type for representing all lengths within dw::core::style.
Dw is in this namespace, or sub namespaces of this one.
Represents the allocation, i.e.