diff options
Diffstat (limited to 'kscreensaver/xsavers/xlock.h')
-rw-r--r-- | kscreensaver/xsavers/xlock.h | 229 |
1 files changed, 229 insertions, 0 deletions
diff --git a/kscreensaver/xsavers/xlock.h b/kscreensaver/xsavers/xlock.h new file mode 100644 index 00000000..e8c2a2bb --- /dev/null +++ b/kscreensaver/xsavers/xlock.h @@ -0,0 +1,229 @@ +#ifndef __XLOCK_H__ +#define __XLOCK_H__ + +/*- + * @(#)xlock.h 3.3 95/09/24 xlockmore + * + * xlock.h - external interfaces for new modes and SYSV OS defines. + * + * Copyright (c) 1991 by Patrick J. Naughton. + * + * See xlock.c for copying information. + * + * Revision History: + * + * Changes of David Bagley <bagleyd@source.asset.com> + * 12-May-95: Added defines for SunOS's Adjunct password file + * Dale A. Harris <rodmur@ecst.csuchico.edu> + * 18-Nov-94: Modified for QNX 4.2 w/ Metrolink X server from Brian Campbell + * <brianc@qnx.com>. + * 11-Jul-94: added Bool flag: inwindow, which tells xlock to run in a + * window from Greg Bowering <greg@cs.adelaide.edu.au> + * 11-Jul-94: patch for Solaris SYR4 from Chris P. Ross <cross@eng.umd.edu> + * 28-Jun-94: Reorganized shadow stuff + * 24-Jun-94: Reorganized + * 22-Jun-94: Modified for VMS + * <Anthony.D.Clarke@Support.Hatfield.Raytheon.bae.eurokom.ie> + * 17-Jun-94: patched shadow passwords and bcopy and bzero for SYSV from + * <reggers@julian.uwo.ca> + * 21-Mar-94: patched the patch for AIXV3 and HP from + * <R.K.Lloyd@csc.liv.ac.uk>. + * 01-Dec-93: added patch for AIXV3 from + * (Tom McConnell, tmcconne@sedona.intel.com) also added a patch + * for HP-UX 8.0. + * + */ + +#include <qapplication.h> // hack for qt-1.2 +#include <X11/Xlib.h> +#include <X11/Xutil.h> +#include <X11/Xos.h> +#include <X11/Xresource.h> + +// added for kscreensave +void initXLock( GC gc ); + + +#define MAXSCREENS 1 +#define NUMCOLORS 64 +#ifndef KERBEROS +#define PASSLENGTH 64 +#else +#define PASSLENGTH 120 +#endif +#define FALLBACK_FONTNAME "fixed" +#ifndef DEF_MFONT +#define DEF_MFONT "-*-times-*-*-*-*-18-*-*-*-*-*-*-*" +#endif +#ifndef DEF_PROGRAM /* Try the -o option ;) */ +#define DEF_PROGRAM "fortune -s" +#endif + +#define ICONW 64 +#define ICONH 64 + +#if defined VMS || defined __QNX__ +#ifdef VMS +/*#define VMS_PLAY*/ +#include <unixlib.h> +#endif +#endif + +#include <math.h> + +#ifndef M_E +#define M_E 2.7182818284590452354 +#endif +#ifndef M_PI +#define M_PI 3.14159265358979323846 +#endif +#ifndef M_PI_2 +#define M_PI_2 1.57079632679489661923 +#endif + +#if !defined (news1800) && !defined (sun386) +#include <stdlib.h> +#if !defined (apollo) && !defined (VMS) +#include <unistd.h> +#include <memory.h> +#endif +#endif +#include <stdio.h> +#include <string.h> + +typedef struct { + GC gc; /* graphics context for animation */ + int npixels; /* number of valid entries in pixels */ + Colormap cmap; /* current colormap */ + unsigned long pixels[NUMCOLORS]; /* pixel values in the colormap */ + unsigned long bgcol, fgcol; /* background and foreground pixel values */ +} perscreen; + +/* This stuff moved here from resource.c for the mode-specific options. */ +#define t_String 0 +#define t_Float 1 +#define t_Int 2 +#define t_Bool 3 + +typedef struct { + caddr_t *var; + char *name; + char *arg_class; + char *def; + int type; +} argtype; + +typedef struct { + char *opt; + char *desc; +} OptionStruct; + +typedef struct { + int numopts; + XrmOptionDescRec *opts; + argtype *vars; + OptionStruct *desc; +} ModeSpecOpt; +/* End moved from resource.c */ + +extern perscreen Scr[MAXSCREENS]; +extern Display *dsp; +extern int screen; + +extern char *ProgramName; +extern char *fontname; +extern char *background; +extern char *foreground; +extern char *text_name; +extern char *text_pass; +extern char *text_info; +extern char *text_valid; +extern char *text_invalid; +extern char *geometry; +extern float saturation; +extern int nicelevel; +extern int delay; +extern int batchcount; +extern int cycles; +extern int timeout; +extern int lockdelay; +#if defined(HAS_RPLAY) || defined(VMS_PLAY) +extern char *locksound; +extern char *infosound; +extern char *validsound; +/*extern char *invalidsound;*/ +#endif +#ifdef AUTO_LOGOUT +extern int forceLogout; +#endif +#ifdef LOGOUT_BUTTON +extern int enable_button; +extern char *logoutButtonLabel; +extern char *logoutButtonHelp; +extern char *logoutFailedString; +#endif +extern Bool usefirst; +extern Bool mono; +extern Bool nolock; +extern Bool allowroot; +extern Bool enablesaver; +extern Bool allowaccess; +extern Bool grabmouse; +extern Bool echokeys; +extern Bool verbose; +extern Bool inwindow; +extern Bool inroot; +extern Bool timeelapsed; +extern Bool install; +extern int onepause; + +/* For modes with text, marquee & nose */ +extern char *program; +extern char *messagesfile; +extern char *messagefile; +extern char *message; +extern char *mfont; + +extern void (*callback) (); +extern void (*init) (); + +extern void GetResources(); +extern void set_colormap(); +extern void fix_colormap(); +#ifdef __STDC__ +extern void error(char *, ...); +#else +extern void error(); +#endif +extern void alarm_ctl(); +extern long seconds(); + +/* For modes with text, marquee & nose */ +extern XFontStruct *get_font(); +extern char *get_words(); +extern void init_words(); +extern int is_ribbon(); + +#ifdef LESS_THAN_AIX3_2 +#undef NULL +#define NULL 0 +#endif /* LESS_THAN_AIX3_2 */ + +#ifdef VMS +#define OLD_EVENT_LOOP +#endif + +#if defined(__STDC__) && (defined(__hpux) && defined(_PA_RISC1_1)) +#define MATHF +#endif +#ifdef MATHF +#define SINF(n) sinf(n) +#define COSF(n) cosf(n) +#define FABSF(n) fabsf(n) +#else +#define SINF(n) ((float)sin((double)(n))) +#define COSF(n) ((float)cos((double)(n))) +#define FABSF(n) ((float)fabs((double)(n))) +#endif + +#endif /* __XLOCK_H__ */ |