Synced with the stable branch:
[privoxy.git] / src / w32log.h
1 #ifndef W32LOG_H_INCLUDED
2 #define W32LOG_H_INCLUDED
3 #define W32LOG_H_VERSION "$Id: w32log.h,v 2.0 2002/06/04 14:34:21 jongfoster Exp $"
4 /*********************************************************************
5  *
6  * File        :  $Source: /cvsroot/ijbswa//current/src/w32log.h,v $
7  *
8  * Purpose     :  Functions for creating and destroying the log window,
9  *                ouputting strings, processing messages and so on.
10  *
11  * Copyright   :  Written by and Copyright (C) 2001-2002 members of
12  *                the Privoxy team.  http://www.privoxy.org/
13  *
14  *                Written by and Copyright (C) 1999 Adam Lock
15  *                <locka@iol.ie>
16  *
17  *                This program is free software; you can redistribute it 
18  *                and/or modify it under the terms of the GNU General
19  *                Public License as published by the Free Software
20  *                Foundation; either version 2 of the License, or (at
21  *                your option) any later version.
22  *
23  *                This program is distributed in the hope that it will
24  *                be useful, but WITHOUT ANY WARRANTY; without even the
25  *                implied warranty of MERCHANTABILITY or FITNESS FOR A
26  *                PARTICULAR PURPOSE.  See the GNU General Public
27  *                License for more details.
28  *
29  *                The GNU General Public License should be included with
30  *                this file.  If not, you can view it at
31  *                http://www.gnu.org/copyleft/gpl.html
32  *                or write to the Free Software Foundation, Inc., 59
33  *                Temple Place - Suite 330, Boston, MA  02111-1307, USA.
34  *
35  * Revisions   :
36  *    $Log: w32log.h,v $
37  *    Revision 2.0  2002/06/04 14:34:21  jongfoster
38  *    Moving source files to src/
39  *
40  *    Revision 1.10  2002/03/26 22:57:10  jongfoster
41  *    Web server name should begin www.
42  *
43  *    Revision 1.9  2002/03/24 12:03:47  jongfoster
44  *    Name change
45  *
46  *    Revision 1.8  2001/07/30 22:08:36  jongfoster
47  *    Tidying up #defines:
48  *    - All feature #defines are now of the form FEATURE_xxx
49  *    - Permanently turned off WIN_GUI_EDIT
50  *    - Permanently turned on WEBDAV and SPLIT_PROXY_ARGS
51  *
52  *    Revision 1.7  2001/07/29 18:43:08  jongfoster
53  *    Changing #ifdef _FILENAME_H to FILENAME_H_INCLUDED, to conform to
54  *    ANSI C rules.
55  *
56  *    Revision 1.6  2001/07/13 14:04:59  oes
57  *    Removed all #ifdef PCRS
58  *
59  *    Revision 1.5  2001/06/07 23:08:12  jongfoster
60  *    Forward and ACL edit options removed.
61  *
62  *    Revision 1.4  2001/05/31 21:37:11  jongfoster
63  *    GUI changes to rename "permissions file" to "actions file".
64  *
65  *    Revision 1.3  2001/05/29 09:50:24  jongfoster
66  *    Unified blocklist/imagelist/permissionslist.
67  *    File format is still under discussion, but the internal changes
68  *    are (mostly) done.
69  *
70  *    Also modified interceptor behaviour:
71  *    - We now intercept all URLs beginning with one of the following
72  *      prefixes (and *only* these prefixes):
73  *        * http://i.j.b/
74  *        * http://ijbswa.sf.net/config/
75  *        * http://ijbswa.sourceforge.net/config/
76  *    - New interceptors "home page" - go to http://i.j.b/ to see it.
77  *    - Internal changes so that intercepted and fast redirect pages
78  *      are not replaced with an image.
79  *    - Interceptors now have the option to send a binary page direct
80  *      to the client. (i.e. ijb-send-banner uses this)
81  *    - Implemented show-url-info interceptor.  (Which is why I needed
82  *      the above interceptors changes - a typical URL is
83  *      "http://i.j.b/show-url-info?url=www.somesite.com/banner.gif".
84  *      The previous mechanism would not have intercepted that, and
85  *      if it had been intercepted then it then it would have replaced
86  *      it with an image.)
87  *
88  *    Revision 1.2  2001/05/26 00:28:36  jongfoster
89  *    Automatic reloading of config file.
90  *    Removed obsolete SIGHUP support (Unix) and Reload menu option (Win32).
91  *    Most of the global variables have been moved to a new
92  *    struct configuration_spec, accessed through csp->config->globalname
93  *    Most of the globals remaining are used by the Win32 GUI.
94  *
95  *    Revision 1.1.1.1  2001/05/15 13:59:07  oes
96  *    Initial import of version 2.9.3 source tree
97  *
98  *
99  *********************************************************************/
100 \f
101
102 #ifdef __cplusplus
103 extern "C" {
104 #endif
105
106 extern HWND g_hwndLogFrame;
107
108 /* Indicates whether task bar shows activity animation */
109 extern BOOL g_bShowActivityAnimation;
110
111 /* Indicates if the log window appears on the task bar */
112 extern BOOL g_bShowOnTaskBar;
113
114 /* Indicates whether closing the log window really just hides it */
115 extern BOOL g_bCloseHidesWindow;
116
117 /* Indicates if messages are logged at all */
118 extern BOOL g_bLogMessages;
119
120 /* Indicates whether log messages are highlighted */
121 extern BOOL g_bHighlightMessages;
122
123 /* Indicates if buffer is limited in size */
124 extern BOOL g_bLimitBufferSize;
125
126 /* Maximum number of lines allowed in buffer when limited */
127 extern int g_nMaxBufferLines;
128
129 /* Font to use */
130 extern char g_szFontFaceName[255];
131
132 /* Size of font to use */
133 extern int g_nFontSize;
134
135
136 /* FIXME: this is a kludge */
137
138 extern const char * g_default_actions_file;
139 extern const char * g_user_actions_file;
140 extern const char * g_re_filterfile;
141 #ifdef FEATURE_TRUST
142 extern const char * g_trustfile;
143 #endif /* def FEATURE_TRUST */
144
145 /* FIXME: end kludge */
146
147 extern int LogPutString(const char *pszText);
148 extern BOOL InitLogWindow(void);
149 extern void TermLogWindow(void);
150 extern void ShowLogWindow(BOOL bShow);
151 extern void LogShowActivity(void);
152
153 /* Revision control strings from this header and associated .c file */
154 extern const char w32log_rcs[];
155 extern const char w32log_h_rcs[];
156
157 #ifdef __cplusplus
158 } /* extern "C" */
159 #endif
160
161 #endif /* ndef W32LOG_H_INCLUDED */
162
163
164 /*
165   Local Variables:
166   tab-width: 3
167   end:
168 */