diff options
author | Sebastian Geerken <devnull@localhost> | 2015-01-30 19:27:16 +0100 |
---|---|---|
committer | Sebastian Geerken <devnull@localhost> | 2015-01-30 19:27:16 +0100 |
commit | b1e34672ecbe28c18462cd1b02ba0b2cfc7f772b (patch) | |
tree | 8812e9c6b89b4099129d00e8a123ea1f501943de /dw/textblock_linebreaking.cc | |
parent | 76544475ea4a8578351a818068657a9bd6cd5a06 (diff) |
Relative positions, part 1.
Diffstat (limited to 'dw/textblock_linebreaking.cc')
-rw-r--r-- | dw/textblock_linebreaking.cc | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/dw/textblock_linebreaking.cc b/dw/textblock_linebreaking.cc index e9815d93..719389a6 100644 --- a/dw/textblock_linebreaking.cc +++ b/dw/textblock_linebreaking.cc @@ -1914,8 +1914,22 @@ void Textblock::rewrap () for (int i = firstWord; i < words->size (); i++) { Word *word = words->getRef (i); - if (word->content.type == core::Content::WIDGET_IN_FLOW) + switch (word->content.type) { + case core::Content::WIDGET_IN_FLOW: word->content.widget->sizeRequest (&word->size); + break; + + case core::Content::WIDGET_OOF_REF: + { + int oofmIndex = getOOFMIndex (word->content.widget); + oof::OutOfFlowMgr *oofm = searchOutOfFlowMgr (oofmIndex); + oofm->calcWidgetRefSize (word->content.widget, &(word->size)); + } + break; + + default: + break; + } wordWrap (i, false); |