diff options
Diffstat (limited to 'gtk/gtktreeprivate.h')
-rw-r--r-- | gtk/gtktreeprivate.h | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/gtk/gtktreeprivate.h b/gtk/gtktreeprivate.h index 1d6076a93f..0079ff3235 100644 --- a/gtk/gtktreeprivate.h +++ b/gtk/gtktreeprivate.h @@ -46,6 +46,7 @@ extern "C" { #define TREE_VIEW_VERTICAL_SEPARATOR 2 #define TREE_VIEW_HORIZONTAL_SEPARATOR 0 + #define TREE_VIEW_DRAG_WIDTH 6 typedef enum @@ -56,7 +57,8 @@ typedef enum GTK_TREE_VIEW_ARROW_PRELIT = 1 << 3, GTK_TREE_VIEW_HEADERS_VISIBLE = 1 << 4, GTK_TREE_VIEW_DRAW_KEYFOCUS = 1 << 5, - GTK_TREE_VIEW_MODEL_SETUP = 1 << 6 + GTK_TREE_VIEW_MODEL_SETUP = 1 << 6, + GTK_TREE_VIEW_IN_COLUMN_DRAG = 1 << 7, } GtkTreeViewFlags; #define GTK_TREE_VIEW_SET_FLAG(tree_view, flag) G_STMT_START{ (tree_view->priv->flags|=flag); }G_STMT_END @@ -66,6 +68,20 @@ typedef enum #define TREE_VIEW_COLUMN_WIDTH(column) (CLAMP (column->width, (column->min_width!=-1)?column->min_width:column->width, (column->max_width!=-1)?column->max_width:column->width)) #define TREE_VIEW_DRAW_EXPANDERS(tree_view) (!GTK_TREE_VIEW_FLAG_SET (tree_view, GTK_TREE_VIEW_IS_LIST)&>K_TREE_VIEW_FLAG_SET (tree_view, GTK_TREE_VIEW_SHOW_EXPANDERS)) + /* This lovely little value is used to determine how far away from the title bar + * you can move the mouse and still have a column drag work. + */ +#define TREE_VIEW_COLUMN_DRAG_DEAD_MULTIPLIER(tree_view) (10*TREE_VIEW_HEADER_HEIGHT(tree_view)) + +typedef struct _GtkTreeViewColumnReorder GtkTreeViewColumnReorder; +struct _GtkTreeViewColumnReorder +{ + gint left_align; + gint right_align; + GtkTreeViewColumn *left_column; + GtkTreeViewColumn *right_column; +}; + struct _GtkTreeViewPrivate { GtkTreeModel *model; @@ -118,8 +134,10 @@ struct _GtkTreeViewPrivate gint n_columns; GList *columns; gint header_height; + GtkTreeViewColumnDropFunc *column_drop_func; GList *column_drag_info; + GtkTreeViewColumnReorder *cur_reorder; /* Scroll timeout (e.g. during dnd) */ guint scroll_timeout; |