summaryrefslogtreecommitdiff
path: root/gtk/gtkctree.h
diff options
context:
space:
mode:
authorLars Hamann <lars@gtk.org>1998-10-16 15:00:05 +0000
committerLars Hamann <lars@src.gnome.org>1998-10-16 15:00:05 +0000
commiteff33964d753abf04786ce1f03a8cffff5a76cd2 (patch)
treed029375876fc861c20d82276306d301d706936cb /gtk/gtkctree.h
parent0849664209839adf6fe85608e1303ab44de26d63 (diff)
downloadgtk+-eff33964d753abf04786ce1f03a8cffff5a76cd2.tar.gz
change a few cell styles of inserted row (change_style): change style of
Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org> * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell styles of inserted row (change_style): change style of focus_row * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style) (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions to set/get row/cell styles. (gtk_clist_realize): attach row and cell style, allocate row colors. (gtk_clist_unrealize): detach row and cell styles. (get_cell_style): new function. get correct cell style. (draw_cell_pixmap): new function. (draw_row): draw cells with row or cell styles. (row_new): set cell and row styles to NULL. (row_delete): detach & unref cell and row styles. * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): new functions to attach/detach styles and allocate colors. (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row styles of invisible nodes. (draw_cell_pixmap): new function. (get_cell_style): new function. get correct cell style. (gtk_ctree_draw_expander): new function. draw tree expander. (gtk_ctree_draw_lines): new function.draw tree lines. (draw_row): draw cells with row or cell styles. (row_new): set cell and row styles to NULL. (row_delete): detach & unref cell and row styles. (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): Analogons of GtkCList functions (gtk_ctree_set_spacing): new function. set spacing between tree expander and cell contents (gtk_ctree_set_expander_style): new function. set expander style of ctree. (ctree_is_hot_spot): few changes due to draw_row modifications.
Diffstat (limited to 'gtk/gtkctree.h')
-rw-r--r--gtk/gtkctree.h66
1 files changed, 46 insertions, 20 deletions
diff --git a/gtk/gtkctree.h b/gtk/gtkctree.h
index f3cf56d64e..784b3400a1 100644
--- a/gtk/gtkctree.h
+++ b/gtk/gtkctree.h
@@ -51,14 +51,22 @@ typedef enum
typedef enum
{
+ GTK_CTREE_LINES_NONE,
GTK_CTREE_LINES_SOLID,
GTK_CTREE_LINES_DOTTED,
- GTK_CTREE_LINES_TABBED,
- GTK_CTREE_LINES_NONE
+ GTK_CTREE_LINES_TABBED
} GtkCTreeLineStyle;
typedef enum
{
+ GTK_CTREE_EXPANDER_NONE,
+ GTK_CTREE_EXPANDER_SQUARE,
+ GTK_CTREE_EXPANDER_TRIANGLE,
+ GTK_CTREE_EXPANDER_CIRCULAR
+} GtkCTreeExpanderStyle;
+
+typedef enum
+{
GTK_CTREE_EXPANSION_EXPAND,
GTK_CTREE_EXPANSION_EXPAND_RECURSIVE,
GTK_CTREE_EXPANSION_COLLAPSE,
@@ -97,18 +105,20 @@ struct _GtkCTree
gint icon_height;
gint tree_indent;
+ gint tree_spacing;
gint tree_column;
gint drag_row;
GtkCTreeNode *drag_source;
GtkCTreeNode *drag_target;
gint insert_pos;
- guint reorderable : 1;
- guint use_icons : 1;
- guint in_drag : 1;
- guint drag_rect : 1;
- guint line_style : 2;
- guint show_stub : 1;
+ guint reorderable : 1;
+ guint use_icons : 1;
+ guint in_drag : 1;
+ guint drag_rect : 1;
+ guint line_style : 2;
+ guint expander_style : 2;
+ guint show_stub : 1;
GtkCTreeCompareDragFunc drag_compare;
};
@@ -361,6 +371,18 @@ gint gtk_ctree_get_node_info (GtkCTree *ctree,
GdkBitmap **mask_opened,
gboolean *is_leaf,
gboolean *expanded);
+void gtk_ctree_node_set_row_style (GtkCTree *ctree,
+ GtkCTreeNode *node,
+ GtkStyle *style);
+GtkStyle * gtk_ctree_node_get_row_style (GtkCTree *ctree,
+ GtkCTreeNode *node);
+void gtk_ctree_node_set_cell_style (GtkCTree *ctree,
+ GtkCTreeNode *node,
+ gint column,
+ GtkStyle *style);
+GtkStyle * gtk_ctree_node_get_cell_style (GtkCTree *ctree,
+ GtkCTreeNode *node,
+ gint column);
void gtk_ctree_node_set_foreground (GtkCTree *ctree,
GtkCTreeNode *node,
GdkColor *color);
@@ -388,18 +410,22 @@ GtkVisibility gtk_ctree_node_is_visible (GtkCTree *ctree,
* GtkCTree specific functions *
***********************************************************/
-void gtk_ctree_set_indent (GtkCTree *ctree,
- gint indent);
-void gtk_ctree_show_stub (GtkCTree *ctree,
- gboolean show_stub);
-void gtk_ctree_set_reorderable (GtkCTree *ctree,
- gboolean reorderable);
-void gtk_ctree_set_use_drag_icons (GtkCTree *ctree,
- gboolean use_icons);
-void gtk_ctree_set_line_style (GtkCTree *ctree,
- GtkCTreeLineStyle line_style);
-void gtk_ctree_set_drag_compare_func (GtkCTree *ctree,
- GtkCTreeCompareDragFunc cmp_func);
+void gtk_ctree_set_indent (GtkCTree *ctree,
+ gint indent);
+void gtk_ctree_set_spacing (GtkCTree *ctree,
+ gint spacing);
+void gtk_ctree_show_stub (GtkCTree *ctree,
+ gboolean show_stub);
+void gtk_ctree_set_reorderable (GtkCTree *ctree,
+ gboolean reorderable);
+void gtk_ctree_set_use_drag_icons (GtkCTree *ctree,
+ gboolean use_icons);
+void gtk_ctree_set_line_style (GtkCTree *ctree,
+ GtkCTreeLineStyle line_style);
+void gtk_ctree_set_expander_style (GtkCTree *ctree,
+ GtkCTreeExpanderStyle expander_style);
+void gtk_ctree_set_drag_compare_func (GtkCTree *ctree,
+ GtkCTreeCompareDragFunc cmp_func);
/***********************************************************
* Tree sorting functions *