]> git.sur5r.net Git - glabels/blob - src/debug.h
Imported Upstream version 2.2.8
[glabels] / src / debug.h
1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */
2
3 /*
4  *  (GLABELS) Label and Business Card Creation program for GNOME
5  *
6  *  debug.h:  GLabels debug module
7  *
8  *  Copyright (C) 2001-2002  Jim Evins <evins@snaught.com>.
9  *
10  *  This program is free software; you can redistribute it and/or modify
11  *  it under the terms of the GNU General Public License as published by
12  *  the Free Software Foundation; either version 2 of the License, or
13  *  (at your option) any later version.
14  *
15  *  This program is distributed in the hope that it will be useful,
16  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  *  GNU General Public License for more details.
19  *
20  *  You should have received a copy of the GNU General Public License
21  *  along with this program; if not, write to the Free Software
22  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
23  */
24
25 /*
26  * This file is based on gedit-debug.h from gedit2:
27  *
28  * Copyright (C) 1998, 1999 Alex Roberts, Evan Lawrence
29  * Copyright (C) 2000, 2001 Chema Celorio, Paolo Maggi 
30  *
31  */
32 #ifndef __DEBUG_H__
33 #define __DEBUG_H__
34
35 #include <glib/gtypes.h>
36
37 G_BEGIN_DECLS
38
39 /*
40  * Set an environmental var of the same name to turn on
41  * debugging output. Setting GLABELS_DEBUG will turn on all
42  * sections.
43  */
44
45 typedef enum {
46         GLABELS_DEBUG_NONE         = 0,
47         GLABELS_DEBUG_VIEW         = 1 << 0,
48         GLABELS_DEBUG_ITEM         = 1 << 1,
49         GLABELS_DEBUG_PRINT        = 1 << 2,
50         GLABELS_DEBUG_PREFS        = 1 << 3,
51         GLABELS_DEBUG_FILE         = 1 << 4,
52         GLABELS_DEBUG_LABEL        = 1 << 5,
53         GLABELS_DEBUG_TEMPLATE     = 1 << 6,
54         GLABELS_DEBUG_PAPER        = 1 << 7,
55         GLABELS_DEBUG_XML          = 1 << 8,
56         GLABELS_DEBUG_MERGE        = 1 << 9,
57         GLABELS_DEBUG_UNDO         = 1 << 10,
58         GLABELS_DEBUG_RECENT       = 1 << 11,
59         GLABELS_DEBUG_COMMANDS     = 1 << 12,
60         GLABELS_DEBUG_WINDOW       = 1 << 13,
61         GLABELS_DEBUG_UI           = 1 << 14,
62         GLABELS_DEBUG_PROPERTY_BAR = 1 << 15,
63         GLABELS_DEBUG_MEDIA_SELECT = 1 << 16,
64         GLABELS_DEBUG_MINI_PREVIEW = 1 << 17,
65         GLABELS_DEBUG_PIXBUF_CACHE = 1 << 18,
66         GLABELS_DEBUG_EDITOR       = 1 << 19,
67         GLABELS_DEBUG_WDGT         = 1 << 20,
68         GLABELS_DEBUG_PATH         = 1 << 21,
69 } glDebugSection;
70
71
72 #ifndef __GNUC__
73 #define __FUNCTION__   ""
74 #endif
75
76 #define DEBUG_VIEW      GLABELS_DEBUG_VIEW,    __FILE__, __LINE__, __FUNCTION__
77 #define DEBUG_ITEM      GLABELS_DEBUG_ITEM,    __FILE__, __LINE__, __FUNCTION__
78 #define DEBUG_PRINT     GLABELS_DEBUG_PRINT,   __FILE__, __LINE__, __FUNCTION__
79 #define DEBUG_PREFS     GLABELS_DEBUG_PREFS,   __FILE__, __LINE__, __FUNCTION__
80 #define DEBUG_FILE      GLABELS_DEBUG_FILE,    __FILE__, __LINE__, __FUNCTION__
81 #define DEBUG_LABEL     GLABELS_DEBUG_LABEL,   __FILE__, __LINE__, __FUNCTION__
82 #define DEBUG_TEMPLATE  GLABELS_DEBUG_TEMPLATE,__FILE__, __LINE__, __FUNCTION__
83 #define DEBUG_PAPER     GLABELS_DEBUG_PAPER,   __FILE__, __LINE__, __FUNCTION__
84 #define DEBUG_XML       GLABELS_DEBUG_XML,     __FILE__, __LINE__, __FUNCTION__
85 #define DEBUG_MERGE     GLABELS_DEBUG_MERGE,   __FILE__, __LINE__, __FUNCTION__
86 #define DEBUG_UNDO      GLABELS_DEBUG_UNDO,    __FILE__, __LINE__, __FUNCTION__
87 #define DEBUG_RECENT    GLABELS_DEBUG_RECENT,  __FILE__, __LINE__, __FUNCTION__
88 #define DEBUG_COMMANDS  GLABELS_DEBUG_COMMANDS,__FILE__, __LINE__, __FUNCTION__
89 #define DEBUG_WINDOW    GLABELS_DEBUG_WINDOW,  __FILE__, __LINE__, __FUNCTION__
90 #define DEBUG_UI        GLABELS_DEBUG_UI,      __FILE__, __LINE__, __FUNCTION__
91 #define DEBUG_PROPERTY_BAR      GLABELS_DEBUG_PROPERTY_BAR,     __FILE__, __LINE__, __FUNCTION__
92 #define DEBUG_MEDIA_SELECT      GLABELS_DEBUG_MEDIA_SELECT,     __FILE__, __LINE__, __FUNCTION__
93 #define DEBUG_MINI_PREVIEW      GLABELS_DEBUG_MINI_PREVIEW,     __FILE__, __LINE__, __FUNCTION__
94 #define DEBUG_PIXBUF_CACHE      GLABELS_DEBUG_PIXBUF_CACHE,     __FILE__, __LINE__, __FUNCTION__
95 #define DEBUG_EDITOR    GLABELS_DEBUG_EDITOR, __FILE__, __LINE__, __FUNCTION__
96 #define DEBUG_WDGT      GLABELS_DEBUG_WDGT,   __FILE__, __LINE__, __FUNCTION__
97 #define DEBUG_PATH      GLABELS_DEBUG_PATH,   __FILE__, __LINE__, __FUNCTION__
98
99 void gl_debug_init (void);
100
101 void gl_debug      (glDebugSection  section,
102                     const gchar    *file,
103                     gint            line,
104                     const gchar    *function,
105                     const gchar    *format,
106                     ...);
107
108 G_END_DECLS
109
110 #endif /* __DEBUG_H__ */