summaryrefslogtreecommitdiff
path: root/render/box.h
diff options
context:
space:
mode:
authorJames Bursa <james@netsurf-browser.org>2002-09-18 19:36:28 +0000
committerJames Bursa <james@netsurf-browser.org>2002-09-18 19:36:28 +0000
commit263d627daab2a3ff92ae5b50e5ea0b90a03ef36c (patch)
treed9db9a4ab45472f07cc95e21fe88025177fb51d8 /render/box.h
parentdf864cf4e53bc7fab1274bea07f109400281b089 (diff)
downloadnetsurf-263d627daab2a3ff92ae5b50e5ea0b90a03ef36c.tar.gz
netsurf-263d627daab2a3ff92ae5b50e5ea0b90a03ef36c.tar.bz2
[project @ 2002-09-18 19:36:28 by bursa]
New table layout algorithm. svn path=/import/netsurf/; revision=37
Diffstat (limited to 'render/box.h')
-rw-r--r--render/box.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/render/box.h b/render/box.h
index 17bfcef4d..30a281a31 100644
--- a/render/box.h
+++ b/render/box.h
@@ -1,10 +1,11 @@
/**
- * $Id: box.h,v 1.8 2002/09/08 18:11:56 bursa Exp $
+ * $Id: box.h,v 1.9 2002/09/18 19:36:28 bursa Exp $
*/
#ifndef _NETSURF_RENDER_BOX_H_
#define _NETSURF_RENDER_BOX_H_
+#include <limits.h>
#include "libxml/HTMLparser.h"
#include "netsurf/render/css.h"
@@ -19,23 +20,33 @@ typedef enum {
BOX_FLOAT_LEFT, BOX_FLOAT_RIGHT
} box_type;
+struct column {
+ enum { COLUMN_WIDTH_UNKNOWN = 0, COLUMN_WIDTH_FIXED,
+ COLUMN_WIDTH_AUTO, COLUMN_WIDTH_PERCENT } type;
+ unsigned long min, max, width;
+};
+
struct box {
box_type type;
xmlNode * node;
struct css_style * style;
unsigned long x, y, width, height;
+ unsigned long min_width, max_width;
const char * text;
const char * href;
unsigned int length;
- unsigned int colspan;
+ unsigned int columns;
struct box * next;
struct box * children;
struct box * last;
struct box * parent;
struct box * float_children;
struct box * next_float;
+ struct column *col;
};
+#define UNKNOWN_MAX_WIDTH ULONG_MAX
+
/**
* interface
*/