aboutsummaryrefslogtreecommitdiffstats
path: root/ui/gtk/gui_stat_util.h
blob: 752e1287e18250ce9b78aa3888e6ea9588d8266a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/* gui_stat_util.h
 * gui functions used by stats
 * Copyright 2003 Lars Roland
 *
 * Wireshark - Network traffic analyzer
 * By Gerald Combs <gerald@wireshark.org>
 * Copyright 1998 Gerald Combs
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */

#ifndef __GTK_STAT_UTIL_H__
#define __GTK_STAT_UTIL_H__

#include <gtk/gtk.h>


/** @file
 *  Utilities for statistics.
 */

#define LEFT 0
#define RIGHT 1

/** Columns definition
 */
typedef struct {
    GType      type;   /* column type */
    gint       align;  /* alignement  */
    const char *title; /* column title */
} stat_column;

/** Init a window for stats, set title and display used filter in window.
 *
 * @param window the window
 * @param mainbox the vbox for the window
 * @param title the title for the window
 * @param filter the filter string
 */
extern void init_main_stat_window(GtkWidget *window, GtkWidget *mainbox, const char *title, const char *filter);

/** Create a stats table, using a scrollable gtkclist.
 *
 * @param scrolled_window the scrolled window
 * @param vbox the vbox for the window
 * @param columns number of columns
 * @param headers columns title and type, G_TYPE_POINTER is illegal, there's no default cell renderer for it
 */
extern GtkTreeView *create_stat_table(GtkWidget *scrolled_window, GtkWidget *vbox, int columns, const stat_column *headers);

#endif /* __GUI_STAT_UTIL_H__ */