summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Blandford <jrb@src.gnome.org>2002-02-04 19:30:00 +0000
committerJonathan Blandford <jrb@src.gnome.org>2002-02-04 19:30:00 +0000
commit6c02ea8eb30a53d3e083d24205d6900d812ea5f0 (patch)
tree559340b592b49e2385b26b9a5ae0b9efae5e9541
parent402f5b9d93affa93f19ee5a47b0e94bc84815f24 (diff)
downloadgdk-pixbuf-6c02ea8eb30a53d3e083d24205d6900d812ea5f0.tar.gz
-rw-r--r--docs/tree-column-sizing.txt27
1 files changed, 27 insertions, 0 deletions
diff --git a/docs/tree-column-sizing.txt b/docs/tree-column-sizing.txt
index 879b84628..c0c38833d 100644
--- a/docs/tree-column-sizing.txt
+++ b/docs/tree-column-sizing.txt
@@ -74,3 +74,30 @@ min_width <= max_width
(column != last visible column) => width == CLAMP (requested_width, min_width, max_width)
+
+HOW THE VERTICAL OFFSET IS CALCULATED
+(This has nothing to do with columns)
+=====================================
+
+The current offset of the tree is determined by:
+
+tree_view->priv->dy
+
+All motion/button/expose events take this as the offset when trying to
+draw the tree. There are also two other related members:
+
+tree_view->priv->top_row
+tree_view->priv->top_row_dy
+
+In general _gtk_rbtree_node_find_offset (tree_view->priv->top_row) +
+tree_view->priv->top_row_dy is the same as tree_view->priv->dy.
+We have the alternate method so we can update dy when the tree changes.
+There are two functions:
+
+gtk_tree_view_dy_to_top_row
+ and
+gtk_tree_view_top_row_to_dy
+
+They are called when the tree's confirmation changes, in order to sync
+the value appropriately. Note that these two functions sometimes call
+each other to negotiate a correct value if needed.