libyui-gtk  2.44.10
ygtktreeview.h
1 /********************************************************************
2  * YaST2-GTK - http://en.opensuse.org/YaST2-GTK *
3  ********************************************************************/
4 
5 /* YGtkTreeView hacks support for a right-click signal.
6 */
7 
8 #ifndef YGTK_TREE_VIEW_H
9 #define YGTK_TREE_VIEW_H
10 
11 #include <gtk/gtk.h>
12 G_BEGIN_DECLS
13 
14 #define YGTK_TYPE_TREE_VIEW (ygtk_tree_view_get_type ())
15 #define YGTK_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
16  YGTK_TYPE_TREE_VIEW, YGtkTreeView))
17 #define YGTK_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), \
18  YGTK_TYPE_TREE_VIEW, YGtkTreeViewClass))
19 #define YGTK_IS_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
20  YGTK_TYPE_TREE_VIEW))
21 #define YGTK_IS_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), \
22  YGTK_TYPE_TREE_VIEW))
23 #define YGTK_TREE_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), \
24  YGTK_TYPE_TREE_VIEW, YGtkTreeViewClass))
25 
26 typedef struct _YGtkTreeView
27 {
28  GtkTreeView parent;
29 
30  // members:
31  gchar *empty_text;
32 } YGtkTreeView;
33 
34 typedef struct _YGtkTreeViewClass
35 {
36  GtkTreeViewClass parent_class;
37 
38  // signals:
39  void (*right_click) (YGtkTreeView *view, gboolean outreach);
41 
42 GtkWidget* ygtk_tree_view_new (const gchar *empty_text); /* null to disable */
43 GType ygtk_tree_view_get_type (void) G_GNUC_CONST;
44 
45 void ygtk_tree_view_set_empty_text (YGtkTreeView *view, const gchar *empty_text);
46 
47 void ygtk_tree_view_popup_menu (YGtkTreeView *view, GtkWidget *menu);
48 
49 GtkWidget *ygtk_tree_view_create_show_columns_menu (YGtkTreeView *view);
50 GtkWidget *ygtk_tree_view_append_show_columns_item (YGtkTreeView *view, GtkWidget *menu);
51 
52 // use this method of adding columns to overload gtk Arabic tree-view layout by
53 // a more sane and simpler one.
54 // (if you do, use it for all your column adding needs.)
55 void ygtk_tree_view_append_column (YGtkTreeView *view, GtkTreeViewColumn *column);
56 
57 // use this if you have used our ygtk_tree_view_append_column()
58 GtkTreeViewColumn *ygtk_tree_view_get_column (YGtkTreeView *view, gint nb);
59 
60 G_END_DECLS
61 #endif /*YGTK_TREE_VIEW_H*/
62