summaryrefslogtreecommitdiff
path: root/render/box.h
diff options
context:
space:
mode:
authorJames Bursa <james@netsurf-browser.org>2006-11-05 12:58:24 +0000
committerJames Bursa <james@netsurf-browser.org>2006-11-05 12:58:24 +0000
commitf4f17f905b1f7d1c12baebca6f4c18362d71d80c (patch)
tree11c00c9d6ac28b3320d3bf518b7c20e4278b782c /render/box.h
parent8043344eb849cfc124a924fc5c3476a54db87c07 (diff)
downloadnetsurf-f4f17f905b1f7d1c12baebca6f4c18362d71d80c.tar.gz
netsurf-f4f17f905b1f7d1c12baebca6f4c18362d71d80c.tar.bz2
More work on lists. Simplify the implementation to a BLOCK for display: list-item, with a marker box on box->list_marker.
svn path=/trunk/netsurf/; revision=3031
Diffstat (limited to 'render/box.h')
-rw-r--r--render/box.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/render/box.h b/render/box.h
index 369956f76..adefcdc1e 100644
--- a/render/box.h
+++ b/render/box.h
@@ -60,18 +60,15 @@
* A box tree is "normalized" if the following is satisfied:
* \code
* parent permitted child nodes
- * BLOCK, INLINE_BLOCK BLOCK, INLINE_CONTAINER, TABLE, LIST
+ * BLOCK, INLINE_BLOCK BLOCK, INLINE_CONTAINER, TABLE
* INLINE_CONTAINER INLINE, INLINE_BLOCK, FLOAT_LEFT, FLOAT_RIGHT, BR, TEXT,
* INLINE_END
* INLINE none
* TABLE at least 1 TABLE_ROW_GROUP
* TABLE_ROW_GROUP at least 1 TABLE_ROW
* TABLE_ROW at least 1 TABLE_CELL
- * TABLE_CELL BLOCK, INLINE_CONTAINER, TABLE, LIST (same as BLOCK)
+ * TABLE_CELL BLOCK, INLINE_CONTAINER, TABLE (same as BLOCK)
* FLOAT_(LEFT|RIGHT) exactly 1 BLOCK or TABLE
- * LIST at least 1 LIST_ITEM
- * LIST_ITEM exactly 1 LIST_MARKER and exactly 1 LIST_PRINCIPAL
- * LIST_PRINCIPAL BLOCK, INLINE_CONTAINER, TABLE, LIST (same as BLOCK)
* \endcode
*/
@@ -97,8 +94,7 @@ typedef enum {
BOX_TABLE_ROW_GROUP,
BOX_FLOAT_LEFT, BOX_FLOAT_RIGHT,
BOX_INLINE_BLOCK, BOX_BR, BOX_TEXT,
- BOX_INLINE_END,
- BOX_LIST, BOX_LIST_ITEM, BOX_LIST_MARKER, BOX_LIST_PRINCIPAL
+ BOX_INLINE_END
} box_type;
struct rect {
@@ -198,6 +194,9 @@ struct box {
/** Next sibling float box. */
struct box *next_float;
+ /** List marker box if this is a list-item, or 0. */
+ struct box *list_marker;
+
struct column *col; /**< Array of table column data for TABLE only. */
/** Form control data, or 0 if not a form control. */