aboutsummaryrefslogtreecommitdiffstats
path: root/gtk/isprint.h
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2004-07-09 23:02:38 +0000
committerGuy Harris <guy@alum.mit.edu>2004-07-09 23:02:38 +0000
commitfe1b0f99c4015d93f71fe35a549da186d5311f2e (patch)
treeedefaa04b81689eb419853046f49db16989a560c /gtk/isprint.h
parent50ac5816130cde1d821259d2c4215a9b10e3d3a7 (diff)
In the GTK+ code, move the redefinition of "isprint()" to
"gtk/isprint.h", and include that in "follow_dlg.c" (which wasn't including "gtkglobals.h" and thus wasn't getting the redefinition) and "proto_draw.c" (which was including "gtkglobals.h" but now needs to include "isprint.h" as well). svn path=/trunk/; revision=11355
Diffstat (limited to 'gtk/isprint.h')
-rw-r--r--gtk/isprint.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/gtk/isprint.h b/gtk/isprint.h
new file mode 100644
index 0000000000..274fc43e3d
--- /dev/null
+++ b/gtk/isprint.h
@@ -0,0 +1,42 @@
+/* isprint.h
+ * Temporary redefinition of "isprint()" to cope with GTK+ 1.3 and
+ * later using UTF-8 strings
+ *
+ * $Id: isprint.h,v 1.1 2004/07/09 23:02:38 guy Exp $
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@ethereal.com>
+ * 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifndef __ISPRINT_H__
+#define __ISPRINT_H__
+
+#if GTK_MAJOR_VERSION >= 2 || GTK_MINOR_VERSION >= 3
+/**
+ * XXX - "isprint()" can return "true" for non-ASCII characters, but
+ * those don't work with GTK+ 1.3 or later, as they take UTF-8 strings
+ * as input. Until we fix up Ethereal to properly handle non-ASCII
+ * characters in all output (both GUI displays and text printouts)
+ * in those versions of GTK+, we work around the problem by escaping
+ * all characters that aren't printable ASCII.
+ */
+#undef isprint
+#define isprint(c) (c >= 0x20 && c < 0x7f)
+#endif
+
+#endif