Chase edf4319548 Discontinue HPUX support 2 years ago
..
Makefile.ibm 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 12 years ago
Makefile.sun 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 12 years ago
README 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 12 years ago
screensaver.c 1fe5a550b2 Fix typo in license headers 6 years ago
screensaver.dt 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 12 years ago

README

/* $XConsortium: README /main/3 1996/07/15 14:01:10 drk $ */

This directory contains demonstrations of the Dt Screen Saver API

screensaver - Example of a simple screen saver that uses the DT Screen
Saver API and techniques to make that screen saver
available to all desktop users or your own session.

The desktop provides a set of screen savers for use
in desktop sessions. This set of screen savers can
be previewed and selected from the Style Manager Screen
dialog.

Each screen saver is known to the desktop by the screen
saver's action definition. The screen saver's action
definition provides the desktop with a short localizable
title for the screen saver, as well as the command line
and options required to start the screen saver. When the
desktop starts a screen saver, it is started by invoking a
screen saver action.

The set of screen saver actions available to a user's
desktop session is defined by the DTSCREENSAVERLIST
environment variable. The default DTSCREENSAVERLIST
set is defined when you start a desktop session. A
system administrator can change this set by creating
a script in directory /etc/dt/config/$LANG/Xsession.d
that modifies DTSCREENSAVERLIST. A user can do the
same in their $HOME/.dtprofile.

A desktop screen saver is a simple application that
uses the DtSaverGetWindows() API to obtain a list of
windows, and draws on those windows. The desktop handles
the starting and stopping of the screen saver application.

The 'screensaver' application is an example that shows
how the DtSaverGetWindows() API may be used, how the
screen saver action may be defined for 'screensaver' and
how the screen saver can be integrated into the desktop for
all desktop users or an individual desktop user. The screen
saver action is named SampleScreenSaver and is defined in
/usr/dt/examples/dtscreen/dt/appconfig/types/C/screensaver.dt.

Making the screen saver available to all users
----------------------------------------------
You must be root to make the screen saver available
to all users. This example assumes you are building
'screensaver' directly in /usr/dt/examples/dtscreen.

1) Build the 'screensaver' application

make -f Makefile.

2) Register the screen saver action with the desktop

dtappintegrate -s /usr/dt/examples/dtscreen

3) Add the screen saver action to the list of available savers

#create file /etc/dt/config/Xsession.d/myvars containing:
DTSCREENSAVERLIST="SampleScreenSaver $DTSCREENSAVERLIST"

4) Make the /etc/dt/config/Xsession.d/myvars file executable:

chmod 755 /etc/dt/config/Xsession.d/myvars

The next time a user starts the desktop, the example screen
saver will be available for use.

Making the screen saver to your own desktop session
---------------------------------------------------
1) Copy the screen saver example to $HOME/dtscreen

cp -r /usr/dt/examples/dtscreen $HOME/dtscreen
cd $HOME/dtscreen

2) Build the 'screensaver' application

make -f Makefile.

3) Register the screen saver action with the desktop

cp $HOME/dtscreen/dt/appconfig/types/C/screensaver.dt \
$HOME/.dt/types

4) Change the action EXEC_STRING path

vi $HOME/.dt/types/screensaver.dt
#change the EXEC_STRING to '/dtscreen/screensaver',
#replacing with the value of $HOME

5) Add the screen saver action to the list of available savers

#edit $HOME/.dtprofile and add:
DTSCREENSAVERLIST="SampleScreenSaver $DTSCREENSAVERLIST"

The next time a user starts the desktop, the example screen
saver will be available for use.