-/* xscreensaver, Copyright (c) 1993-2003 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright (c) 1993-2006 Jamie Zawinski <jwz@jwz.org>
*
* Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
char *command;
};
-typedef enum { RANDOM_HACKS, ONE_HACK, BLANK_ONLY, DONT_BLANK } saver_mode;
+typedef enum {
+ RANDOM_HACKS, ONE_HACK, BLANK_ONLY, DONT_BLANK, RANDOM_HACKS_SAME
+} saver_mode;
+
+typedef enum {
+ TEXT_DATE, TEXT_LITERAL, TEXT_FILE, TEXT_PROGRAM, TEXT_URL
+} text_mode;
typedef struct saver_preferences saver_preferences;
Bool xsync_p; /* whether XSynchronize has been called */
Bool lock_p; /* whether to lock as well as save */
- Bool lock_vt_p; /* whether to lock VTs too, if possible */
Bool fade_p; /* whether to fade to black, if possible */
Bool unfade_p; /* whether to fade from black, if possible */
Bool install_cmap_p; /* whether we should use our own colormap
when using the screen's default visual. */
+# ifdef QUAD_MODE
Bool quad_p; /* whether to run four savers per monitor */
+# endif /* QUAD_MODE */
screenhack **screenhacks; /* the programs to run */
int screenhacks_count;
Time pointer_timeout; /* how often to check mouse position */
Time notice_events_timeout; /* how long after window creation to select */
Time watchdog_timeout; /* how often to re-raise and re-blank screen */
+ int pointer_hysteresis; /* mouse motions less than N/sec are ignored */
Bool dpms_enabled_p; /* Whether to power down the monitor */
Time dpms_standby; /* how long until monitor goes black */
Bool random_image_p; /* "xscreensaver-getimage" program, and set */
char *image_directory; /* by the "xscreensaver-demo" configurator. */
+ text_mode tmode; /* How we generate text to display. */
+ char *text_literal; /* used when tmode is TEXT_LITERAL. */
+ char *text_file; /* used when tmode is TEXT_FILE. */
+ char *text_program; /* used when tmode is TEXT_PROGRAM. */
+ char *text_url; /* used when tmode is TEXT_URL. */
+
Bool use_xidle_extension; /* which extension to use, if possible */
Bool use_mit_saver_extension;
Bool use_sgi_saver_extension;
Bool use_proc_interrupts;
+ Bool getviewport_full_of_lies_p; /* XFree86 bug #421 */
+
char *shell; /* where to find /bin/sh */
char *demo_command; /* How to enter demo mode. */
char *prefs_command; /* How to edit preferences. */
char *help_url; /* Where the help document resides. */
char *load_url_command; /* How one loads URLs. */
+ char *new_login_command; /* Command for the "New Login" button. */
};
-extern void load_init_file (saver_preferences *p);
-extern Bool init_file_changed_p (saver_preferences *p);
-extern int write_init_file (saver_preferences *p, const char *version_string,
+extern void load_init_file (Display *, saver_preferences *);
+extern Bool init_file_changed_p (saver_preferences *);
+extern int write_init_file (Display *,
+ saver_preferences *, const char *version_string,
Bool verbose_p);
const char *init_file_name (void);
extern screenhack *parse_screenhack (const char *line);
-extern void free_screenhack (screenhack *hack);
-extern char *format_hack (screenhack *hack, Bool wrap_p);
-char *make_hack_name (const char *shell_command);
+extern void free_screenhack (screenhack *);
+extern char *format_hack (Display *, screenhack *, Bool wrap_p);
+char *make_hack_name (Display *, const char *shell_command);
/* From dpms.c */
-extern void sync_server_dpms_settings (Display *dpy, Bool enabled_p,
+extern void sync_server_dpms_settings (Display *, Bool enabled_p,
int standby_secs, int suspend_secs,
int off_secs,
Bool verbose_p);