diff options
author | Sebastian Geerken <devnull@localhost> | 2014-09-12 01:40:07 +0200 |
---|---|---|
committer | Sebastian Geerken <devnull@localhost> | 2014-09-12 01:40:07 +0200 |
commit | a42d8297257c9d68062811467a3bd2aaab7c16ff (patch) | |
tree | 41a0c822f10393874dbd39a0d6a6666092f1c0e1 /dw/oofpositionedmgr.hh | |
parent | 81e52eabc07c79384d89d7d863efe19dd95cbd93 (diff) |
OOFAwareWidget (instead of Textblock): start.
Diffstat (limited to 'dw/oofpositionedmgr.hh')
-rw-r--r-- | dw/oofpositionedmgr.hh | 65 |
1 files changed, 34 insertions, 31 deletions
diff --git a/dw/oofpositionedmgr.hh b/dw/oofpositionedmgr.hh index d19c60b6..9a1d59b7 100644 --- a/dw/oofpositionedmgr.hh +++ b/dw/oofpositionedmgr.hh @@ -10,21 +10,22 @@ namespace oof { class OOFPositionedMgr: public OutOfFlowMgr { protected: - virtual int cbBoxOffsetX () = 0; - virtual int cbBoxOffsetY () = 0; - virtual int cbBoxRestWidth () = 0; - virtual int cbBoxRestHeight () = 0; + virtual int containerBoxOffsetX () = 0; + virtual int containerBoxOffsetY () = 0; + virtual int containerBoxRestWidth () = 0; + virtual int containerBoxRestHeight () = 0; - inline int cbBoxDiffWidth () { return cbBoxOffsetX () + cbBoxRestWidth (); } - inline int cbBoxDiffHeight () - { return cbBoxOffsetY () + cbBoxRestHeight (); } + inline int containerBoxDiffWidth () + { return containerBoxOffsetX () + containerBoxRestWidth (); } + inline int containerBoxDiffHeight () + { return containerBoxOffsetY () + containerBoxRestHeight (); } - Textblock *containingBlock; - core::Allocation containingBlockAllocation; + OOFAwareWidget *container; + core::Allocation containerAllocation; lout::container::typed::Vector<core::Widget> *children; - bool doChildrenExceedCB (); + bool doChildrenExceedContainer (); bool haveExtremesChanged (); void sizeAllocateChildren (); @@ -43,11 +44,12 @@ protected: int *ascent, int *descent); public: - OOFPositionedMgr (Textblock *containingBlock); + OOFPositionedMgr (OOFAwareWidget *container); ~OOFPositionedMgr (); - void sizeAllocateStart (Textblock *caller, core::Allocation *allocation); - void sizeAllocateEnd (Textblock *caller); + void sizeAllocateStart (OOFAwareWidget *caller, + core::Allocation *allocation); + void sizeAllocateEnd (OOFAwareWidget *caller); void containerSizeChangedForChildren (); void draw (core::View *view, core::Rectangle *area); @@ -55,35 +57,36 @@ public: void markExtremesChange (int ref); core::Widget *getWidgetAtPoint (int x, int y, int level); - void addWidgetInFlow (Textblock *textblock, Textblock *parentBlock, + void addWidgetInFlow (OOFAwareWidget *widget, OOFAwareWidget *parent, int externalIndex); - int addWidgetOOF (core::Widget *widget, Textblock *generatingBlock, + int addWidgetOOF (core::Widget *widget, OOFAwareWidget *generator, int externalIndex); - void moveExternalIndices (Textblock *generatingBlock, int oldStartIndex, + void moveExternalIndices (OOFAwareWidget *generator, int oldStartIndex, int diff); void tellPosition (core::Widget *widget, int yReq); - void getSize (core::Requisition *cbReq, int *oofWidth, int *oofHeight); - void getExtremes (core::Extremes *cbExtr, + void getSize (core::Requisition *containerReq, int *oofWidth, + int *oofHeight); + void getExtremes (core::Extremes *containerExtr, int *oofMinWidth, int *oofMaxWidth); - int getLeftBorder (Textblock *textblock, int y, int h, Textblock *lastGB, - int lastExtIndex); - int getRightBorder (Textblock *textblock, int y, int h, Textblock *lastGB, - int lastExtIndex); + int getLeftBorder (OOFAwareWidget *widget, int y, int h, + OOFAwareWidget *lastGen, int lastExtIndex); + int getRightBorder (OOFAwareWidget *widget, int y, int h, + OOFAwareWidget *lastGen, int lastExtIndex); - bool hasFloatLeft (Textblock *textblock, int y, int h, Textblock *lastGB, - int lastExtIndex); - bool hasFloatRight (Textblock *textblock, int y, int h, Textblock *lastGB, - int lastExtIndex); + bool hasFloatLeft (OOFAwareWidget *widget, int y, int h, + OOFAwareWidget *lastGen, int lastExtIndex); + bool hasFloatRight (OOFAwareWidget *widget, int y, int h, + OOFAwareWidget *lastGen, int lastExtIndex); - int getLeftFloatHeight (Textblock *textblock, int y, int h, - Textblock *lastGB, int lastExtIndex); - int getRightFloatHeight (Textblock *textblock, int y, int h, - Textblock *lastGB, int lastExtIndex); + int getLeftFloatHeight (OOFAwareWidget *widget, int y, int h, + OOFAwareWidget *lastGen, int lastExtIndex); + int getRightFloatHeight (OOFAwareWidget *widget, int y, int h, + OOFAwareWidget *lastGen, int lastExtIndex); - int getClearPosition (Textblock *textblock); + int getClearPosition (OOFAwareWidget *widget); bool affectsLeftBorder (core::Widget *widget); bool affectsRightBorder (core::Widget *widget); |