Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
gtktreeviewcolumn.h
Go to the documentation of this file.
1/* gtktreeviewcolumn.h
2 * Copyright (C) 2000 Red Hat, Inc., Jonathan Blandford <jrb@redhat.com>
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
13 *
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#pragma once
19
20#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
21#error "Only <gtk/gtk.h> can be included directly."
22#endif
23
28
29
31
32
33#define GTK_TYPE_TREE_VIEW_COLUMN (gtk_tree_view_column_get_type ())
34#define GTK_TREE_VIEW_COLUMN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TREE_VIEW_COLUMN, GtkTreeViewColumn))
35#define GTK_IS_TREE_VIEW_COLUMN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TREE_VIEW_COLUMN))
36
37typedef struct _GtkTreeViewColumn GtkTreeViewColumn;
38
39/**
40 * GtkTreeViewColumnSizing:
41 * @GTK_TREE_VIEW_COLUMN_GROW_ONLY: Columns only get bigger in reaction to changes in the model
42 * @GTK_TREE_VIEW_COLUMN_AUTOSIZE: Columns resize to be the optimal size every time the model changes.
43 * @GTK_TREE_VIEW_COLUMN_FIXED: Columns are a fixed numbers of pixels wide.
44 *
45 * The sizing method the column uses to determine its width. Please note
46 * that %GTK_TREE_VIEW_COLUMN_AUTOSIZE are inefficient for large views, and
47 * can make columns appear choppy.
48 */
55
56/**
57 * GtkTreeCellDataFunc:
58 * @tree_column: A `GtkTreeViewColumn`
59 * @cell: The `GtkCellRenderer` that is being rendered by @tree_column
60 * @tree_model: The `GtkTreeModel` being rendered
61 * @iter: A `GtkTreeIter` of the current row rendered
62 * @data: (closure): user data
63 *
64 * A function to set the properties of a cell instead of just using the
65 * straight mapping between the cell and the model.
66 *
67 * This function is useful for customizing the cell renderer. For example,
68 * a function might get an* integer from the @tree_model, and render it to
69 * the “text” attribute of “cell” by converting it to its written equivalent.
70 *
71 * See also: gtk_tree_view_column_set_cell_data_func()
72 */
73typedef void (* GtkTreeCellDataFunc) (GtkTreeViewColumn *tree_column,
74 GtkCellRenderer *cell,
75 GtkTreeModel *tree_model,
76 GtkTreeIter *iter,
77 gpointer data);
78
79
88 GtkCellRenderer *cell,
92 GtkCellRenderer *cell,
93 gboolean expand);
96 GtkCellRenderer *cell,
97 gboolean expand);
102 GtkCellRenderer *cell_renderer,
103 const char *attribute,
104 int column);
107 GtkCellRenderer *cell_renderer,
111 GtkCellRenderer *cell_renderer,
113 gpointer func_data,
114 GDestroyNotify destroy);
117 GtkCellRenderer *cell_renderer);
120 int spacing);
125 gboolean visible);
130 gboolean resizable);
146 int fixed_width);
149 int min_width);
154 int max_width);
159
160
161
162/* Options for manipulating the column headers
163 */
166 const char *title);
171 gboolean expand);
176 gboolean clickable);
181 GtkWidget *widget);
186 float xalign);
191 gboolean reorderable);
194
195
196
197/* You probably only want to use gtk_tree_view_column_set_sort_column_id. The
198 * other sorting functions exist primarily to let others do their own custom sorting.
199 */
202 int sort_column_id);
207 gboolean setting);
212 GtkSortType order);
215
216
217/* These functions are meant primarily for interaction between the GtkTreeView and the column.
218 */
221 GtkTreeModel *tree_model,
222 GtkTreeIter *iter,
223 gboolean is_expander,
224 gboolean is_expanded);
227 int *x_offset,
228 int *y_offset,
229 int *width,
230 int *height);
235 GtkCellRenderer *cell);
238 GtkCellRenderer *cell_renderer,
239 int *x_offset,
240 int *width);
247
249
251
252
#define GDK_DEPRECATED_IN_4_10_FOR(f)
#define GDK_AVAILABLE_IN_ALL
#define G_END_DECLS
Definition gmacros.h:910
#define G_GNUC_NULL_TERMINATED
Definition gmacros.h:326
#define G_BEGIN_DECLS
Definition gmacros.h:909
#define G_GNUC_CONST
Definition gmacros.h:637
#define G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func)
Definition gmacros.h:1400
GOBJECT_AVAILABLE_IN_ALL void g_object_unref(gpointer object)
struct _GtkColumnViewColumn GtkColumnViewColumn
struct _GtkColumnView GtkColumnView
GtkSortType
Definition gtkenums.h:593
struct _GtkTreeModel GtkTreeModel
gboolean gtk_tree_view_column_cell_get_position(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell_renderer, int *x_offset, int *width)
int gtk_tree_view_column_get_sort_column_id(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_pack_end(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, gboolean expand)
void gtk_tree_view_column_set_expand(GtkTreeViewColumn *tree_column, gboolean expand)
int gtk_tree_view_column_get_fixed_width(GtkTreeViewColumn *tree_column)
int gtk_tree_view_column_get_max_width(GtkTreeViewColumn *tree_column)
float gtk_tree_view_column_get_alignment(GtkTreeViewColumn *tree_column)
void(* GtkTreeCellDataFunc)(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data)
void gtk_tree_view_column_set_visible(GtkTreeViewColumn *tree_column, gboolean visible)
void gtk_tree_view_column_queue_resize(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_cell_set_cell_data(GtkTreeViewColumn *tree_column, GtkTreeModel *tree_model, GtkTreeIter *iter, gboolean is_expander, gboolean is_expanded)
gboolean gtk_tree_view_column_get_clickable(GtkTreeViewColumn *tree_column)
GtkTreeViewColumn * gtk_tree_view_column_new(void)
int gtk_tree_view_column_get_x_offset(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_pack_start(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, gboolean expand)
gboolean gtk_tree_view_column_get_sort_indicator(GtkTreeViewColumn *tree_column)
int gtk_tree_view_column_get_spacing(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_set_widget(GtkTreeViewColumn *tree_column, GtkWidget *widget)
void gtk_tree_view_column_set_clickable(GtkTreeViewColumn *tree_column, gboolean clickable)
void gtk_tree_view_column_set_max_width(GtkTreeViewColumn *tree_column, int max_width)
GtkWidget * gtk_tree_view_column_get_widget(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_set_fixed_width(GtkTreeViewColumn *tree_column, int fixed_width)
void gtk_tree_view_column_set_sort_column_id(GtkTreeViewColumn *tree_column, int sort_column_id)
GtkTreeViewColumn * gtk_tree_view_column_new_with_attributes(const char *title, GtkCellRenderer *cell,...) G_GNUC_NULL_TERMINATED
gboolean gtk_tree_view_column_get_expand(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_clear(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_clicked(GtkTreeViewColumn *tree_column)
GtkSortType gtk_tree_view_column_get_sort_order(GtkTreeViewColumn *tree_column)
GtkTreeViewColumnSizing gtk_tree_view_column_get_sizing(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_set_alignment(GtkTreeViewColumn *tree_column, float xalign)
void gtk_tree_view_column_set_attributes(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell_renderer,...) G_GNUC_NULL_TERMINATED
gboolean gtk_tree_view_column_get_resizable(GtkTreeViewColumn *tree_column)
GDK_AVAILABLE_IN_ALL GType gtk_tree_view_column_get_type(void) G_GNUC_CONST
void gtk_tree_view_column_cell_get_size(GtkTreeViewColumn *tree_column, int *x_offset, int *y_offset, int *width, int *height)
void gtk_tree_view_column_set_resizable(GtkTreeViewColumn *tree_column, gboolean resizable)
void gtk_tree_view_column_set_sizing(GtkTreeViewColumn *tree_column, GtkTreeViewColumnSizing type)
void gtk_tree_view_column_add_attribute(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell_renderer, const char *attribute, int column)
gboolean gtk_tree_view_column_get_visible(GtkTreeViewColumn *tree_column)
const char * gtk_tree_view_column_get_title(GtkTreeViewColumn *tree_column)
GtkWidget * gtk_tree_view_column_get_tree_view(GtkTreeViewColumn *tree_column)
struct _GtkTreeViewColumn GtkTreeViewColumn
void gtk_tree_view_column_set_reorderable(GtkTreeViewColumn *tree_column, gboolean reorderable)
int gtk_tree_view_column_get_width(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_set_sort_order(GtkTreeViewColumn *tree_column, GtkSortType order)
GtkWidget * gtk_tree_view_column_get_button(GtkTreeViewColumn *tree_column)
gboolean gtk_tree_view_column_get_reorderable(GtkTreeViewColumn *tree_column)
GtkTreeViewColumnSizing
@ GTK_TREE_VIEW_COLUMN_FIXED
@ GTK_TREE_VIEW_COLUMN_AUTOSIZE
@ GTK_TREE_VIEW_COLUMN_GROW_ONLY
gboolean gtk_tree_view_column_cell_is_visible(GtkTreeViewColumn *tree_column)
void gtk_tree_view_column_set_sort_indicator(GtkTreeViewColumn *tree_column, gboolean setting)
GtkTreeViewColumn * gtk_tree_view_column_new_with_area(GtkCellArea *area)
void gtk_tree_view_column_set_min_width(GtkTreeViewColumn *tree_column, int min_width)
void gtk_tree_view_column_set_spacing(GtkTreeViewColumn *tree_column, int spacing)
void gtk_tree_view_column_set_cell_data_func(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell_renderer, GtkTreeCellDataFunc func, gpointer func_data, GDestroyNotify destroy)
void gtk_tree_view_column_set_title(GtkTreeViewColumn *tree_column, const char *title)
void gtk_tree_view_column_focus_cell(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell)
void gtk_tree_view_column_clear_attributes(GtkTreeViewColumn *tree_column, GtkCellRenderer *cell_renderer)
int gtk_tree_view_column_get_min_width(GtkTreeViewColumn *tree_column)
gsize GType
Definition gtype.h:427
gint gboolean
Definition gtypes.h:56
void * gpointer
Definition gtypes.h:109
void(* GDestroyNotify)(gpointer data)
Definition gtypes.h:140