summaryrefslogtreecommitdiff
path: root/hardinfo.h
blob: ec843dbc4352a5751480759c6d4feb3ead0277fc (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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#ifndef __HARDINFO_H__
#define __HARDINFO_H__

#define walk_until(x)   while((*buf != '\0') && (*buf != x)) buf++
#define walk_until_inclusive(x) walk_until(x); buf++

#define PREFIX		"/usr/share/hardinfo/"
#define IMG_PREFIX	PREFIX "pixmaps/"

#include <gtk/gtk.h>
#include <stdio.h>
#include <string.h>
#include <sys/stat.h>

#include "config.h"
#include "stock.h"

#ifdef ENABLE_NLS
#define	INTL_PREFIX	PREFIX "lang/"
#include "intl.h"
#else
#define _(x)	(x)
#endif

typedef struct _GenericDevice	GenericDevice;
typedef enum   _DeviceType	DeviceType;
typedef struct _MainWindow	MainWindow;

enum _DeviceType {
	NONE, PCI, ISAPnP, USB,
	IDE, SCSI, SERIAL, PARPORT,
	V4L, PROCESSOR, MODULE
};

struct _GenericDevice {
	gpointer device;
	DeviceType type;

	GtkCTreeNode *node;
	
	GenericDevice *next;
};

#include "details.h"

struct _MainWindow {
	GtkWidget *window;
	
	GtkWidget *ctree;
	
	GtkWidget *membar;
	GtkWidget *uptime;
	
	GtkWidget *recv_bytes;
	GtkWidget *recv_errors;
	GtkWidget *recv_packets;
	
	GtkWidget *trans_bytes;
	GtkWidget *trans_errors;
	GtkWidget *trans_packets;
	
	GtkWidget *details_button;
	DetailWindow *det_window;
};

extern GenericDevice *generic_devices;

#include "ide.h"
#include "scsi.h"
#include "isapnp.h"
#include "usb.h"
#include "pci.h"
#include "serial.h"
#include "parport.h"
#include "v4l.h"
#include "modules.h"
#include "x11.h"
#include "net.h"

#include "about.h"
#include "details.h"

GtkCTreeNode 	*tree_group_new(MainWindow *mainwindow, const gchar *name,
                                DeviceType type);
void 		tree_insert_item(MainWindow *mainwindow, GtkCTreeNode *group, gchar *name,
                                 gpointer data);
void	        hi_insert_generic(gpointer device, DeviceType type);
void		hi_show_device_info_real(MainWindow *mainwindow,
                                         GenericDevice *dev);

#endif