aboutsummaryrefslogtreecommitdiff
path: root/dw/widget.cc
diff options
context:
space:
mode:
authorSebastian Geerken <devnull@localhost>2014-07-07 00:47:58 +0200
committerSebastian Geerken <devnull@localhost>2014-07-07 00:47:58 +0200
commit0fe59581e9df37a10e908a204dd7fc27026df721 (patch)
treea3127252e63f1e6a926577b636a3da0d0a0e04fe /dw/widget.cc
parent879714375c1113745631e1c42be643358ef34f3d (diff)
Implemented Table::correctRequisitionOfChild.
Diffstat (limited to 'dw/widget.cc')
-rw-r--r--dw/widget.cc29
1 files changed, 28 insertions, 1 deletions
diff --git a/dw/widget.cc b/dw/widget.cc
index ba2d8c8f..83c401a6 100644
--- a/dw/widget.cc
+++ b/dw/widget.cc
@@ -1292,7 +1292,21 @@ void Widget::correctRequisitionOfChild (Widget *child, Requisition *requisition,
// TODO Correct by extremes?
DBG_OBJ_ENTER ("resize", 0, "correctRequisitionOfChild",
- "%p, %d * (%d + %d), ...)",
+ "%p, %d * (%d + %d), ...", child, requisition->width,
+ requisition->ascent, requisition->descent);
+
+ correctReqWidthOfChild (child, requisition);
+ correctReqHeightOfChild (child, requisition, splitHeightFun);
+
+ DBG_OBJ_MSGF ("resize", 1, "=> %d * (%d + %d)",
+ requisition->width, requisition->ascent,
+ requisition->descent);
+ DBG_OBJ_LEAVE ();
+}
+
+void Widget::correctReqWidthOfChild (Widget *child, Requisition *requisition)
+{
+ DBG_OBJ_ENTER ("resize", 0, "correctReqWidthOfChild", "%p, %d * (%d + %d)",
child, requisition->width, requisition->ascent,
requisition->descent);
@@ -1308,6 +1322,19 @@ void Widget::correctRequisitionOfChild (Widget *child, Requisition *requisition,
}
}
+ DBG_OBJ_MSGF ("resize", 1, "=> %d * (%d + %d)",
+ requisition->width, requisition->ascent,
+ requisition->descent);
+ DBG_OBJ_LEAVE ();
+}
+
+void Widget::correctReqHeightOfChild (Widget *child, Requisition *requisition,
+ void (*splitHeightFun) (int, int*, int*))
+{
+ DBG_OBJ_ENTER ("resize", 0, "correctReqHeightOfChild",
+ "%p, %d * (%d + %d), ...", child, requisition->width,
+ requisition->ascent, requisition->descent);
+
// TODO Perhaps split first, then add box ascent and descent.
if (style::isAbsLength (child->getStyle()->height))
splitHeightFun (style::absLengthVal (child->getStyle()->height)