
README

W. Michael Petullo
     _________________________________________________________

   Table of Contents

   COPYRIGHT
   OVERVIEW
   BUILDING
   NASTY DETAILS

COPYRIGHT

   Copyright  1999 W. Michael Petullo

   <new@flyn.org>

   All rights reserved.

   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

OVERVIEW

   Libss    is   a   cross-platform   library   for   controlling
   screensavers.   It   allows   one  to  temporarily  disable  a
   screensaver.   This   is   useful   for   fullscreen,   visual
   applications that take little input.

BUILDING

   Procedure 1. To build, cross your fingers and try...
    1. ./configure
    2. make
    3. make install

   Read  the ``INSTALL'' file for generic detailed information on
   installing this program.

NASTY DETAILS

   The screensaver_init() function initializes the library.

   The   screensaver_enable()  function  turns  on  the  system's
   screensaver.

   The  screensaver_disable()  function  turns  off  the system's
   screensaver.

   The screensaver_restore() function restores the screensaver to
   the  state  it  was  in  when  the  library was initialized by
   screensaver_init().

   Currently, libss supports only Linux, the X Window System, and
   XSreenSaver. However, the library is designed to support other
   platforms. Please feel free to contribute.

   Originally  libss's  code  was  to  be  integrated  with  SDL.
   However,  due to a feature freeze, this functionality will not
   make  it  into  SDL for quite some time. In the meantime, I am
   packaging  libss as a separate library. Libss also serves as a
   testbed  for  XScreenSaver-controlling  APIs.  I would like to
   offer a better interface to XScreenSaver than jwz's:

if (playing && !paused) {
        system ("xscreensaver-command -deactivate >&- 2>&- &");
}

   Consider   libss   a  proof-of-concept  which  may  turn  into
   something useful.
