/*
 *	$Xorg: data.h,v 1.3 2000/08/17 19:55:08 cpqbld Exp $
 */

/* $XFree86: xc/programs/xterm/data.h,v 3.25 2001/01/17 23:46:36 dawes Exp $ */

/*
 * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
 *
 *                         All Rights Reserved
 *
 * Permission to use, copy, modify, and distribute this software and its
 * documentation for any purpose and without fee is hereby granted,
 * provided that the above copyright notice appear in all copies and that
 * both that copyright notice and this permission notice appear in
 * supporting documentation, and that the name of Digital Equipment
 * Corporation not be used in advertising or publicity pertaining to
 * distribution of the software without specific, written prior permission.
 *
 *
 * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
 * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
 * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
 * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
 * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
 * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
 * SOFTWARE.
 */

#ifndef included_data_h
#define included_data_h 1

#include <xterm.h>

extern Widget toplevel;

extern XtAppContext app_con;

#ifdef VMS
/* actually in vms.c */
extern int tt_width;
extern int tt_length;
extern int tt_changed;
extern int tt_pasting;
extern int tt_new_output;
#define VMS_TERM_BUFFER_SIZE	500
struct q_head {
	int flink;
	int blink;
};
extern struct q_head read_queue;
#endif

#if OPT_TEK4014
extern Char *Tpushb;
extern Char *Tpushback;
extern PtyData *Tbuffer;
extern TekLink *TekRefresh;
extern TekWidget tekWidget;
extern Widget tekshellwidget;
extern int TEKgcFontMask;
extern int T_lastx;
extern int T_lasty;
extern int Ttoggled;
extern jmp_buf Tekend;
#endif

#ifdef ALLOWLOGGING
extern char log_def_name[];
#endif
extern char *ptydev;
extern char *ttydev;
extern char *xterm_name;
extern int hold_screen;

#if OPT_ZICONBEEP
extern int zIconBeep;
extern Boolean zIconBeep_flagged;
#endif

#if OPT_SAME_NAME
extern Boolean sameName;
#endif

extern PtyData VTbuffer;
extern int am_slave;
extern int max_plus1;
extern jmp_buf VTend;

#ifdef DEBUG
extern int debug;
#endif	/* DEBUG */

#ifdef VMS
extern int Select_mask;
extern int X_mask;
extern int pty_mask;
#else /* VMS */
extern fd_set Select_mask;
extern fd_set X_mask;
extern fd_set pty_mask;
#endif /* VMS */

extern int waitingForTrackInfo;

extern EventMode eventMode;

extern XtermWidget term;

#ifdef NO_XKBSTDBELL
#undef XKB
#endif

#ifdef XKB
#include <X11/extensions/XKBbells.h>
#else
#define	XkbBI_Info			0
#define	XkbBI_MinorError		1
#define	XkbBI_MajorError		2
#define	XkbBI_TerminalBell		9
#define	XkbBI_MarginBell		10
#endif

#if OPT_WIDE_CHARS
extern char defaultUTF8[];
extern const unsigned short dec2ucs[32];
#endif

#endif /* included_data_h */
