aboutsummaryrefslogtreecommitdiff
path: root/dw/oofawarewidget.hh
diff options
context:
space:
mode:
authorSebastian Geerken <devnull@localhost>2014-09-12 21:56:11 +0200
committerSebastian Geerken <devnull@localhost>2014-09-12 21:56:11 +0200
commit5e61a16c4ef0c64fd8cdbee2379bcee798dab518 (patch)
treeb3616e8ae7359a1202b247302b366947f7c9c952 /dw/oofawarewidget.hh
parentae2d990af432ea56375936e5ec9872fe0503d61f (diff)
Table gets OOF aware, part 2. (Still crashing.)
Diffstat (limited to 'dw/oofawarewidget.hh')
-rw-r--r--dw/oofawarewidget.hh21
1 files changed, 17 insertions, 4 deletions
diff --git a/dw/oofawarewidget.hh b/dw/oofawarewidget.hh
index 9421bae0..32de4868 100644
--- a/dw/oofawarewidget.hh
+++ b/dw/oofawarewidget.hh
@@ -31,9 +31,19 @@ namespace oof {
* - dw::oof::OOFAwareWidget::getWidgetOOFAtPoint (from
* dw::core::Widget::getWidgetAtPoint)
*
- * See dw::Textblock on how this is done best. For both generators and
- * containers of floats (which is only implemented by dw::Textblock)
- * it gets a bit more complicated.
+ * See dw::Textblock on how this is done best.
+ *
+ * Furthermore, implementations of dw::core::Widget::getAvailWidthOfChild
+ * and dw::core::Widget::getAvailHeightOfChild have to distinguish
+ * between widgets in flow and out of flow; see implementations of
+ * dw::oof::OOFAwareWidget. (Open issue: What about
+ * dw::core::Widget::correctRequisitionOfChild and
+ * dw::core::Widget::correctExtremesOfChild? Currently, all widgets
+ * are used the default implementation.)
+ *
+ * For both generators
+ * and containers of floats (which is only implemented by
+ * dw::Textblock) it gets a bit more complicated.
*/
class OOFAwareWidget: public core::Widget
{
@@ -104,10 +114,13 @@ protected:
void drawOOF (core::View *view, core::Rectangle *area);
core::Widget *getWidgetOOFAtPoint (int x, int y, int level);
+ static bool isOOFContainer (Widget *widget, int oofmIndex);
+
void notifySetAsTopLevel();
void notifySetParent();
- static bool isOOFContainer (Widget *widget, int oofmIndex);
+ int getAvailWidthOfChild (Widget *child, bool forceValue);
+ int getAvailHeightOfChild (Widget *child, bool forceValue);
public:
static int CLASS_ID;