1 /*
2  * Copyright (c) 2010 Mike Massonnet, <mmassonnet@xfce.org>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  */
9 
10 #ifndef PROCESS_TREE_VIEW_H
11 #define PROCESS_TREE_VIEW_H
12 
13 #ifdef HAVE_CONFIG_H
14 #include <config.h>
15 #endif
16 
17 #include <glib-object.h>
18 
19 enum
20 {
21 #ifdef HAVE_WNCK
22 	XTM_PTV_COLUMN_ICON,
23 #endif
24 	XTM_PTV_COLUMN_COMMAND,
25 	XTM_PTV_COLUMN_PID,
26 	XTM_PTV_COLUMN_PPID,
27 	XTM_PTV_COLUMN_STATE,
28 	XTM_PTV_COLUMN_VSZ,
29 	XTM_PTV_COLUMN_VSZ_STR,
30 	XTM_PTV_COLUMN_RSS,
31 	XTM_PTV_COLUMN_RSS_STR,
32 	XTM_PTV_COLUMN_UID,
33 	XTM_PTV_COLUMN_UID_STR,
34 	XTM_PTV_COLUMN_CPU,
35 	XTM_PTV_COLUMN_CPU_STR,
36 	XTM_PTV_COLUMN_PRIORITY,
37 	XTM_PTV_COLUMN_BACKGROUND,
38 	XTM_PTV_COLUMN_FOREGROUND,
39 	XTM_PTV_COLUMN_TIMESTAMP,
40 	XTM_PTV_N_COLUMNS,
41 };
42 
43 #define XTM_TYPE_PROCESS_TREE_VIEW		(xtm_process_tree_view_get_type ())
44 #define XTM_PROCESS_TREE_VIEW(obj)		(G_TYPE_CHECK_INSTANCE_CAST ((obj), XTM_TYPE_PROCESS_TREE_VIEW, XtmProcessTreeView))
45 #define XTM_PROCESS_TREE_VIEW_CLASS(klass)	(G_TYPE_CHECK_CLASS_CAST ((klass), XTM_TYPE_PROCESS_TREE_VIEW, XtmProcessTreeViewClass))
46 #define XTM_IS_PROCESS_TREE_VIEW(obj)		(G_TYPE_CHECK_INSTANCE_TYPE ((obj), XTM_TYPE_PROCESS_TREE_VIEW))
47 #define XTM_IS_PROCESS_TREE_VIEW_CLASS(klass)	(G_TYPE_CHECK_CLASS_TYPE ((klass), XTM_TYPE_PROCESS_TREE_VIEW))
48 #define XTM_PROCESS_TREE_VIEW_GET_CLASS(obj)	(G_TYPE_INSTANCE_GET_CLASS ((obj), XTM_TYPE_PROCESS_TREE_VIEW, XtmProcessTreeViewClass))
49 
50 typedef struct _XtmProcessTreeView XtmProcessTreeView;
51 
52 GType		xtm_process_tree_view_get_type			(void);
53 GtkWidget *	xtm_process_tree_view_new			(void);
54 void		xtm_process_tree_view_set_filter		(XtmProcessTreeView *treeview, const gchar *cmd_filter);
55 GtkTreeModel *	xtm_process_tree_view_get_model			(XtmProcessTreeView *treeview);
56 void		xtm_process_tree_view_highlight_pid		(XtmProcessTreeView *treeview, GPid pid);
57 
58 #endif /* !PROCESS_TREE_VIEW_H */
59