Dillo
Public Member Functions | List of all members
dw::oof::OutOfFlowMgr Class Referenceabstract

Represents additional data for OOF containers. More...

#include <outofflowmgr.hh>

Public Member Functions

 OutOfFlowMgr ()
 
virtual ~OutOfFlowMgr ()
 
virtual void sizeAllocateStart (OOFAwareWidget *caller, core::Allocation *allocation)=0
 
virtual void sizeAllocateEnd (OOFAwareWidget *caller)=0
 
virtual void containerSizeChangedForChildren ()=0
 
virtual void draw (core::View *view, core::Rectangle *area, core::DrawingContext *context)=0
 
virtual void markSizeChange (int ref)=0
 
virtual void markExtremesChange (int ref)=0
 
virtual core::WidgetgetWidgetAtPoint (int x, int y, core::GettingWidgetAtPointContext *context)=0
 
virtual void addWidgetInFlow (OOFAwareWidget *widget, OOFAwareWidget *parent, int externalIndex)=0
 
virtual int addWidgetOOF (core::Widget *widget, OOFAwareWidget *generator, int externalIndex)=0
 
virtual void calcWidgetRefSize (core::Widget *widget, core::Requisition *size)=0
 
virtual void moveExternalIndices (OOFAwareWidget *generator, int oldStartIndex, int diff)=0
 
virtual void tellPosition1 (core::Widget *widget, int x, int y)=0
 Called before tellPosition2, see there for more. More...
 
virtual void tellPosition2 (core::Widget *widget, int x, int y)=0
 Called after tellPosition1. More...
 
virtual void tellIncompletePosition1 (core::Widget *generator, core::Widget *widget, int x, int y)=0
 
virtual void tellIncompletePosition2 (core::Widget *generator, core::Widget *widget, int x, int y)=0
 
virtual void getSize (core::Requisition *containerReq, int *oofWidth, int *oofHeight)=0
 
virtual bool containerMustAdjustExtraSpace ()=0
 
virtual void getExtremes (core::Extremes *containerExtr, int *oofMinWidth, int *oofMaxWidth)=0
 
virtual int getLeftBorder (int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)=0
 
virtual int getRightBorder (int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)=0
 
virtual bool hasFloatLeft (int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)=0
 
virtual bool hasFloatRight (int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)=0
 
virtual int getLeftFloatHeight (int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)=0
 
virtual int getRightFloatHeight (int y, int h, OOFAwareWidget *lastGen, int lastExtIndex)=0
 
virtual bool affectsLeftBorder (core::Widget *widget)=0
 
virtual bool affectsRightBorder (core::Widget *widget)=0
 
virtual bool mayAffectBordersAtAll ()=0
 
virtual int getClearPosition (OOFAwareWidget *widget)=0
 
virtual bool dealingWithSizeOfChild (core::Widget *child)=0
 
virtual int getAvailWidthOfChild (core::Widget *child, bool forceValue)=0
 
virtual int getAvailHeightOfChild (core::Widget *child, bool forceValue)=0
 
virtual int getNumWidgets ()=0
 
virtual core::WidgetgetWidget (int i)=0
 

Detailed Description

Represents additional data for OOF containers.

Constructor & Destructor Documentation

dw::oof::OutOfFlowMgr::OutOfFlowMgr ( )
dw::oof::OutOfFlowMgr::~OutOfFlowMgr ( )
virtual

Member Function Documentation

virtual void dw::oof::OutOfFlowMgr::addWidgetInFlow ( OOFAwareWidget widget,
OOFAwareWidget parent,
int  externalIndex 
)
pure virtual
virtual int dw::oof::OutOfFlowMgr::addWidgetOOF ( core::Widget widget,
OOFAwareWidget generator,
int  externalIndex 
)
pure virtual
virtual bool dw::oof::OutOfFlowMgr::affectsLeftBorder ( core::Widget widget)
pure virtual
virtual bool dw::oof::OutOfFlowMgr::affectsRightBorder ( core::Widget widget)
pure virtual
virtual void dw::oof::OutOfFlowMgr::calcWidgetRefSize ( core::Widget widget,
core::Requisition size 
)
pure virtual
virtual bool dw::oof::OutOfFlowMgr::containerMustAdjustExtraSpace ( )
pure virtual
virtual void dw::oof::OutOfFlowMgr::containerSizeChangedForChildren ( )
pure virtual
virtual bool dw::oof::OutOfFlowMgr::dealingWithSizeOfChild ( core::Widget child)
pure virtual
virtual void dw::oof::OutOfFlowMgr::draw ( core::View view,
core::Rectangle area,
core::DrawingContext context 
)
pure virtual
virtual int dw::oof::OutOfFlowMgr::getAvailHeightOfChild ( core::Widget child,
bool  forceValue 
)
pure virtual
virtual int dw::oof::OutOfFlowMgr::getAvailWidthOfChild ( core::Widget child,
bool  forceValue 
)
pure virtual
virtual int dw::oof::OutOfFlowMgr::getClearPosition ( OOFAwareWidget widget)
pure virtual

Return value is relative to the calling generator (not container).

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

virtual void dw::oof::OutOfFlowMgr::getExtremes ( core::Extremes containerExtr,
int *  oofMinWidth,
int *  oofMaxWidth 
)
pure virtual
virtual int dw::oof::OutOfFlowMgr::getLeftBorder ( int  y,
int  h,
OOFAwareWidget lastGen,
int  lastExtIndex 
)
pure virtual

Get the left border for the vertical position of y, for a height of h", based on floats; relative to the *container.

The border includes marging/border/padding of the calling textblock but is 0 if there is no float, so a caller should also consider other borders.

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

Referenced by dw::Textblock::calcBorders().

virtual int dw::oof::OutOfFlowMgr::getLeftFloatHeight ( int  y,
int  h,
OOFAwareWidget lastGen,
int  lastExtIndex 
)
pure virtual

Assuming there is a float on the left side, return the rest height of it. y is relative to the container.

See also getLeftBorder().

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

Referenced by dw::Textblock::calcBorders().

virtual int dw::oof::OutOfFlowMgr::getNumWidgets ( )
pure virtual
virtual int dw::oof::OutOfFlowMgr::getRightBorder ( int  y,
int  h,
OOFAwareWidget lastGen,
int  lastExtIndex 
)
pure virtual

Get the right border for the vertical position of y, for a height of h, based on floats; relative to the container.

See also getLeftBorder().

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

Referenced by dw::Textblock::calcBorders().

virtual int dw::oof::OutOfFlowMgr::getRightFloatHeight ( int  y,
int  h,
OOFAwareWidget lastGen,
int  lastExtIndex 
)
pure virtual

Assuming there is a float on the right side, return the rest height of it. y is relative to the container.

See also getLeftFloatHeight(), getLeftBorder().

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

Referenced by dw::Textblock::calcBorders().

virtual void dw::oof::OutOfFlowMgr::getSize ( core::Requisition containerReq,
int *  oofWidth,
int *  oofHeight 
)
pure virtual
virtual core::Widget* dw::oof::OutOfFlowMgr::getWidget ( int  i)
pure virtual
virtual core::Widget* dw::oof::OutOfFlowMgr::getWidgetAtPoint ( int  x,
int  y,
core::GettingWidgetAtPointContext context 
)
pure virtual
virtual bool dw::oof::OutOfFlowMgr::hasFloatLeft ( int  y,
int  h,
OOFAwareWidget lastGen,
int  lastExtIndex 
)
pure virtual

Return whether there is a float on the left side. y is relative to the container.

See also getLeftBorder().

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

Referenced by dw::Textblock::calcBorders().

virtual bool dw::oof::OutOfFlowMgr::hasFloatRight ( int  y,
int  h,
OOFAwareWidget lastGen,
int  lastExtIndex 
)
pure virtual

Return whether there is a float on the right side. y is relative to the container.

See also hasFloatLeft(), getLeftBorder();

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

Referenced by dw::Textblock::calcBorders().

virtual void dw::oof::OutOfFlowMgr::markExtremesChange ( int  ref)
pure virtual
virtual void dw::oof::OutOfFlowMgr::markSizeChange ( int  ref)
pure virtual
virtual bool dw::oof::OutOfFlowMgr::mayAffectBordersAtAll ( )
pure virtual
virtual void dw::oof::OutOfFlowMgr::moveExternalIndices ( OOFAwareWidget generator,
int  oldStartIndex,
int  diff 
)
pure virtual
virtual void dw::oof::OutOfFlowMgr::sizeAllocateEnd ( OOFAwareWidget caller)
pure virtual
virtual void dw::oof::OutOfFlowMgr::sizeAllocateStart ( OOFAwareWidget caller,
core::Allocation allocation 
)
pure virtual
virtual void dw::oof::OutOfFlowMgr::tellIncompletePosition1 ( core::Widget generator,
core::Widget widget,
int  x,
int  y 
)
pure virtual
virtual void dw::oof::OutOfFlowMgr::tellIncompletePosition2 ( core::Widget generator,
core::Widget widget,
int  x,
int  y 
)
pure virtual
virtual void dw::oof::OutOfFlowMgr::tellPosition1 ( core::Widget widget,
int  x,
int  y 
)
pure virtual

Called before tellPosition2, see there for more.

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.

Referenced by dw::Textblock::wrapWordInFlow(), and dw::Textblock::wrapWordOofRef().

virtual void dw::oof::OutOfFlowMgr::tellPosition2 ( core::Widget widget,
int  x,
int  y 
)
pure virtual

Called after tellPosition1.

An implementation should only implement either tellPosition1 or tellPosition2. Coordinates are relative to the container.

Implemented in dw::oof::OOFFloatsMgr, and dw::oof::OOFPositionedMgr.


The documentation for this class was generated from the following files: