Initial import of the CDE 2.1.30 sources from the Open Group.

This commit is contained in:
Peter Howkins
2012-03-10 18:21:40 +00:00
commit 83b6996daa
18978 changed files with 3945623 additions and 0 deletions

View File

@@ -0,0 +1,98 @@
!########
!#
!# Dthelpdemo app-defaults file.
!#
!# (c) Copyright 1993, 1994 Hewlett-Packard Company
!# (c) Copyright 1993, 1994 International Business Machines Corp.
!# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
!# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
!# Novell, Inc.
!#
!########
!########
!#
!# Display Area Colors
!#
!# These resources set the colors for the display area (where
!# actual help text is displayed).
!#
!########
Dthelpdemo*DisplayArea.background: white
Dthelpdemo*DisplayArea.foreground: black
Dthelpdemo*TocArea.background: white
Dthelpdemo*TocArea.foreground: black
!########
!#
!# Help On Help
!#
!# The "helpOnHelpVolume" resource specifies the help volume to be used
!# to display the "help on help" topics (when a help request is made
!# while using a help window).
!#
!#
!########
Dthelpdemo*helpOnHelpVolume: Help4Help
!########
!#
!# Man Page Box
!#
!# The "man box" is used to display man pages in dthelpdemo.
!#
!########
Dthelpdemo*manBox.rows: 32
Dthelpdemo*manBox.columns: 80
!########
!#
!# Menu Accelerators
!#
!# The following resources establish keyboard accelerators
!# for the most frequently accessed menu commands in the help dialogs.
!#
!########
*DtHelpDialog*searchMenu.keyword.acceleratorText: Ctrl+I
*DtHelpDialog*searchMenu.keyword.accelerator: Ctrl<Key>i
*DtHelpDialog*navigateMenu.backTrack.acceleratorText: Ctrl+B
*DtHelpDialog*navigateMenu.backTrack.accelerator: Ctrl<Key>b
*DtHelpDialog*navigateMenu.homeTopic.acceleratorText: Ctrl+H
*DtHelpDialog*navigateMenu.homeTopic.accelerator: Ctrl<Key>h
*DtHelpDialog*fileMenu.close.acceleratorText: Alt+F4
*DtHelpDialog*fileMenu.close.accelerator: Alt<Key>f4
!########
!#
!# Execution Alias commands
!#
!# The following resources establish execution aliasis. This isolates
!# the actual command from the help volume src files, allowing for
!# end-user modification.
!#
!########
*Dthelpdemo.executionAlias.xclockAlias: xclock &
*Dthelpdemo.executionAlias.dtCalcAlias: dtcalc &
*Dthelpdemo.executionAlias.xloadAlias: xload &
!########################### eof ###################

View File

@@ -0,0 +1,799 @@
/* $XConsortium: HelpCache.c /main/4 1995/11/08 09:17:54 rswiston $ */
/*************************************<+>*************************************
*****************************************************************************
**
** File: HelpCache.c
**
** Project: dthelpdemo demo program
**
** Description: Contains the Help Callbacks and Utility functions for our
** demo tool dthelpdemo.
**
**
** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994
** Hewlett-Packard Company
** (c) Copyright 1993, 1994 International Business Machines Corp.
** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
** (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
** Novell, Inc.
**
****************************************************************************
************************************<+>*************************************/
/* System Include Files */
#include <Xm/Xm.h>
#include <Xm/XmP.h>
#include <Dt/Help.h>
#include <Dt/HelpDialog.h>
#include <Dt/HelpQuickD.h>
/* Local Includes */
#include "Main.h"
#include "HelpCacheI.h"
#include "HourGlassI.h"
/******** Static Function Declarations ********/
static void CloseHelpCB (
Widget w,
XtPointer clientData,
XtPointer callData);
static Boolean GetFromCache(
Widget parent,
CacheListStruct **pCurrentNode);
/* Global Main Help Dialog Widget */
static Widget helpMain=NULL;
static Widget versionMain=NULL;
/*****************************************************************************
* Function: void HelpMapCB()
*
*
*
* Parameters: clientData is the widget in reference to
* which widget w is placed
*
* Return Value: Void.
*
* Purpose: Determins where a new child dialog should be mapped in
* relation to its parent.
*
* Algorithm: 1. attempt left or right placement with no overlap
* 2. if fails, attempt up or down placement with no overlap
* 3. if fails, determines location with least
* amount of overlap, and places there.
*
*****************************************************************************/
XtCallbackProc HelpMapCB(
Widget w,
XtPointer clientData,
XtPointer callData)
{
Arg args[2];
Widget parent;
Position centeredY, bestX, bestY, pX, pY;
Dimension pHeight, myHeight, pWidth, myWidth;
Dimension maxX, maxY;
int rhsX, lhsX, topY, botY; /* needs to be int, not Dimension */
Display * display;
Screen * screen;
int screenNumber;
parent = (Widget)clientData;
display = XtDisplay(w);
screen = XtScreen(w);
screenNumber = XScreenNumberOfScreen(screen);
pX = XtX(parent);
pY = XtY(parent);
if (pX < 0) pX = 0;
if (pY < 0) pY = 0;
pHeight = XtHeight(parent);
pWidth = XtWidth(parent);
myHeight = XtHeight(w);
myWidth = XtWidth(w);
maxX = XDisplayWidth(display,screenNumber);
maxY = XDisplayHeight(display,screenNumber);
/* algorithm
* 1. attempt left or right placement with no overlap
* 2. if fails, attempt up or down placement with no overlap
* 3. if fails, places on the right in the middle
*/
/* first try left right placement */
bestY = pY + pHeight/2 - myHeight/2;
centeredY = bestY;
rhsX = pX + pWidth;
lhsX = pX - myWidth - 8; /* 8: account for border */
if ( (rhsX + myWidth) < maxX ) bestX = rhsX;
else if ( lhsX > 0 ) bestX = lhsX;
else
{
/* then try up down placement */
bestX = pX + pWidth/2 - myWidth/2;
botY = pY + pHeight;
topY = pY - myHeight - 44; /* 44: account for menu border */
if ( (botY + myWidth) < maxY ) bestY = botY;
else if ( topY > 0 ) bestY = topY;
else
{
/* otherwise, center vertically and on the right */
bestX = maxX - myWidth;
bestY = centeredY;
}
}
XtSetArg(args[0], XmNx, bestX);
XtSetArg(args[1], XmNy, bestY);
XtSetValues(w, args, 2);
return((XtCallbackProc) NULL);
}
/****************************************************************************
* Function: CloseHelpCB(
* Widget w,
* XtPointer clientData,
* XtPointer callData
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Process close requests on all Help Dialog widgets
* created and managed by this application.
*
***************************************************************************/
static void CloseHelpCB (
Widget w,
XtPointer clientData,
XtPointer callData)
{
Widget helpDialog = (Widget) clientData;
CacheListStruct *pTemp;
pTemp = pCacheListHead;
/* Search our Cache List for the closed help dialog */
while ((pTemp->helpDialog != helpDialog) && (pTemp != NULL))
pTemp = pTemp->pNext;
if (pTemp == NULL)
/* ERROR */
printf("We did not find our help dialog widget in the cache list??? /n");
/* Un Map and Clean up the help widget */
XtUnmanageChild(helpDialog);
pTemp->inUseFlag = FALSE;
}
/****************************************************************************
* Function: CloseMainCB(
* Widget w,
* XtPointer clientData,
* XtPointer callData
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Process close requests on our main help dialog.
*
***************************************************************************/
static void CloseMainCB (
Widget w,
XtPointer clientData,
XtPointer callData)
{
Widget currentDialog = (Widget) clientData;
/* Un Map and Clean up the help widget */
XtUnmanageChild(currentDialog);
}
/****************************************************************************
* Function: void ProcessLinkCB(
* Widget w,
* XtPointer clientData,
* XtPointer callData
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Process JUMP-NEW and APP-LINK hypertext requests in a
* given Help Dialog Window.
*
* This is the callback used for the DtNhyperLinkCallback
* on each of the help dialog widges created.
*
****************************************************************************/
void ProcessLinkCB (
Widget w,
XtPointer clientData,
XtPointer callData)
{
Arg args[20];
int n;
Position xPos, yPos;
int appLinkNum=0;
int count;
static Dimension width=0;
static Dimension height=0;
static Boolean goBigger=TRUE;
DtHelpDialogCallbackStruct * hyperData =
(DtHelpDialogCallbackStruct *) callData;
switch (hyperData->hyperType)
{
case DtHELP_LINK_JUMP_NEW:
DisplayTopic (XtParent(w), hyperData->helpVolume,
hyperData->locationId);
break;
case DtHELP_LINK_MAN_PAGE:
/* Create and display the requested man page */
DisplayMan(XtParent(w), hyperData->specification);
break;
case DtHELP_LINK_TEXT_FILE:
/* Create a quick help dialog and display the text file in it */
break;
case DtHELP_LINK_APP_DEFINE:
appLinkNum = atoi(hyperData->specification);
if (appLinkNum == 100) /* Move the window */
{
/* First Place the window in the upper left */
n = 0;
XtSetArg(args[n], XmNx, 0); ++n;
XtSetArg(args[n], XmNy, 0); ++n;
XtSetValues(topLevel, args, n);
/* Now move it down to the center of the display */
for (count = 1;count < 500; count= count+5)
{
n = 0;
XtSetArg(args[n], XmNx, count); ++n;
XtSetArg(args[n], XmNy, count); ++n;
XtSetValues(topLevel, args, n);
XmUpdateDisplay(topLevel);
}
}
if (appLinkNum == 101) /* Resize the window */
{
if (width == 0)
{
/* Get the current dialog size */
n =0;
XtSetArg (args[n], XmNheight, &height); n++;
XtSetArg (args[n], XmNwidth, &width); n++;
XtGetValues(topLevel, args, n);
}
if (goBigger)
{
n =0;
XtSetArg (args[n], XmNheight, height+100); n++;
XtSetArg (args[n], XmNwidth, width+50); n++;
XtSetValues(topLevel, args, n);
goBigger = FALSE;
}
else
{
/* Go smaller */
n =0;
XtSetArg (args[n], XmNheight, height); n++;
XtSetArg (args[n], XmNwidth, width); n++;
XtSetValues(topLevel, args, n);
goBigger = TRUE;
}
}
if (appLinkNum == 102)
{
}
if (appLinkNum == 103)
{
}
break;
default: /* Catches any other applicaion definded link types */
printf("We some how got a bogus hyptertext link type/n");
} /* End Switch Statement */
}
/****************************************************************************
* Function: void DisplayMan()
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Displays a UNIX man page in a quick help dialog.
*
****************************************************************************/
void DisplayMan(
Widget parent,
char *man)
{
Arg args[20];
int n;
Widget helpWidget;
char *title;
XmUpdateDisplay(topLevel);
if (manWidget == NULL)
{
/* Create the QuickHelpDialog widget for help on help */
title = XtNewString(man);
n =0;
XtSetArg (args[n], XmNuseAsyncGeometry, True); n++;
XtSetArg (args[n], XmNtitle, title); n++;
XtSetArg (args[n], DtNhelpType,DtHELP_TYPE_MAN_PAGE); n++;
XtSetArg (args[n], DtNmanPage, man); n++;
manWidget = DtCreateHelpQuickDialog(topLevel,"manBox", args, n);
XtFree((char*) title);
XtAddCallback(manWidget, DtNcloseCallback,
CloseMainCB, (XtPointer) manWidget);
/* Add the popup position callback to our man dialog */
XtAddCallback (XtParent(manWidget), XmNpopupCallback,
(XtCallbackProc)HelpMapCB,
(XtPointer)topLevel);
/* We do not want a help button for now so we unmap it */
helpWidget = DtHelpQuickDialogGetChild (manWidget,
DtHELP_QUICK_HELP_BUTTON);
XtUnmanageChild (helpWidget);
XtManageChild(manWidget);
}
else
{
TurnOnHourGlass(manWidget);
/* We already have a quick help dialog so re-use it */
n = 0;
XtSetArg (args[n], DtNhelpType,DtHELP_TYPE_MAN_PAGE); n++;
XtSetArg (args[n], DtNmanPage, man); n++;
XtSetValues(manWidget, args, n);
title = XtNewString(man);
n = 0;
XtSetArg (args[n], XmNtitle, title); n++;
XtSetValues(XtParent(manWidget), args, n);
XtFree((char*) title);
XtManageChild(manWidget);
XtMapWidget(XtParent(manWidget));
XRaiseWindow(XtDisplay(parent), XtWindow(XtParent(manWidget)));
TurnOffHourGlass(manWidget);
}
}
/****************************************************************************
* Function: void DisplayTopic(
* Widget parent,
* char *helpVolume,
* char *locationId)
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Creats and displays a new help dialog w/the requested help
* volume and topic.
*
****************************************************************************/
void DisplayTopic(
Widget parent,
char *helpVolume,
char *locationId)
{
Arg args[10];
int n;
CacheListStruct *pCurrentNode = NULL;
Boolean cachedNode = FALSE;
/* Get a inuse node if we have one or a Cached one */
cachedNode = GetFromCache(parent, &pCurrentNode);
/* If we got a free one from the Cache, use it */
/* Set Values on current free one, then map it */
if (cachedNode)
{
n = 0;
XtSetArg (args[n], XmNtitle, "HelpDemo Help"); n++;
if (helpVolume != NULL)
{
XtSetArg (args[n],DtNhelpVolume,helpVolume); n++;
}
XtSetArg (args[n], DtNlocationId,locationId); n++;
XtSetValues(pCurrentNode->helpDialog, args, n);
XtManageChild(pCurrentNode->helpDialog);
XtMapWidget(XtParent(pCurrentNode->helpDialog));
}
else
{
while (!XtIsSubclass(parent, applicationShellWidgetClass))
parent = XtParent(parent);
/* Build a new one in our cached list */
n = 0;
XtSetArg (args[n], XmNtitle, "Helpdemo Help"); n++;
if (helpVolume != NULL)
{
XtSetArg (args[n],DtNhelpVolume,helpVolume); n++;
}
XtSetArg (args[n], DtNlocationId,locationId); n++;
pCurrentNode->helpDialog =
DtCreateHelpDialog(parent, "helpWidget", args, n);
XtAddCallback(pCurrentNode->helpDialog, DtNhyperLinkCallback,
ProcessLinkCB, NULL);
XtAddCallback(pCurrentNode->helpDialog, DtNcloseCallback,
CloseHelpCB, (XtPointer) pCurrentNode->helpDialog);
XtManageChild(pCurrentNode->helpDialog);
XtMapWidget(XtParent(pCurrentNode->helpDialog));
}
}
/****************************************************************************
* Function: void DisplayMain(
* Widget parent,
* char *helpVolume,
* char *locationId)
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Displays help for helpdemo in the one helpDialog window
* created for the applicaiton.
*
****************************************************************************/
void DisplayMain (
Widget parent,
char *helpVolume,
char *locationId)
{
Arg args[10];
int n;
if (helpMain != NULL)
{
n = 0;
XtSetArg (args[n], XmNtitle, "hemodemo Help"); n++;
if (helpVolume != NULL)
{
XtSetArg (args[n],DtNhelpVolume,helpVolume); n++;
}
XtSetArg (args[n], DtNlocationId,locationId); n++;
XtSetValues(helpMain, args, n);
XtManageChild(helpMain);
}
else
{
while (!XtIsSubclass(parent, applicationShellWidgetClass))
parent = XtParent(parent);
/* Build a new one in our cached list */
n = 0;
XtSetArg (args[n], XmNtitle, "Helpdemo Help"); n++;
if (helpVolume != NULL)
{
XtSetArg (args[n],DtNhelpVolume,helpVolume); n++;
}
XtSetArg (args[n], DtNlocationId,locationId); n++;
helpMain = DtCreateHelpDialog(parent, "helpWidget", args, n);
XtAddCallback(helpMain, DtNhyperLinkCallback,
ProcessLinkCB, NULL);
XtAddCallback(helpMain, DtNcloseCallback,
CloseMainCB, (XtPointer) helpMain);
/* Add the popup position callback to our main help dialog */
XtAddCallback (XtParent(helpMain), XmNpopupCallback,
(XtCallbackProc)HelpMapCB,
(XtPointer)parent);
XtManageChild(helpMain);
}
}
/****************************************************************************
* Function: void DisplayVersion(
* Widget parent,
* char *helpVolume,
* char *locationId)
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Displays the version dialog for the helpdemo program.
*
****************************************************************************/
void DisplayVersion (
Widget parent,
char *helpVolume,
char *locationId)
{
Arg args[10];
int n;
Widget printWidget;
Widget helpWidget;
Widget backWidget;
if (versionMain != NULL)
{
n = 0;
XtSetArg (args[n], XmNtitle, "Helpdemo Version Dialog"); n++;
if (helpVolume != NULL)
{
XtSetArg (args[n],DtNhelpVolume,helpVolume); n++;
}
XtSetArg (args[n], DtNlocationId,locationId); n++;
XtSetValues(versionMain, args, n);
XtManageChild(versionMain);
}
else
{
while (!XtIsSubclass(parent, applicationShellWidgetClass))
parent = XtParent(parent);
/* Build a new one in our cached list */
n = 0;
XtSetArg (args[n], XmNtitle, "Helpdemo Version Dialog"); n++;
if (helpVolume != NULL)
{
XtSetArg (args[n],DtNhelpVolume,helpVolume); n++;
}
XtSetArg (args[n], DtNlocationId,locationId); n++;
XtSetArg (args[n], DtNhelpType, DtHELP_TYPE_TOPIC); n++;
versionMain = DtCreateHelpQuickDialog(parent,"versionWidget",args,n);
XtAddCallback(versionMain, DtNcloseCallback,
CloseMainCB, (XtPointer) versionMain);
/* We do not want a print button for now so we unmap it */
printWidget = DtHelpQuickDialogGetChild (versionMain,
DtHELP_QUICK_PRINT_BUTTON);
XtUnmanageChild (printWidget);
/* We do not want a help button for now so we unmap it */
helpWidget = DtHelpQuickDialogGetChild (versionMain,
DtHELP_QUICK_HELP_BUTTON);
XtUnmanageChild (helpWidget);
backWidget = DtHelpQuickDialogGetChild (versionMain,
DtHELP_QUICK_BACK_BUTTON);
XtUnmanageChild (backWidget);
XtManageChild(versionMain);
}
}
/****************************************************************************
* Function: static CacheListStruct GetFromCache(
* Widget parent);
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Gets a free help node form our cache list. If none are
* free, it will return fallse and the calling routine will
* create a new help dialog widget.
*
****************************************************************************/
static Boolean GetFromCache(
Widget parent,
CacheListStruct **pCurrentNode)
{
CacheListStruct *pTemp;
if (pCacheListHead == NULL)
{
/* We have a new list so lets create one and pass it back */
pCacheListHead =
(CacheListStruct *) XtMalloc((sizeof(CacheListStruct)));
/* Assign the default values to our node */
pCacheListHead->helpDialog = NULL;
pCacheListHead->inUseFlag = TRUE;
pCacheListHead->pNext = NULL;
pCacheListHead->pPrevious = NULL;
/* Assign our tale pointer */
pCacheListTale = pCacheListHead;
/* Make sure or totalNodes counter is correct, e.g. force it to 1 */
totalCacheNodes = 1;
/* Return our head pointer because it's our first and only node */
*pCurrentNode = pCacheListHead;
return (FALSE);
}
else
{
/* We have need for an in-use help dialog or a new one, so look */
pTemp = pCacheListHead;
while (pTemp != NULL)
{
if (pTemp->inUseFlag == FALSE)
{
pTemp->inUseFlag = TRUE;
*pCurrentNode = pTemp;
return (TRUE);
}
else
pTemp = pTemp->pNext;
}
/* If we did not find a free nod then we must add a new one to the
* top of the list, and return it.
*/
pTemp = (CacheListStruct *) XtMalloc((sizeof(CacheListStruct)));
/* Assign the default values to our node */
pTemp->helpDialog = NULL;
pTemp->inUseFlag = TRUE;
pTemp->pNext = pCacheListHead;
pTemp->pPrevious = NULL;
pCacheListHead->pPrevious = pTemp;
/* Re-Assign our head pointer to point to the new head of the list */
pCacheListHead = pTemp;
/* Make sure or totalNodes counter is correct, e.g. force it to 1 */
totalCacheNodes = totalCacheNodes + 1;
/* Return our head pointer because it's our new node */
*pCurrentNode = pCacheListHead;
return (FALSE);
}
}

View File

@@ -0,0 +1,182 @@
/* $XConsortium: HelpCacheI.h /main/3 1995/11/08 09:18:06 rswiston $ */
/************************************<+>*************************************
****************************************************************************
**
** File: HelpCacheI.h
**
** Project: CDE dthelpdemo sample program.
**
** Description: This is the header file for the HelpCache.c module.
**
**
** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994
** Hewlett-Packard Company
** (c) Copyright 1993, 1994 International Business Machines Corp.
** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
** (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
** Novell, Inc.
**
****************************************************************************
************************************<+>*************************************/
#ifndef _HelpCacheI_h
#define _HelpCacheI_h
/****************************************************************
*
* Cache List Info Structure Definition.
*
****************************************************************/
typedef struct _CacheListStruct {
Widget helpDialog;
Boolean inUseFlag;
struct _CacheListStruct *pNext;
struct _CacheListStruct *pPrevious;
} CacheListStruct;
/****************************************************************************
* Function: void DisplayTopic(
* Widget parent,
* char *accessPath,
* char *idString)
*
*
* Return Value: Void.
*
* Purpose: Creats and displays a new help dialog w/the requested help
* volume and topic.
*
****************************************************************************/
extern void DisplayTopic(
Widget parent,
char *helpVolume,
char *locationId);
/****************************************************************************
* Function: void DisplayMain(
* Widget parent,
* char *helpVolume,
* char *locationId)
*
*
* Return Value: Void.
*
* Purpose: Displays help for helpdemo in the one helpDialog window
* created for the applicaiton.
*
****************************************************************************/
extern void DisplayMain(
Widget parent,
char *helpVolume,
char *locationId);
/****************************************************************************
* Function: void DisplayVersion(
* Widget parent,
* char *helpVolume,
* char *locationId)
*
* Return Value: Void.
*
* Purpose: Displays the version dialog for the helpdemo program.
*
****************************************************************************/
extern void DisplayVersion(
Widget parent,
char *helpVolume,
char *locationId);
/*****************************************************************************
* Function: void HelpMapCB()
*
*
*
* Parameters: client_data is the widget in reference to
* which widget w is placed
*
* Return Value: Void.
*
* Purpose: Determins where a new child dialog should be mapped in
* relation to its parent.
*
* Algorithm: 1. attempt left or right placement with no overlap
* 2. if fails, attempt up or down placement with no overlap
* 3. if fails, determines location with least
* amount of overlap, and places there.
*
*****************************************************************************/
extern XtCallbackProc HelpMapCB(
Widget w,
XtPointer clientData,
XtPointer callData);
/****************************************************************************
* Function: void DisplayMan()
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Displays a UNIX man page in a quick help dialog.
*
****************************************************************************/
extern void DisplayMan(
Widget parent,
char *man);
/****************************************************************************
* Function: void ProcessLinkCB(
* Widget w,
* XtPointer clientData,
* XtPointer callData
*
* Parameters:
*
* Return Value: Void.
*
* Purpose: Process JUMP-NEW and APP-LINK hypertext requests in a
* given Help Dialog Window.
*
* This is the callback used for the DtNhyperLinkCallback
* on each of the help dialog widges created.
*
****************************************************************************/
extern void ProcessLinkCB (
Widget w,
XtPointer clientData,
XtPointer callData);
#endif /* _HelpCacheI_h */
/* DON'T ADD ANYTHING AFTER THIS #endif */

View File

@@ -0,0 +1,54 @@
/* $XConsortium: HelpEntry.h /main/3 1995/11/08 09:18:17 rswiston $ */
/*************************************<+>*************************************
*****************************************************************************
**
** File: HelpEntry.h
**
** Project: CDE dthelpdemo sample program.
**
** Description: Header file containing all the help entry
** points for the dthelpdemo program.
**
** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994
** Hewlett-Packard Company
** (c) Copyright 1993, 1994 International Business Machines Corp.
** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
** (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
** Novell, Inc.
**
*******************************************************************
*************************************<+>*************************************/
#ifndef _HelpEntry_h
#define _HelpEntry_h
/* Help Dialog, main entry point */
#define DIALOG_HELP_ID "_hometopic"
/* HELP widget Entry Point Id's */
#define CREATE_FRAME "API"
#define CONTROL1_FRAME "TOOLKIT"
#define CONTROL2_FRAME "controlTestId"
#define MORE_BTN_ID "QUICKHELP"
/* Menubar Id's */
#define APP_MENU_ID "_hometopic"
#define VER_MENU_ID "_copyright"
#endif /* _HelpEntry_h */
/* Do not add anything after this endif. */

View File

@@ -0,0 +1,259 @@
/* $XConsortium: HourGlass.c /main/3 1995/11/08 09:18:28 rswiston $ */
/************************************<+>*************************************
****************************************************************************
**
** File: HourGlass.c
**
** Project: CDE dthelpdemo sample program.
**
** Description: This module contains a simple function for
** creating an hourglass cursor.
**
** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994
** Hewlett-Packard Company
** (c) Copyright 1993, 1994 International Business Machines Corp.
** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
** (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
** Novell, Inc.
**
**
**
****************************************************************************
************************************<+>*************************************/
#include <X11/Xlib.h>
#include <X11/Intrinsic.h>
#define time32_width 32
#define time32_height 32
#define time32_x_hot 15
#define time32_y_hot 15
static unsigned char time32_bits[] = {
0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0x7f,
0x8c, 0x00, 0x00, 0x31, 0x4c, 0x00, 0x00, 0x32, 0x4c, 0x00, 0x00, 0x32,
0x4c, 0x00, 0x00, 0x32, 0x4c, 0x00, 0x00, 0x32, 0x4c, 0x00, 0x00, 0x32,
0x8c, 0x00, 0x00, 0x31, 0x0c, 0x7f, 0xfe, 0x30, 0x0c, 0xfe, 0x7f, 0x30,
0x0c, 0xfc, 0x3f, 0x30, 0x0c, 0xf8, 0x1f, 0x30, 0x0c, 0xe0, 0x07, 0x30,
0x0c, 0x80, 0x01, 0x30, 0x0c, 0x80, 0x01, 0x30, 0x0c, 0x60, 0x06, 0x30,
0x0c, 0x18, 0x18, 0x30, 0x0c, 0x04, 0x20, 0x30, 0x0c, 0x02, 0x40, 0x30,
0x0c, 0x01, 0x80, 0x30, 0x8c, 0x00, 0x00, 0x31, 0x4c, 0x80, 0x01, 0x32,
0x4c, 0xc0, 0x03, 0x32, 0x4c, 0xf0, 0x1f, 0x32, 0x4c, 0xff, 0xff, 0x32,
0xcc, 0xff, 0xff, 0x33, 0x8c, 0xff, 0xff, 0x31, 0xfe, 0xff, 0xff, 0x7f,
0xfe, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00};
#define time32m_width 32
#define time32m_height 32
static unsigned char time32m_bits[] = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xcf, 0x00, 0x00, 0xf3, 0x6e, 0x00, 0x00, 0x76, 0x6e, 0x00, 0x00, 0x76,
0x6e, 0x00, 0x00, 0x76, 0x6e, 0x00, 0x00, 0x76, 0x6e, 0x00, 0x00, 0x76,
0xce, 0x00, 0x00, 0x73, 0x8e, 0x7f, 0xfe, 0x71, 0x0e, 0xff, 0xff, 0x70,
0x0e, 0xfe, 0x7f, 0x70, 0x0e, 0xfc, 0x3f, 0x70, 0x0e, 0xf8, 0x1f, 0x70,
0x0e, 0xe0, 0x07, 0x70, 0x0e, 0xe0, 0x07, 0x70, 0x0e, 0x78, 0x1e, 0x70,
0x0e, 0x1c, 0x38, 0x70, 0x0e, 0x06, 0x60, 0x70, 0x0e, 0x03, 0xc0, 0x70,
0x8e, 0x01, 0x80, 0x71, 0xce, 0x00, 0x00, 0x73, 0x6e, 0x80, 0x01, 0x76,
0x6e, 0xc0, 0x03, 0x76, 0x6e, 0xf0, 0x1f, 0x76, 0x6e, 0xff, 0xff, 0x76,
0xee, 0xff, 0xff, 0x77, 0xcf, 0xff, 0xff, 0xf3, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
#define time16_x_hot 7
#define time16_y_hot 7
#define time16_width 16
#define time16_height 16
static unsigned char time16_bits[] = {
0x00, 0x00, 0xfe, 0x7f, 0x14, 0x28, 0x14, 0x28, 0x14, 0x28, 0x24, 0x24,
0x44, 0x22, 0x84, 0x21, 0x84, 0x21, 0x44, 0x22, 0x24, 0x24, 0x14, 0x28,
0x94, 0x29, 0xd4, 0x2b, 0xfe, 0x7f, 0x00, 0x00};
#define time16m_width 16
#define time16m_height 16
static unsigned char time16m_bits[] = {
0xff, 0xff, 0xff, 0xff, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f,
0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f,
0xfe, 0x7f, 0xfe, 0x7f, 0xff, 0xff, 0xff, 0xff};
/******** End Public Function Declarations ********/
/*************************************<->*************************************
*
* Cursor GetHourGlassCursor ()
*
*
* Description:
* -----------
* Builds and returns the appropriate Hourglass cursor
*
*
* Inputs:
* ------
* dpy = display
*
* Outputs:
* -------
* Return = cursor.
*
* Comments:
* --------
* None. (None doesn't count as a comment)
*
*************************************<->***********************************/
static Cursor GetHourGlassCursor(
Display *dpy)
{
char *bits;
char *maskBits;
unsigned int width;
unsigned int height;
unsigned int xHotspot;
unsigned int yHotspot;
Pixmap pixmap;
Pixmap maskPixmap;
XColor xcolors[2];
int scr;
unsigned int cWidth;
unsigned int cHeight;
int useLargeCursors = 0;
static Cursor waitCursor=0;
if (waitCursor != 0)
return(waitCursor);
if (XQueryBestCursor (dpy, DefaultRootWindow(dpy),
32, 32, &cWidth, &cHeight))
{
if ((cWidth >= 32) && (cHeight >= 32))
{
useLargeCursors = 1;
}
}
if (useLargeCursors)
{
width = time32_width;
height = time32_height;
bits = (char *) time32_bits;
maskBits = (char *) time32m_bits;
xHotspot = time32_x_hot;
yHotspot = time32_y_hot;
}
else
{
width = time16_width;
height = time16_height;
bits = (char *) time16_bits;
maskBits = (char *) time16m_bits;
xHotspot = time16_x_hot;
yHotspot = time16_y_hot;
}
pixmap = XCreateBitmapFromData (dpy,
DefaultRootWindow(dpy), bits,
width, height);
maskPixmap = XCreateBitmapFromData (dpy,
DefaultRootWindow(dpy), maskBits,
width, height);
xcolors[0].pixel = BlackPixelOfScreen(DefaultScreenOfDisplay(dpy));
xcolors[1].pixel = WhitePixelOfScreen(DefaultScreenOfDisplay(dpy));
XQueryColors (dpy,
DefaultColormapOfScreen(DefaultScreenOfDisplay
(dpy)), xcolors, 2);
waitCursor = XCreatePixmapCursor (dpy, pixmap, maskPixmap,
&(xcolors[0]), &(xcolors[1]),
xHotspot, yHotspot);
XFreePixmap (dpy, pixmap);
XFreePixmap (dpy, maskPixmap);
return (waitCursor);
}
/*************************************<->*************************************
*
* void TurnOnHourGlass
*
*
* Description:
* -----------
* sets the window cursor to an hourglass
*
*
* Inputs:
* ------
* w = Widget
*
* Outputs:
* -------
* None
*
* Comments:
* --------
* None. (None doesn't count as a comment)
*
*************************************<->***********************************/
void TurnOnHourGlass(
Widget w)
{
Cursor cursor;
cursor = GetHourGlassCursor(XtDisplay(w));
XDefineCursor(XtDisplay(w), XtWindow(w), cursor);
XFlush(XtDisplay(w));
}
/*************************************<->*************************************
*
* void TurnOffHourGlass
*
*
* Description:
* -----------
* Removed the hourglass cursor from a window
*
*
* Inputs:
* ------
* w = Widget
*
* Outputs:
* -------
* None
*
* Comments:
* --------
* None. (None doesn't count as a comment)
*
*************************************<->***********************************/
void TurnOffHourGlass(
Widget w)
{
XUndefineCursor(XtDisplay(w), XtWindow(w));
XFlush(XtDisplay(w));
}

View File

@@ -0,0 +1,65 @@
/* $XConsortium: HourGlassI.h /main/3 1995/11/08 09:18:38 rswiston $ */
/************************************<+>*************************************
****************************************************************************
**
** File: HourGlassI.h
**
** Project: CDE dthelpdemo sample program.
**
** Description: Internal include file for HourGlass Library.
**
**
** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994
** Hewlett-Packard Company
** (c) Copyright 1993, 1994 International Business Machines Corp.
** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
** (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
** Novell, Inc.
**
**
**
****************************************************************************
************************************<+>*************************************/
#ifndef _hourglassI_h
#define _hourglassI_h
/* TurnOnHourGlass -
*
* Gets and displays an hourglass cursor in the window of the widget
* which is passed in to the funciton.
*/
extern void _DtHelpTurnOnHourGlass(
Widget widget);
/*
* widget is the toplevel shell of the window you want
* the hourglass cursor to appear in.
*/
/* TurnOffHourGlass -
*
* Removes the hourglass cursor from the window of the widget
* which is passed in to the funciton.
*/
extern void _DtHelpTurnOffHourGlass(
Widget widget);
/*
* widget is the toplevel shell of the window you want
* to remove hourglass cursor from.
*/
#endif /* _hourglassI_h */
/* DON'T ADD ANYTHING AFTER THIS #endif */

View File

@@ -0,0 +1,23 @@
XCOMM $XConsortium: Imakefile /main/7 1996/09/14 15:26:24 drk $
/**
** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994
** Hewlett-Packard Company
** (c) Copyright 1993, 1994 International Business Machines Corp.
** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
** (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
** Novell, Inc.
**/
PROGRAMS = dthelpdemo
DEFINES = -D_BMS
INCLUDES = -I.
DEPLIBS = $(DEPDTHELPLIB) $(DEPDTSVCLIB) $(DEPTTLIB) $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXPLIB) $(DEPXLIB)
LOCAL_LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTOOLLIB) $(XPLIB) $(XLIB)
SYS_LIBRARIES = DtClientSysLibs $(CXXLIB)
SRCS = Main.c HourGlass.c HelpCache.c
OBJS = Main.o HourGlass.o HelpCache.o
ComplexProgramTarget($(PROGRAMS))

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,62 @@
/* $XConsortium: Main.h /main/3 1995/11/08 09:19:11 rswiston $ */
/************************************<+>*************************************
****************************************************************************
**
** File: Main.h
**
** Project: CDE dthelpdemo sample program.
**
** Description: This is the main header file for the dthelpdemo
** program. It includes globally referenced variables and
** defines.
**
**
** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994
** Hewlett-Packard Company
** (c) Copyright 1993, 1994 International Business Machines Corp.
** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
** (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
** Novell, Inc.
**
****************************************************************************
************************************<+>*************************************/
#ifndef _Main_h
#define _Main_h
#include "HelpCacheI.h"
/* Option defines for menubar help access */
#define HELP_ON_ITEM 1
#define HELP_ON_TOPIC 2
#define HELP_ON_VERSION 3
/* Option defines for Sample Buttons */
#define CREATE_SAMPLE 1
#define DESTROY_SAMPLE 2
#define CHANGE_CONTENT 3
#define CHANGE_SIZE 4
#define CHANGE_GUI 5
#define SHOW_APP_DEFINED_LINKS 6
/* Global Variables Used by our helpCache */
CacheListStruct *pCacheListHead;
CacheListStruct *pCacheListTale;
int totalCacheNodes;
/* Globally referenced widget variables */
extern Widget topLevel;
extern Widget mainShell;
extern Widget manWidget;
#endif /* _Main_h */
/* DON'T ADD ANYTHING AFTER THIS #endif */

View File

@@ -0,0 +1,76 @@
#
# @DEC_COPYRIGHT@
#
#
# HISTORY
# $Log$
# Revision 2.1.2.2 1995/04/27 20:47:27 Kwanchai_Pawutiyapong
# SunSoft Jan. snapshot merge from deltacde.
# [1995/04/25 22:00:43 Kwanchai_Pawutiyapong]
#
# Revision 1.1.2.2 1995/04/20 03:02:02 Kwanchai_Pawutiyapong
# Create DEC version of Makefile for dthelpdemo.
# [1995/04/19 00:35:14 Kwanchai_Pawutiyapong]
#
# $EndLog$
#
# @(#)$XConsortium: Makefile.DEC /main/2 1996/05/13 11:26:48 drk $
#
##########################################################################
#
# Makefile for dthelpdemo
#
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
##########################################################################
#ifndef CDE_INSTALLATION_TOP
CDE_INSTALLATION_TOP = /usr/dt
#endif
PROGRAM = dthelpdemo
SOURCES = Main.c HelpCache.c HourGlass.c
OBJECTS = Main.o HelpCache.o HourGlass.o
HELPSRC = helpdemo.htg
HELPOUT = help/helpdemo.sdl \
help/helpdemo.err \
help/helpdemo.xrh
OPTIMIZEDFLAGS = -O
DTINCLUDE = -I$(CDE_INSTALLATION_TOP)/include
X11INCLUDE = -I/usr/include/X11
EXTRA_INCLUDES =
INCLUDES = $(DTINCLUDE) $(X11INCLUDE) $(EXTRA_INCLUDES)
DTHELPLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtHelp
DTSVCLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtSvc
TTLIB = -L$(CDE_INSTALLATION_TOP)/lib -ltt
XMLIB = -lXm
XTLIB = -lXt
X11LIB = -lX11
LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTLIB) $(X11LIB)
LDFLAGS =
.c.o:
cc -c $(OPTIMIZEDFLAGS) $(INCLUDES) $<
all:: $(PROGRAM) volume
$(PROGRAM):: $(OBJECTS)
cc -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES)
volume::
(cd help/ ; \
dthelptag $(HELPSRC);)
clean::
rm -f $(PROGRAM)
rm -f $(OBJECTS)
rm -f $(HELPOUT)

View File

@@ -0,0 +1,66 @@
# $XConsortium: Makefile.HP /main/2 1996/05/13 11:30:43 drk $
##########################################################################
#
# Makefile for dthelpdemo
#
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
##########################################################################
#ifndef CDE_INSTALLATION_TOP
CDE_INSTALLATION_TOP = /usr/dt
#endif
PROGRAM = dthelpdemo
SOURCES = Main.c HelpCache.c HourGlass.c
OBJECTS = Main.o HelpCache.o HourGlass.o
HELPSRC = helpdemo.htg
HELPOUT = help/helpdemo.sdl \
help/helpdemo.err \
help/helpdemo.xrh
CFLAGS = -Aa -D_HPUX_SOURCE
CDEBUGFLAGS = -O
DTINCLUDE = -I$(CDE_INSTALLATION_TOP)/include
X11INCLUDE = -I/usr/include/X11R5
EXTRA_INCLUDES =
INCLUDES = $(DTINCLUDE) $(X11INCLUDE) $(EXTRA_INCLUDES)
DTHELPLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtHelp
DTSVCLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtSvc
TTLIB = -L$(CDE_INSTALLATION_TOP)/lib -ltt
XMLIB = -L$(CDE_INSTALLATION_TOP)/lib -lXm
XTLIB = -L/usr/lib/X11R5 -lXt
X11LIB = -L/usr/lib/X11R5 -lX11
LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTLIB) $(X11LIB)
LDFLAGS =
.c.o:
cc -c $(CFLAGS) $(CDEBUGFLAGS) $(INCLUDES) $<
all:: $(PROGRAM) volume
$(PROGRAM):: $(OBJECTS)
cc -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES)
volume::
(cd help/ ; \
dthelptag $(HELPSRC);)
clean::
rm -f $(PROGRAM)
rm -f $(OBJECTS)
rm -f $(HELPOUT)

View File

@@ -0,0 +1,59 @@
# $XConsortium: Makefile.IBM /main/2 1996/05/13 11:31:00 drk $
##########################################################################
#
# Makefile for dthelpdemo
#
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
##########################################################################
#ifndef CDE_INSTALLATION_TOP
CDE_INSTALLATION_TOP = /usr/dt
#endif
PROGRAM = dthelpdemo
SOURCES = Main.c HelpCache.c HourGlass.c
OBJECTS = Main.o HelpCache.o HourGlass.o
HELPSRC = helpdemo.htg
HELPOUT = help/helpdemo.sdl \
help/helpdemo.err \
help/helpdemo.xrh
OPTIMIZEDFLAGS = -O
DTINCLUDE = -I$(CDE_INSTALLATION_TOP)/include
X11INCLUDE = -I/usr/include
EXTRA_INCLUDES =
INCLUDES = $(DTINCLUDE) $(X11INCLUDE) $(EXTRA_INCLUDES)
DTHELPLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtHelp
DTSVCLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtSvc
TTLIB = -L$(CDE_INSTALLATION_TOP)/lib -ltt
XMLIB = -L$(CDE_INSTALLATION_TOP)/lib -lXm
XTLIB = -L/usr/lib -lXt
X11LIB = -L/usr/lib -lX11
LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTLIB) $(X11LIB)
LDFLAGS =
.c.o:
cc -c $(OPTIMIZEDFLAGS) $(INCLUDES) $<
all:: $(PROGRAM) volume
$(PROGRAM):: $(OBJECTS)
cc -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES)
volume::
(cd help/ ; \
dthelptag $(HELPSRC);)
clean::
rm -f $(PROGRAM)
rm -f $(OBJECTS)
rm -f $(HELPOUT)

View File

@@ -0,0 +1,61 @@
# $XConsortium: Makefile.Sun /main/2 1996/05/13 11:31:16 drk $
##########################################################################
#
# Makefile for dthelpdemo
#
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
##########################################################################
#ifndef CDE_INSTALLATION_TOP
CDE_INSTALLATION_TOP = /usr/dt
#endif
PROGRAM = dthelpdemo
SOURCES = Main.c HelpCache.c HourGlass.c
OBJECTS = Main.o HelpCache.o HourGlass.o
HELPSRC = helpdemo.htg
HELPOUT = help/helpdemo.sdl \
help/helpdemo.err \
help/helpdemo.xrh
OPTIMIZEDFLAGS = -O
DTINCLUDE = -I$(CDE_INSTALLATION_TOP)/include
X11INCLUDE = -I/usr/openwin/include
INCLUDES = $(DTINCLUDE) $(X11INCLUDE)
DTSVCLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtSvc
DTHELPLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtHelp
TTLIB = -L$(CDE_INSTALLATION_TOP)/lib -ltt
XMLIB = -L$(CDE_INSTALLATION_TOP)/lib -lXm
XTLIB = -L/usr/openwin/lib -lXt
X11LIB = -L/usr/openwin/lib -lX11
CPLUSPLUS = -L/usr/lib -lC
EXTRA_LIBS = -L/usr/openwin/lib -lgen
LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTLIB) \
$(X11LIB) $(CPLUSPLUS) $(EXTRA_LIBS)
LDFLAGS = -R$(CDE_INSTALLATION_TOP)/lib:/usr/openwin/lib
.c.o:
cc -c $(OPTIMIZEDFLAGS) $(INCLUDES) $<
all:: $(PROGRAM) volume
$(PROGRAM):: $(OBJECTS)
cc -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES)
volume::
(cd help/ ; \
dthelptag $(HELPSRC);)
clean::
rm -f $(PROGRAM)
rm -f $(OBJECTS)
rm -f $(HELPOUT)

View File

@@ -0,0 +1,59 @@
# $XConsortium: Makefile.UXP /main/2 1996/05/13 11:31:31 drk $
##########################################################################
#
# Makefile for dthelpdemo
#
# (Fujitsu.patch applied)
#
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
##########################################################################
#ifndef CDE_INSTALLATION_TOP
CDE_INSTALLATION_TOP = /usr/dt
#endif
PROGRAM = dthelpdemo
SOURCES = Main.c HelpCache.c HourGlass.c
OBJECTS = Main.o HelpCache.o HourGlass.o
HELPSRC = helpdemo.htg
HELPOUT = help/helpdemo.sdl \
help/helpdemo.err \
help/helpdemo.xrh
OPTIMIZEDFLAGS = -O
DTINCLUDE = -I$(CDE_INSTALLATION_TOP)/include
INCLUDES = $(DTINCLUDE) $(X11INCLUDE)
DTSVCLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtSvc
DTHELPLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtHelp
TTLIB = -L$(CDE_INSTALLATION_TOP)/lib -ltt
XMLIB = -L$(CDE_INSTALLATION_TOP)/lib -lXm
XTLIB = -lXt
X11LIB = -lX11
CPLUSPLUS = -L/usr/lib -lC
EXTRA_LIBS = -lgen -lm
LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTLIB) \
$(X11LIB) $(CPLUSPLUS) $(EXTRA_LIBS)
.c.o:
cc -c $(OPTIMIZEDFLAGS) $(INCLUDES) $<
all:: $(PROGRAM) volume
$(PROGRAM):: $(OBJECTS)
cc -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES)
volume::
(cd help/ ; \
dthelptag $(HELPSRC);)
clean::
rm -f $(PROGRAM)
rm -f $(OBJECTS)
rm -f $(HELPOUT)

View File

@@ -0,0 +1,57 @@
/* $XConsortium: README /main/2 1996/07/15 14:11:16 drk $ */
dthelpdemo
----------
The demo illustrates the use of the CDE Help system.
Steps required to build and preview the dthelpdemo program:
1) Compile the dthelpdemo and sample help volume using the appropriate
Makefile for your platform:
a) Making both the dthelpdemo and help demo sample volume (helpdemo.sdl):
make -f Makefile.[SUN|HP|IBM]
b) Making only the dthelpdemo program:
make -f Makefile.[SUN|HP|IBM] dthelpdemo
c) Making only the dthelpdemo help volume (helpdemo.sdl):
make -f Makefile.[SUN|HP|IBM] volume
d) Cleaning all the generated files for dthelpdemo and the sample help
volume:
make -f Makefile.[SUN|HP|IBM] clean
2) Make sure the sample help volume "helpdemo.sdl" used by dthelpdemo is
accessable via the DTUSERHELPSEARCHPATH environment variable. To do
this use one of the supplied shell scripts:
. ./helpdemoHelpEnv.sh
or
source ./helpdemoHelpEnv.csh
3) Copy the Dthelpdemo to either $HOME or the default location for app-defaults
files on your system.
4) Run dthelpdemo:
dthelpdemo
5) To clean up all files generated by the build use:
make -f Makefile.[SUN|HP|IBM] clean

View File

@@ -0,0 +1,25 @@
# $XConsortium: Makefile /main/2 1996/05/13 11:31:48 drk $
# ###############################################
# Makefile for building the Help demo volume
#
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
#
# ###############################################
HELPSRC = helpdemo.htg
HELPVOL = helpdemo.sdl
HELPCHARSET = iso8859.1
all: $(HELPVOL)
$(HELPVOL): $(HELPSRC)
dthelptag $(HELPSRC)
# dthelptag -verbose -charset $(HELPCHARSET) $(HELPSRC)
clean:
dthelptag -clean $(HELPSRC)

View File

@@ -0,0 +1,25 @@
/* $XConsortium: Snapshot.bm /main/2 1995/07/17 14:05:27 drk $ */
#define snap_width 42
#define snap_height 42
static char snap_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x40, 0x20, 0x20, 0x00, 0x00, 0xfc,
0x80, 0x00, 0x10, 0x00, 0x00, 0xfc, 0x00, 0xf1, 0x08, 0x00, 0x00, 0xfc,
0x00, 0xfc, 0x03, 0x00, 0x00, 0xfc, 0x00, 0xfe, 0x07, 0x00, 0x00, 0xfc,
0x00, 0xfe, 0x07, 0x00, 0x00, 0xfc, 0x00, 0x9f, 0x0f, 0x00, 0x00, 0xfc,
0x68, 0x6f, 0x6f, 0x05, 0x00, 0xfc, 0x00, 0x6f, 0x0f, 0x00, 0x00, 0xfc,
0x00, 0x9f, 0x0f, 0x00, 0x00, 0xfc, 0x00, 0xfe, 0x07, 0x00, 0x00, 0xfc,
0x00, 0xfe, 0x07, 0x00, 0x00, 0xfc, 0x00, 0xfc, 0x03, 0x00, 0x00, 0xfc,
0x00, 0xf1, 0xf0, 0x00, 0x00, 0xfc, 0x80, 0x00, 0x18, 0x01, 0x00, 0xfc,
0x40, 0x90, 0xfc, 0x02, 0x00, 0xfc, 0x00, 0xac, 0x06, 0xe4, 0x02, 0xfc,
0x10, 0xfe, 0xff, 0xff, 0x07, 0xfc, 0x00, 0xfc, 0xff, 0xff, 0x07, 0xfc,
0x00, 0x80, 0xff, 0x33, 0x00, 0xfc, 0x00, 0x04, 0x07, 0x12, 0x02, 0xfc,
0x00, 0x00, 0xf3, 0x1c, 0x00, 0xfc, 0x00, 0x04, 0x09, 0x19, 0x02, 0xfc,
0x00, 0x00, 0x35, 0x12, 0x00, 0xfc, 0x00, 0x04, 0x15, 0x12, 0x02, 0xfc,
0x00, 0x00, 0x05, 0x12, 0x00, 0xfc, 0x00, 0x04, 0x05, 0x12, 0x02, 0xfc,
0x00, 0x00, 0x09, 0x11, 0x00, 0xfc, 0x00, 0x04, 0xf3, 0x10, 0x02, 0xfc,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0xfe, 0x0f, 0xfc, 0x03, 0xfc,
0x00, 0x54, 0x55, 0x55, 0x05, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc};

Binary file not shown.

View File

@@ -0,0 +1,46 @@
/* XPM */
/* $XConsortium: cauticon.pm /main/1 1995/11/08 09:19:51 rswiston $ */
/*********************************************************************
* (c) Copyright 1993, 1994 Hewlett-Packard Company
* (c) Copyright 1993, 1994 International Business Machines Corp.
* (c) Copyright 1993, 1994 Sun Microsystems, Inc.
* (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
* Novell, Inc.
**********************************************************************/
static char * cauticon [] = {
/* width height ncolors cpp [x_hot y_hot] */
"31 28 4 1 0 0",
/* colors */
" s none m none c none",
". s iconColor1 m black c black",
"X s iconColor5 m black c blue",
"o s iconColor6 m white c yellow",
/* pixels */
" ..... ",
" .XXXXX. ",
" .XXoooXX. ",
" .XXoooooXX. ",
" .XoooooooX. ",
" .XXoooooooXX. ",
" .XXoooXXXoooXX. ",
" .XoooXXXXXoooX. ",
" .XXoooXXXXXoooXX. ",
" .XXooooXXXXXooooXX. ",
" .XoooooXXXXXoooooX. ",
" .XXoooooXXXXXoooooXX. ",
" .XXooooooXXXXXooooooXX. ",
" .XooooooooXXXooooooooX. ",
" .XXooooooooXXXooooooooXX. ",
" .XXoooooooooXXXoooooooooXX. ",
" .XooooooooooXXXooooooooooX. ",
" .XXooooooooooXXXooooooooooXX. ",
".XXoooooooooooooooooooooooooX. ",
".XXoooooooooooooooooooooooooXX.",
".XooooooooooooXXXooooooooooooX.",
".XoooooooooooXXXXXoooooooooooX.",
".XoooooooooooXXXXXoooooooooooX.",
".XXoooooooooooXXXoooooooooooXX.",
" .XoooooooooooooooooooooooooX. ",
" .XXXoooooooooooooooooooooXXX. ",
" ..XXXXXXXXXXXXXXXXXXXXXXX.. ",
" ....................... "};

Binary file not shown.

View File

@@ -0,0 +1,87 @@
/* XPM */
/* $XConsortium: clouds.xpm /main/3 1995/07/18 17:14:10 drk $ */
static char * clouds_xpm[] = {
/* width height ncolors cpp [x_hot y_hot] */
"296 73 7 1 -1 -1",
/* colors */
" s iconColor2 m white c white",
". s iconColor1 m black c black",
"X s iconColor3 m black c red",
"o s iconColor5 m black c blue",
"O s iconColor8 m black c magenta",
"+ s iconGray6 m black c #646464646464",
"@ s iconColor6 m white c yellow",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ......... ",
" ... .... ",
" .. ... ...... ",
" .. ... ... .... ........ ",
" . .. .. ... .. ... ",
" . .. . .. .. ...... ........ ",
" ....... ...... . . .. .. ... ... .... .......... ",
" ... .. .. ... . . .. . .. .. ... ... .... ......... ",
" .. .. . . .. . . .. ....... .. .. .. ... .. ... ",
" . . . .. . . .. ... . . .. . ... .. ... ",
" . .. .. . . .. .. . . .. . ... .. ",
" . . .. ... .. . . . .. . .. .. ",
" . .. . .. .. . .. . .. . . .. . ",
" . . .. . ... . .. . .. .. ",
" . .. ... . ...... . .... ....... . .. . . ",
" . . .. . ... . . ... .. ... .. . . ",
" . . . ... . .. . . .. . . .. . . ",
" .. . .... . .. . . .. . . .. . . ",
" . . . . . ... . . . .. . . .. . . ... . . ",
" .. .. .. .. . . .. . . ..... . . ",
" .. . . . .. ... . . .. . .. .. . . .. ... . . ",
" ... . .. .... .. .. . .. .. . . .. ... . . ",
" ..... . . . ... . ... . . .. . . .. . . . .. . . ",
" ...... . .. . ... .. .. .. . . . . .. . . ",
" . ........ . . .. . . . . ... . .. . .. .. .. . . ",
" . .... .. .. . .. .... .. . . . ... .. . . . ...... .. . . ",
" . . .. . . . .... . ....... .. .. ... .. . . ",
" . .. .. . ... .. . . . . . . . . ... ...... . ... . ... . . ",
" . .. . . . ..... . . . ... . .. ... .. . ... ........... . .. . . ",
" . . ..... .... . . .. ..... . ... . . . ... . . ..... ...... . . . . . .. . . . .... . . ",
" . .. . . . . ................. .. . . . ... . ............ ... ..... . ..... .. ... .. ",
" . ... ... .......... . . .. . .......... . . . . .............. . ...... . . . . . . ........ . . ..... . ",
" . .. . . .... .. . . . .. . . . ... . . ... .............. . . ......... .......... ............... ",
" . .... ...... . . ... . . . ..... . . ..... . . . ............................ ......... ",
" .............. .. . . . . . . . .... . . ..... ...... . . . . ................ . ",
" ........ . ... .... ...... . . . ............. . . . . . . . ",
" . . ..... . .................. . . ....... . . . . . . . ",
" . . . ............... ........ . . . . . . . . . . . ",
" . . . . . ......... . . . . . . . . . . . . ",
" . . . . . . . . . . . . . . . ",
" . . . . . . . . . . . . . ",
" . . . . . . . . . . . . . ",
" . . . . . . . . . . . . . . ",
" . . . . . . . . . . . . . ",
" . . . . . . . . . . . ",
" XXXXXXXXXXXXXXXXX . . . . . . . . . . ",
" X o oOo X . . . . . . . . . ",
" X o+ Oo X . . . . . . . ",
" X o++ o X . . . . . . . ",
" X o+++ X . . . . ",
" X o++++ X . . ",
" Xooo+++++ o o X . . . . ",
" Xo@@+++++ O O X . . . . . ",
" Xo@@+++++ oOoOoOX . . . . ",
" Xo@@+++++ O O X . . . . ",
" Xo@@+++++ o o X . . ",
" Xooo+++++ X . ",
" X o++++ X . ",
" X o+++ o X ",
" X o++ Oo X ",
" X o+ oOo X ",
" X o oOo X ",
" XXXXXXXXXXXXXXXXX ",
" "};

View File

@@ -0,0 +1,79 @@
/* XPM */
/* $XConsortium: helpShelf.pm /main/3 1995/07/18 17:14:19 drk $ */
/*********************************************************************
* (c) Copyright 1993, 1994 Hewlett-Packard Company
* (c) Copyright 1993, 1994 International Business Machines Corp.
* (c) Copyright 1993, 1994 Sun Microsystems, Inc.
* (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
* Novell, Inc.
**********************************************************************/
static char * helpmgr [] = {
/* width height ncolors cpp [x_hot y_hot] */
"48 48 16 1 0 0",
/* colors */
" s none m none c none",
". s bottomShadowColor m black c #636363636363",
"X s iconGray5 m black c #737373737373",
"o s iconGray3 m white c #adadadadadad",
"O s iconGray2 m white c #bdbdbdbdbdbd",
"+ s iconGray4 m white c #949494949494",
"@ s iconGray7 m black c #424242424242",
"# s topShadowColor m white c #bdbdbdbdbdbd",
"$ s iconGray6 m black c #636363636363",
"% s iconColor7 m white c cyan",
"& s iconGray8 m black c #212121212121",
"* s iconColor3 m black c red",
"= s selectColor m white c #737373737373",
"- s iconGray1 m white c #dededededede",
"; s iconColor5 m black c blue",
": s iconColor2 m white c white",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ......... ",
" .XoO++X@# ",
" .$o%o%@@......... $OOooooX& ",
" ......&$%+%X*@&++++++$@.....&$o++++X$&= ",
" .---Oo&$X%X*@@&+X$XXX$@&o;o;&$OXO+o+X&== ",
" .-Oo+X&$%+%X*@&+XXXXX$@&;o@$&$oX++XX@&= ",
" .-Oo+X&$X%X*@@&+XXXXX$@&@$X;&$OXo+XXX&== ",
" .-+X$X&$%+%X*@&+XXXXX$@&;o@$&$oX++XXX&= ",
" .-+X$X&$X%X*@@&:::::::@&@$@;&$OX+@XXX&== ",
" .-Oo+X&$%@%&*@:::::::::&;o@$&$oX++XXX&= ",
" .-+X$X&$X%&*@::::@@@::::@$@;&$OX+$XXX&== ",
" .-+o$X&$%+%X*:::@@XXX:::@o@$&$oX+@XXX&= ",
" .-Oo+X&$X%X*@:::@XXXX:::@$@;&$OX+$XXX&== ",
" .-+X$X&$%+%X*:::@XXXX:::@o@$&$oX+@XXX&= ",
" .-Oo+X&$X%&*@@&@XXXX::::@$X;&$OX+$XXX&== ",
" .-+X$X&$%@%&*@&+XXX::::&;o@$&$oX++XXX&= ",
" .-+o+X&$X%X*@@&+XX::::@&@$X;&$OX++XXX&== ",
" .-+X$X&$%@%&*@&+X::::$@&;o@$&$oX+$XXX&= ",
" .-Oo+X&$X%&*@@&+X:::@@@&@$X;&$oX+XXXX&== ",
" .-Oo+X&$%+%X*@&+X:::@$@&;o@$&$oX++XXX&= ",
" .-Oo+X&$X%X*@@&+XX@@@$@&@$X;&$oX++XXX&== ",
" .-Oo+X&$%+%X*@&+X:::X$@&;o@$&$oX++XXX&= ",
" .-Oo+X&$X%X*@@&+$:::@$@&@$X;&$oX++XXX&== ",
" .-Oo+X&$%+%X*@&+X:::@$@&;o@$&$oX++XXX&= ",
" .-Oo+X&$X%X*@@&+$$@@@$@&@$X;&$oX+@XXX&== ",
" .-oX$X&$%+%X*@&+XXXXX$@&;o@$&$oX++XXX&= ",
" .-Oo+X&$X%X*@@&+$X@@@$@&@$X;&$oX++XXX&== ",
" .-Oo+X&$%+%X*@&+XXXXX$@&;o@$&$oX++XXX&= ",
" .-Oo+X&$X%X*@@&+XXXXX$@&@$X;&$o$++XXX&== ",
" .OOo+X&$%+%X*@&+XXXXX$@&;o@$&$oX++XXX&= ",
" .oo+XX&$XXX$$@&+$XX$@$@&@$@;&$o$XXX$$&== ",
" .&&&&&&&&&&&&&&&&&&&&&&&&&&&& o&&&&&&&= ",
" .############################## == ",
" ======= ",
" = = = = ",
" ",
" ",
" ",
" "};

View File

@@ -0,0 +1,133 @@
/* $XConsortium: integral.bm /main/2 1995/07/17 14:05:42 drk $ */
#define integral_width 214
#define integral_height 57
static char integral_bits[] = {
0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e,
0x00, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01,
0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
0x00, 0x03, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01,
0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x80, 0x07,
0x00, 0x80, 0x01, 0x80, 0x03, 0x00, 0x00, 0x03, 0x00, 0x02, 0x00, 0x00,
0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00,
0x00, 0xc0, 0x0f, 0x00, 0x80, 0x01, 0x00, 0x03, 0x00, 0x00, 0x03, 0x00,
0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x71, 0x00, 0x00, 0x00, 0x00, 0x00,
0x20, 0x00, 0x00, 0x00, 0x40, 0x1c, 0x00, 0x80, 0x01, 0x00, 0x01, 0x00,
0x00, 0x03, 0xe0, 0xe3, 0x18, 0x00, 0x00, 0x00, 0x80, 0x60, 0x00, 0x00,
0x00, 0x80, 0x01, 0x30, 0x00, 0x00, 0x00, 0x20, 0x18, 0x00, 0x80, 0x01,
0x00, 0x01, 0x00, 0x00, 0x03, 0x90, 0x83, 0x15, 0x00, 0x00, 0x00, 0x80,
0x60, 0xc0, 0xc1, 0x31, 0x80, 0x01, 0xf0, 0x03, 0x00, 0x00, 0x20, 0x18,
0x70, 0x80, 0x01, 0xf0, 0x71, 0x0c, 0x00, 0x03, 0x08, 0x81, 0x03, 0x00,
0x00, 0x00, 0x00, 0x60, 0x30, 0x03, 0x2b, 0x80, 0x01, 0x30, 0x06, 0x00,
0x00, 0x00, 0x18, 0xcc, 0x80, 0x01, 0xc8, 0xc1, 0x0a, 0x00, 0x03, 0x0c,
0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x30, 0x18, 0x03, 0x07, 0x80, 0x01,
0x18, 0x06, 0x00, 0x00, 0x00, 0x0c, 0xc6, 0x80, 0x01, 0x84, 0xc0, 0x01,
0x00, 0x03, 0x86, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00,
0x02, 0xfc, 0x3f, 0x18, 0x06, 0x00, 0x00, 0x00, 0x04, 0x02, 0x80, 0x01,
0x86, 0x80, 0x00, 0x00, 0x03, 0x86, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00,
0x08, 0x0c, 0x00, 0x02, 0xfc, 0x3f, 0x08, 0x06, 0x00, 0x00, 0x00, 0x02,
0x03, 0x80, 0x01, 0xc3, 0x80, 0x00, 0x00, 0x03, 0xc6, 0x40, 0x03, 0x00,
0x00, 0x00, 0x00, 0x04, 0x0c, 0x00, 0x03, 0x80, 0x01, 0x08, 0x02, 0x00,
0x00, 0x00, 0x01, 0x03, 0x80, 0x01, 0x43, 0xc0, 0x00, 0x00, 0x03, 0xe6,
0x4a, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x82, 0x8c, 0x80, 0x06, 0x80, 0x01,
0x0c, 0x03, 0x00, 0x00, 0x80, 0x20, 0x23, 0x80, 0x01, 0x63, 0xa0, 0x01,
0x00, 0x03, 0xdc, 0x39, 0x06, 0x00, 0x00, 0x00, 0x00, 0xff, 0x8c, 0x90,
0x16, 0x80, 0x01, 0x8c, 0x01, 0x00, 0x00, 0xc0, 0x3f, 0x23, 0x80, 0x01,
0x73, 0xa5, 0x05, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
0x7f, 0x78, 0x70, 0x0c, 0x80, 0x01, 0x7c, 0x00, 0x80, 0x01, 0xe0, 0x1f,
0x1e, 0x80, 0x01, 0xee, 0x1c, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
0x01, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
0x00, 0x00, 0x00, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x80, 0x01,
0x00, 0x00, 0x00, 0x00, 0x03, 0xfe, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x80,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xfc, 0x3f, 0xf0, 0xff,
0xff, 0x81, 0x01, 0xff, 0xff, 0x0f, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
0x3f, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
0x00, 0x00, 0x00, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x0e, 0x00, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x80, 0x01,
0xe0, 0xe7, 0x01, 0x00, 0x03, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xe0, 0xe7, 0x01, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00,
0x00, 0x80, 0x01, 0x80, 0xc1, 0x00, 0x00, 0x03, 0x00, 0x00, 0x11, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc1, 0x00, 0x00, 0x00, 0x80,
0x01, 0x00, 0xe0, 0x02, 0x80, 0x01, 0x80, 0x61, 0x00, 0x00, 0x03, 0x00,
0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x61, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, 0x80, 0x01, 0x00, 0x33, 0x00,
0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x03, 0x80, 0x01,
0x00, 0x1b, 0x00, 0x00, 0x03, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xe0, 0x02, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c,
0x01, 0x80, 0x01, 0x00, 0x0e, 0x00, 0x00, 0x03, 0x00, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, 0x0e, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x06, 0x01, 0x80, 0x01, 0x00, 0x06, 0x00, 0x00, 0x03, 0xfc,
0x3c, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x03, 0x06, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x86, 0x01, 0x80, 0x01, 0x00, 0x0f, 0x00,
0x00, 0x03, 0x30, 0x18, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c,
0x01, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x00, 0x80, 0x01,
0x80, 0x0d, 0x00, 0x00, 0x03, 0x30, 0x0c, 0x3f, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x06, 0x81, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6,
0x00, 0x80, 0x01, 0xc0, 0x1c, 0x00, 0x00, 0x03, 0x60, 0x06, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x86, 0xc1, 0x1c, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xdc, 0x00, 0x80, 0x01, 0x40, 0x18, 0x00, 0x00, 0x03, 0x60,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x40, 0x18, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x80, 0x01, 0x30, 0x38, 0x00,
0x00, 0x03, 0xc0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6,
0x30, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x80, 0x01,
0x78, 0x7c, 0x00, 0x00, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xdc, 0x78, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xf0, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0xb0,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
0x00, 0x03, 0x98, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01,
0x00, 0x00, 0x00, 0x00, 0x03, 0x08, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x07, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x8f,
0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01,
0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00,
0x18, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x00,
0x00, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00};

View File

@@ -0,0 +1,49 @@
/* $XConsortium: noteicon.pm /main/1 1995/11/08 09:20:03 rswiston $ */
/* XPM */
/*********************************************************************
* (c) Copyright 1993, 1994 Hewlett-Packard Company
* (c) Copyright 1993, 1994 International Business Machines Corp.
* (c) Copyright 1993, 1994 Sun Microsystems, Inc.
* (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
* Novell, Inc.
**********************************************************************/
static char * noteicon [] = {
/* width height ncolors cpp [x_hot y_hot] */
"32 32 3 1 0 0",
/* colors */
" s none m none c none",
". s iconColor5 m black c blue",
"X s iconGray2 m white c #bdbdbdbdbdbd",
/* pixels */
" ........ ",
" ...XXXXXXXX... ",
" ..XXXXXXXXXXXXXX.. ",
" .XXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXX...XXXXXXXXXX. ",
" .XXXXXXXXX.....XXXXXXXXXX. ",
" .XXXXXXXXXX.....XXXXXXXXXXX. ",
" .XXXXXXXXXX.....XXXXXXXXXXX. ",
" .XXXXXXXXXXXX...XXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
".XXXXXXXXXXXXX....XXXXXXXXXXXXX.",
".XXXXXXXXXXX......XXXXXXXXXXXXX.",
".XXXXXXXXXXX......XXXXXXXXXXXXX.",
".XXXXXXXXXXX......XXXXXXXXXXXXX.",
".XXXXXXXXXXXXX....XXXXXXXXXXXXX.",
".XXXXXXXXXXXXX....XXXXXXXXXXXXX.",
".XXXXXXXXXXXXX....XXXXXXXXXXXXX.",
".XXXXXXXXXXXXX....XXXXXXXXXXXXX.",
" .XXXXXXXXXXXX....XXXXXXXXXXXX. ",
" .XXXXXXXXXXXX....XXXXXXXXXXXX. ",
" .XXXXXXXXXXXX....XXXXXXXXXXXX. ",
" .XXXXXXXXX........XXXXXXXXX. ",
" .XXXXXXXXX........XXXXXXXXX. ",
" .XXXXXXXX........XXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXXXX. ",
" .XXXXXXXXXXXXXXXXXX. ",
" ..XXXXXXXXXXXXXX.. ",
" ...XXXXXXXX... ",
" ........ "};

View File

@@ -0,0 +1,147 @@
/* XPM */
/* $XConsortium: rooster.xpm /main/3 1995/07/18 17:14:28 drk $ */
static char * rooster_xpm[] = {
/* width height ncolors cpp [x_hot y_hot] */
"148 133 7 1 -1 -1",
/* colors */
" s iconColor2 m white c white",
". s iconColor3 m black c red",
"X s iconColor5 m black c blue",
"o s iconColor8 m black c magenta",
"O s iconGray6 m black c #646464646464",
"+ s iconColor6 m white c yellow",
"@ s iconColor1 m black c black",
/* pixels */
" ",
" ",
" ",
" ................. ",
" . X XoX . ",
" . XO oX . ",
" . XOO X . ",
" . XOOO . ",
" . XOOOO . ",
" .XXXOOOOO X X . ",
" .X++OOOOO o o . ",
" .X++OOOOO XoXoXo. ",
" .X++OOOOO o o . ",
" .X++OOOOO X X . ",
" .XXXOOOOO . ",
" . XOOOO . ",
" . XOOO X . ",
" . XOO oX . ",
" . XO XoX . ",
" . X XoX . @@@ ",
" ................. @@@ @@@ ",
" @@@@@@@@ @ @@@ @ ",
" @@@ @ @ @@@@ @@ @@@@@ ",
" @@@@@ @@ @ @ @ @@ @@ @@@ @@ @@ ",
" @@@@ @ @@@@ @@@@@@@@ @ @ @@ @ @ @@@ @@@@ ",
" @@@ @ @ @@@@@@@@@@@@@@@ @ @ @@ @@ @@@ @@@ @@ ",
" @@ @ @ @@@@@@ @@@ @@@ @ @ @ @@ @ @ @@@ @ ",
" @@@@@@@@@@@@@ @@@ @ @ @@@@ @ @@ @ @ @ @@@ @@ ",
" @@@ @@@ @@ @@ @@ @ @ @@ @ @ @@@ @ @ ",
" @@@ @ @@@@@@@@@@@@@@ @@ @ @ @@ @ @@@ @@@@@ ",
" @@ @@@@@@ @ @ @ @ @ @@@ @@@ @@@ @@ @ @ @@@ @@ ",
" @@@ @@@@@ @ @ @ @ @ @ @ @@@@ @@ @ @@ @@@ @ @ @@@ @ ",
" @@ @@@ @ @ @ @ @ @ @ @ @ @ @@ @@ @ @@ @@@ @ @ @ @@ ",
" @ @@@@ @ @ @ @ @ @ @ @ @ @ @ @@ @@ @ @ @@ @ @ @ @ ",
" @@ @@ @ @ @ @@@@@@@@@@@ @ @ @ @ @@@ @@@ @@ @@@@@ @ @@ ",
" @@ @@ @ @ @@@ @@@@@@ @@@@@@ @ @ @@@ @@ @ @ @@@@@@@@ @ @ @ ",
" @ @@ @ @ @@@ @@@ @@@ @ @@@@@ @ @@@ @ @@@ @@@@@ @ @@@@ @@ ",
" @@ @ @ @ @@@ @@ @@ @ @@@@ @ @@@ @@ @ @@@@ @ @ @@ @ @@ ",
" @@ @@@ @ @ @ @@@ @@@@@@@ @ @@@ @ @@@ @@ @ @ @@@@@@@@@@@@@ @ @@@ @ @@@@@ ",
" @ @@ @ @ @@ @@ @@@@ @@@ @ @@@ @ @@ @@ @ @@ @ @ @ @ @ @@ @ @@@@@ ",
" @@ @@ @ @ @@ @@ @@@ @@@@ @ @@ @@@@ @ @@@ @@ @ @ @ @ @@ @@ @ @@ ",
" @ @ @ @ @@@ @ @@ @@@@ @@@@@ @@@@@@@ @@@ @ @ @ @ @ @@@@ @ @ ",
" @@ @@ @ @ @ @@@@ @@@@@@@@@@@@@@@@@ @@@@@@@ @@@@@ @@ @ @ @ @ @ @@@ @@ ",
" @ @ @ @ @@@ @ @@@@@ @ @ @ @@@ @@ @@@@ @@@@@ @ @@ @@ @ @ @ @ @@@@@ @@ ",
" @@ @ @@ @@@@ @ @ @ @ @ @ @@ @@@@ @ @ @@@ @@ @ @ @ @ @@ @@ @@ @ ",
" @@ @ @ @ @@@@@ @ @ @ @ @ @ @ @@@@ @@@@ @@@@@@ @@@ @@@ @ @ @ @ @ @@@@@ @ ",
" @ @ @ @@ @ @ @ @@@@@@@@@@@@@@@ @@@@@@@@@@@@ @@@@@@@@@@@@ @@@@@@ @ @ @ @ @@ @@@ ",
" @@@ @ @ @ @@@ @ @@ @@@ @@ @ @@@@@ @@ @ @@@ @@@@@ @ @ @ @ @ @ @@ @@ ",
" @@@@@ @ @@@@@ @@@@@@ @ @ @@@ @@@@ @@@@@@@@@@@ @ @@ @ @ @ @@ @@@ @@@@ @ ",
" @ @@ @ @ @@@ @ @@ @@@@@@ @@@@ @@ @@ @ @ @ @ @ @ @@@@@ @@@@@@ ",
" @@@@@@ @ @@@@@ @@ @@@@@@@ @ @@ @@@@@ @@ @ @@@@@@ @ @ @ @ @ @ @ @ @ ",
" @@ @@@@ @ @@@@@@@@@ @@@@ @ @ @@@ @@ @@@@ @@ @ @ @ @ @ @ @ @ @ @ ",
" @ @@@@ @ @ @@@@@ @@@@@@@ @@ @@ @@@@ @@ @@ @@@@ @@ @@ @ @ @ @ @ @ @ @ @ @ ",
" @@ @@@@ @ @@@@@ @@@@@@@@@ @@ @ @@@ @@@ @@ @@ @@ @@ @@ @@ @ @ @ @ @ @ @ @ @ ",
" @ @ @@ @ @ @@@ @@@@ @@@ @ @@@@@@ @@ @@ @@ @@@@ @ @ @ @ @ @ @@ @ @ @ ",
" @@ @@@@ @ @ @@ @@ @ @@@@@@ @@ @ @@ @@@ @@ @ @@@@ @ @ @ @ @ @@ @ @@@@ ",
" @ @@@@@@ @ @@@ @ @@ @@ @@@@ @ @ @@@@ @@ @ @ @ @ @@ @ @ @ @ @@@@@@ ",
" @ @@@@@@ @ @@@@@ @ @ @ @@@ @@ @ @@ @@@ @ @@@ @@@ @ @ @ @ @ @@ @ ",
" @@ @@@@ @ @ @@@ @@ @ @@@@@@@ @@ @ @@@@@@ @ @ @ @ @@ @ @ @ @ @@ ",
" @ @ @@@@ @ @@@@@ @ @ @ @ @@@@@ @ @ @@@@ @ @@ @@ @@@@@ @ @ @ @ @ @ ",
" @@ @@@@@@ @ @@@ @@ @ @ @@@@@ @ @@ @ @@@@ @ @ @ @@@@@ @ @ @ @ @ ",
" @@@@@@@@@@ @ @@@ @ @ @ @ @@@ @@@@ @ @@@ @ @ @ @ @@@ @ @@ @ @ @ ",
" @ @@ @@@ @ @ @@@@ @ @ @@@ @ @ @@ @ @@ @ @@ @ @@ @ @@ @ @ ",
" @@@ @ @@@ @ @@@@@@ @@@ @@@@@@@@@@ @ @@@ @ @@ @ @@ @ @@@@@ @@ @@ ",
" @@ @ @@@@@ @ @@@@@ @@ @@@@ @@@@@@@@ @ @@ @@ @ @ @ @@@@@@@ @@@@@ ",
" @ @ @@@@@@@ @ @@@@ @@ @ @ @@@@ @ @@@ @ @ @@ @@@@ @ @ @@@@ ",
" @@ @@@@@@@@@ @ @@@ @@ @@@@@@ @ @@@ @ @@@ @ @ @@@ @@@ @@ @@@@ @@ ",
" @ @ @@ @@@@@@ @@@@@ @@@ @ @@@ @ @ @ @@@ @ @@@ @@@@@ @ @ @ @ ",
" @ @ @@ @ @@ @@ @ @@@ @@ @@@@ @@@ @ @ @@ @ @@@ @ @ @ @ @@ ",
" @@ @@@ @@ @ @@@ @ @@ @ @@@@ @@@ @ @ @@@@ @@ @@ @ @ @ @ @@ ",
" @ @@@ @ @@ @ @@ @ @@@@ @ @@ @ @ @ @@ @ @ @ @ @ @@ ",
" @@@ @@ @@ @ @@ @@ @@@@ @@@@ @ @ @ @@ @ @ @ @ @ @@ ",
" @@ @@ @ @@@ @@ @ @@@@ @ @ @ @@ @@ @ @ @ @ @@ ",
" @ @@@ @@ @@ @@@@ @@@ @ @@@@@@@@@ @ @ @ @ @@@ ",
" @@@@@ @@ @ @ @@ @@ @@ @ @ @ @ @ @ @ @ @ ",
" @ @@ @ @ @ @ @@ @@@ @ @ @@@@ @ @ @ @@ @ @ @ @ @ ",
" @@@@ @ @@ @@ @ @@ @ @@@@@@ @ @ @ @@@ @ @ @ @@@ ",
" @ @@ @@ @ @@ @ @@ @ @@@@@@ @ @ @ @@@ @ @ @ @@@ ",
" @ @@ @ @ @ @@@@@ @@@ @@ @@@@ @@@@@@@@@@@ ",
" @@@@ @ @@ @ @@ @@ @ @@@@ @@@@@@@ ",
" @ @@ @ @@ @@@ @@ @ @@@@@@@@@@@@@ ",
" @@@@ @ @@ @@ @@ @ @@@@@@@@@@ ",
" @@@ @@@@ @@ @@ @@@@@ @ @ ",
" @@@ @@ @@ @@ @@ @ @@@ ",
" @@@ @@ @@ @@ @ @ ",
" @ @@ @@@@@@@ @@@@@@@@@@@@@@ @@ ",
" @@@ @@@ @@ @@ @@ @@@ ",
" @@@ @@@@ @ @@ @@@ @@ ",
" @@ @@@@@ @@ @@@ @@@@ @@ ",
" @ @@@@@@ @@@ @@ @@ @@ ",
" @@@@ @@ @ @ @@ @ @@ @@ ",
" @@@@ @@ @@ @@@@ @ @ @@@@@@@ @@ ",
" @@@@ @@@@@@ @ @@ @@@@@@@@@ @@@ @ ",
" @@@ @ @ @@ @ @ @ @@ @ @@@ @@ ",
" @@@ @ @ @@ @ @ @ @ @ @ @ @@ @ ",
" @@@@ @ @ @ @@@@ @@@ @ @ @@ @@@ ",
" @@@ @ @ @@@@ @@@ @ @ @ @ @ ",
" @@@ @@ @ @ @ @ @ @ @ @ @@ ",
" @@@ @@@@ @ @ @@@@ @ @ @ @ @ ",
" @@@ @ @ @ @ @ @ @ @ @ @ @@ @ ",
" @@@@@ @@ @@ @ @ @ @ @ @ @ @ ",
" @@@ @ @@ @@ @ @ @@ @ @ @ @ @ ",
" @@@ @@@@ @ @ @ @ @@ @ @ @@ @ @ ",
" @@@@@@@@ @ @ @ @ @@ @ @ @ @@ @ ",
" @@@@@@@@ @ @ @ @ @ @ @ @@ @ @ ",
" @@@ @ @ @@@ @ @@ @ @ @ @@@@@ ",
" @@@ @@@@ @ @ @@ @ @ @ @@@@ ",
" @@@@ @@@@ @@ @ @ @ @ @@@ ",
" @@@@@@@ @ @ @@ @ @ @ @@ @@ ",
" @@@ @@ @ @ @@ @ @ @@ @@ @@ ",
" @@@ @ @ @ @ @@@ @ @ @@ @ @@ ",
" @@@ @@ @ @ @@@ @ @ @ @ @@ ",
" @@@ @ @ @@ @@@ @ @ @ @ @@ ",
" @@ @ @@ @@ @@@ @ @ @@@ @ @ @@ ",
" @@ @ @@ @@ @@@ @ @ @@@ @ @@ @@ ",
" @@@ @@@ @@ @@@ @ @ @@@ @@ @ @@ ",
" @ @ @ @@ @@ @ @ @@@ @ @ @ ",
" @ @ @ @@ @@ @ @ @@@ @ @@ @ ",
" @@ @@ @ @ @ @ @@ @ @ @ ",
" @@@@ @ @ @@ @ @ @ @ ",
" @@@@ @@ @ @ @ @@ @ ",
" @@@@ @@ @@@ @ ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "};

View File

@@ -0,0 +1,35 @@
/* XPM */
/* $XConsortium: speaker.pm /main/3 1995/07/18 17:14:36 drk $ */
static char * speaker_pm[] = {
/* width height ncolors cpp [x_hot y_hot] */
"22 22 6 1 0 0",
/* colors */
" s none m none c none",
". s iconColor3 m black c red",
"X s iconColor5 m black c blue",
"o s iconColor8 m black c magenta",
"O s bottomShadowColor m black c #636363636363",
"+ s iconColor6 m white c yellow",
/* pixels */
" ",
" ",
" ................. ",
" . X XoX . ",
" . XO oX . ",
" . XOO X . ",
" . XOOO . ",
" . XOOOO . ",
" .XXXOOOOO X X . ",
" .X++OOOOO o o . ",
" .X++OOOOO XoXoXo. ",
" .X++OOOOO o o . ",
" .X++OOOOO X X . ",
" .XXXOOOOO . ",
" . XOOOO . ",
" . XOOO X . ",
" . XOO oX . ",
" . XO XoX . ",
" . X XoX . ",
" ................. ",
" ",
" "};

Binary file not shown.

View File

@@ -0,0 +1,49 @@
/* $XConsortium: warnicon.pm /main/1 1995/11/08 09:20:13 rswiston $ */
/* XPM */
/*********************************************************************
* (c) Copyright 1993, 1994 Hewlett-Packard Company
* (c) Copyright 1993, 1994 International Business Machines Corp.
* (c) Copyright 1993, 1994 Sun Microsystems, Inc.
* (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
* Novell, Inc.
**********************************************************************/
static char * warnicon [] = {
/* width height ncolors cpp [x_hot y_hot] */
"31 31 4 1 0 0",
/* colors */
" s none m none c none",
". s iconColor1 m black c black",
"X s iconColor3 m black c red",
"o s iconColor6 m white c yellow",
/* pixels */
" ..... X ",
" .ooooo. XXX ",
" .ooXXXoo. XXXX ",
" .ooXXXXXoo. XXXXXXX ",
" .oXXXXXXXo. XXXXXXX ",
" .ooXXXXXXXooXXXXXXX ",
" .ooXXXXXXXXXoXXXXXX ",
" .oXXXXXXXXXoXXXXX ",
" .ooXXXXXXXXoooXX ",
" .ooXXXXXXXXoooooXXX ",
" .oXXXXXXXXooooooXoX ",
" .ooXXXXXXXooooooXXoo. ",
" .ooXXXXXXXooooooXXXXoo. ",
" .oXXXXXXXooooooXXXXXXo. ",
" .ooXXXXXXooooooXXXXXXXoo. ",
" .ooXXXXXXXXXoooXXXXXXXXXoo. ",
" .oXXXXXXXXXXooooXXXXXXXXXo. ",
" .ooXXXXXXXXXooooooXXXXXXXXoo. ",
".ooXXXXXXXXXoooooXXXXXXXXXXXo. ",
".ooXXXXXXXXoooooXXXXXXXXXXXXoo.",
".oXXXXXXXXooooXXXXXXXXXXXXXXXo.",
".oXXXXXXXXoooXXXXXXXXXXXXXXXXo.",
".oXXXXXXXoooXXXXXXXXXXXXXXXXXo.",
".ooXXXXXoooooXXXXXXXXXXXXXXXoo.",
"..oXXXXooooXXXXXXXXXXXXXXXXXo. ",
" .oooooooXXXXXXXXXXXXXXXXXooo. ",
" ..oXXXooooooooooooooooooo.. ",
" XXXX.................... ",
" XXX ",
" XX ",
" X "};

Binary file not shown.

View File

@@ -0,0 +1,852 @@
<!entity HELPlogo FILE "helpShelf.pm">
<!entity SnapshotIcon FILE "Snapshot.xwd">
<!entity SoundIcon FILE "speaker.pm">
<!entity head-down FILE "head-down.xwd">
<!entity sunset FILE "sunset.xwd">
<!entity tribe FILE "tribe.xwd">
<!entity dead-jim FILE "deadjim.xwd">
<!entity computer-bee FILE "bee.xwd">
<!entity bugs-bunny FILE "bugs.bunny.xwd">
<!entity rooster FILE "rooster.xpm">
<!entity clouds FILE "clouds.xpm">
<!entity space-shuttle FILE "shuttle2.xwd">
<!entity integral FILE "integral.bm">
<!entity snapshot FILE "Snapshot.bm">
<!entity clock FILE "clock.xwd">
<!entity xload FILE "xload.xwd">
<!entity ApplicationWithHelp FILE "AppWithHelp.xwd">
<!entity QuickHelpModel FILE "QuickHelp.xwd">
<!entity GeneralHelpModel FILE "GeneralHelp.xwd">
<!entity HELPICONENT FILE "helpicon.ent">
&HELPICONENT;
<!entity HELPLANGENT FILE "helplang.ent">
&HELPLANGENT;
<!entity HELPCHARENT FILE "helpchar.ent">
&HELPCHARENT;
<metainfo>
<title>CDE Help System Demo Volume
<copyright>
<image><term nogloss|Common Desktop Environment (CDE)|
Copyright &copy; 1993, 1994 Hewlett-Packard Company
Copyright &copy; 1993, 1994 International Business Machines Corp.
Copyright &copy; 1993, 1994 Novell, Inc.
Copyright &copy; 1993, 1994 Sun Microsystems, Inc.
<\image>
<abstract>
Demonstration help volume for the CDE Help System.
<\abstract>
<!-- CLASSESDEF -->
<otherfront id=CLASSESDEF><head>Widget Class
A type of widget. A widget's !!class!! determines what methods will be
called for it and what instance variables it has.
<procedure>See Also
<list bullet tight>
* <xref SUBCLASSESDEF>
* <xref WIDGETDEF>
<\list>
<!-- SUBCLASSESDEF -->
<otherfront id=SUBCLASSESDEF><head>Widget Subclass
A more specific class, used to create related widget objects. A widget
!!subclass!! has its own features plus many of the features of its
superclasses.
<procedure>See Also
<list bullet tight>
* <xref CLASSESDEF>
* <xref WIDGETDEF>
<\list>
<!-- WIDGETDEF -->
<otherfront id=WIDGETDEF><head>Widget
An individual component used within a graphical user interface.
Widgets are like "building blocks" -- push buttons, scroll bars, data
fields -- used to build application interfaces.
<procedure>See Also
<list bullet tight>
* <xref CLASSESDEF>
* <xref SUBCLASSESDEF>
<\list>
<otherfront id=gifted-topic><head>He's dead, Jim!
<figure nonumber
entity=dead-jim ghyperlink="dtaction Play sounds/deadjim.snd&" glinktype=Execute>
<\figure>
<otherfront id=head-down-topic><head>Nope, nothing in here.
<figure nonumber entity=head-down
ghyperlink="dtaction Play sounds/clunk.snd &" glinktype=Execute>
<\figure>
<otherfront id=sunset-topic><head>Online!
<figure nonumber
entity=sunset ghyperlink="dtaction Play sounds/haleluja.snd &" glinktype=Execute>
<\figure>
<otherfront id=tribe-topic><head>Learning products cost too much?
<figure nonumber
entity=tribe ghyperlink="dtaction Play sounds/tarzan.snd &" glinktype=Execute>
<\figure>
<otherfront id=whats-up-doc-topic><head>What's up?
<figure nonumber entity=bugs-bunny ghyperlink="dtaction Play sounds/whatsup.snd &" glinktype=Execute>
<\figure>
<!--
<esc>
<figure file graphics/whatsup.xwd link "dtaction Play sounds/whatsup.snd &" typelink 3>
</figure>
<\esc>
-->
<\metainfo>
<hometopic>The CDE Help System
<p indent gentity=HELPlogo gposition=left>
<emph>Welcome to a self-paced demonstration of the
CDE Help System!<\emph>
<newline>What better way to learn about a hypermedia system, than by using the
system itself. This demo lets you explore information and
capabilities about CDE Help according to your interests.
<idx|getting started|
To get started, choose one of the hyperlinks below (they're underlined):
<list bullet tight>
* <xref overview>
* <xref features>
* <xref design>
<\list>
<note>
This help volume serves as a self-paced demonstration of the CDE Help System,
as well as supports the various help entry points used within the
``dthelpdemo'' sample program. ``dthelpdemo'' is sample OSF/Motif client
intented to show how the CDE Help System can be used. The source code
for both the ``dthelpdemo'' client as well as this help volume are
present on your system.
<\note>
<!-- FEATURES -->
<s1 id=features>A Self-Guided Tour
<idx|touring CDE Help|
This tour demonstrate the major features of the CDE Help System. You may
explore them in any order.
While exploring, to return to a previous topic, choose the Backtrack
command button. To return to the top-level topic, choose Contents.
The indented list at the top of the help window tells you where you are in
the topic hierarchy and lists the sutopics for the current topic. You can
go directly to any topic in the path by selecting its title.
<!-- OVERVIEW -->
<list bullet tight>
* <xref HYPERTEXT>
* <xref DEFINITIONS>
* <xref GRAPHICS>
* <xref AUDIO>
* <xref COMMANDS>
* <xref COMMUNICATION>
<\list>
<s2 id=OVERVIEW>General Overview
CDE Help is an online help system, primarily intended for OSF/Motif
applications. The following sections provide a summary of major CDE Help
features. (For more details, refer to "<xref DESIGN>.")
<otherhead>Hyperlinks
Hyperlinks are the key feature in a hypermedia system.
CDE Help supports four types of hyperlinks:
<list bullet>
* <emph>Standard hypertext jumps<\emph> immediately move the reader to
a different location within the online information. By default, these
types of jumps replace the contents of the existing window. However,
the author may specify jumps that should be displayed in a "new view."
(For more detail, refer to "<xref HYPERTEXT>.")
* <emph>Definition links<\emph> temporarily show the definition of a key
word or phrase. Although intended for keyword-to-glossary lookup,
definition links have many other useful applications. (For an example,
refer to "<link hyperlink="Intromgr _HOMETOPIC" JumpNewView>Introducing the CDE Desktop.<\link>.")
* <emph>Command links<\emph> execute an author-defined command to
invoke an action beyond the domain of the help system. Any shell
command can be executed, so this feature is really the "open door" to
the outside world for CDE Help authors. (To try examples, refer to
"<xref COMMANDS>.")
* <emph>Application-defined links<\emph> (To try some examples, refer
to "<xref COMMUNICATION>.")
<\list>
<otherhead>Embedded Graphics
CDE Help supports the following graphics formats. To view samples
of a few of these formats, refer to "<xref GRAPHICS>."
<list bullet>
* !!X Window Dump!! (xwd) color graphics. This format is
created using the standard <computer>xwd<\computer> utility program.
Many popular graphics tools for the X Window System also support this
format.
* !!X Pixmap!! (xpm) color graphics. This is an emerging
standard format for multicolor icons.
* <emph>X Bitmap<\emph> (bitmap) two-tone graphics. The foreground
and background of these images tracks the foreground and background
used to display text in the display area. This format can be created
and edited using the standard <computer> bitmap<\computer> utility
program.
* <emph>TIFF<\emph> (tagged image file format) black and white and
greyscale graphics. This is perhaps the most common format in the
personal computer graphics industry.
<\list>
<otherhead>Interactive Keyword Index
CDE Help's keyword index functions much like the index in a book,
listing words the author marked as important. Unlike the index in a book,
this online index accelerates the reader's ability to jump to references
because each word or phrase is a link to the location (or list of
locations) where it is used.
<otherhead>Help Registration
When an application is installed, it may install its help files in any
location. Optionally, applications can participate in a "registration"
process that enables two important features for online help:
<list bullet>
* <emph>Cross-application links<\emph> that allow hyperlinks to jump
from one application's help to another's.
* <emph>System-wide access to help<\emph> provided by the <link
hyperlink="browser _HOMETOPIC" JumpNewView>CDE Help Manager<\link>.
<\list>
<note>
See the <link dtappintegrate man>dtappintegrate Man Page<\link>
for specific information on registration of application help volumes.
<\note>
<!-- HYPERTEXT -->
<s2 id=HYPERTEXT>Hyperlinks for Navigation
The "hyper" in hypermedia is what separates hypermedia systems
from online documentation systems. Unlike books that have a linear
organization, hyperlinks let authors create many different, nonlinear
organizations, including "webs," "trees," "circles," and "chains."
In CDE Help, the basis for all organizations is a hierarchy.
However, authors can augment the structure by creating links between
related topics that are in different branches of the hierarchy.
<otherhead>Simple Jumps (Same Window)
Most hyperlinks are simple jumps within the same application help. These
simple jumps reuse the same window, overwriting the previous topic with
each jump.
<otherhead>Jumping to a New Window
When an author creates a new link, she can specify that the link should
open a new help window. The application is responsible for creating and
managing the new window.
<p gentity=SnapshotIcon glinktype=JumpNewView ghyperlink=HYPERTEXT>
For example, this camera icon is a hyperlink to this topic on
hypertext. However this link specifies that a new window is desired.
Effectively, this link takes a "snapshot" of this window. You may use
this snapshot link to create as many demo windows as you want. The demo
will continue to run until you close the last one.
<otherhead>Knowing Where You Are
Near the top of the general help window is an indented list of
topic titles. This list represents your current position (highlighted entry)
with respect to its related topics.
You can go directly to any of the related topics in the list by selecting its
title.
<otherhead>Knowing Where You've Been
CDE Help keeps track of each topic you've viewed in each help
window. To go back to previous topics, you can:
<list bullet>
* Choose Backtrack from the Navigate menu or from the pop-up menu in the
dipslay area to immediately go back to the previous topic.
* Choose History from the Search menu to display a list of all the topics
you've viewed. To return to a topic, select its title in the list.
<\list>
<!-- DEFINITIONS -->
<s2 id=DEFINITIONS>Pop-Up Definition Links
A special class of hyperlink is provided for temporarily displaying
"elaborative" information. Most frequently, this feature is used to
display the glossary definition for a key word or phrase.
For example, the following paragraph has three definition links.
<p indent>OSF/Motif graphical user interfaces are constructed using <link
WIDGETDEF Definition>widgets<\link>. Widgets are organized by form and
function into <link CLASSESDEF Definition>classes<\link> and <link
SUBCLASSESDEF Definition>subclasses<\link>.
The use of definition links is not limited to defining key words and
phrases. For instance, you could use this feature to provide a <link
hyperlink="Intromgr quick-start" JumpNewView>visual overview<\link> of the
application.
<!-- GRAPHICS -->
<s2 id=GRAPHICS>A Graphics Sampler
The following images demonstrated the diverse capabilities of CDE Help's
graphics support. Some of these images are oversized -- you
may want to resize the window to get a better view.
<idx|Graphics Sampler|
<!--
<esc>
<figure file graphics/color.xwd>
</figure>
<newline>
<newline>
<\esc>
<esc>
<figure file graphics/hutlogo.xwd>
</figure>
<newline>
<newline>
<\esc>
-->
<figure nonumber entity=computer-bee>
<\figure>
<otherhead>We Do Bitmaps!
<figure nonumber entity=integral>
<\figure>
<!--
<esc>
<figure file graphics/libAnne.bm>
</figure>
<newline>
<newline>
<\esc>
-->
<!--
<esc>
<figure file graphics/hplogo.bm>
</figure>
<newline>
<newline>
<\esc>
-->
<figure nonumber entity=snapshot>
<\figure>
<otherhead>We Do Grayscale!
<figure nonumber entity=space-shuttle>
<\figure>
<s2 id=Audio>An Audio Sampler
<idx|Audio Sampler|
<figure nonumber
entity=rooster ghyperlink="dtaction Play sounds/rooster.snd &" glinktype=Execute>
<\figure>
<figure nonumber
entity=clouds ghyperlink="dtaction Play sounds/thunder.snd &" glinktype=Execute>
<\figure>
<otherhead>Pop-Up Windows With Graphical Audio Links
<list bullet>
* <link whats-up-doc-topic Definition>Whats up?<\link>
* <link gifted-topic Definition>Our customer, after getting too many
manuals ...<\link>
<!--
* <link head-down-topic Definition>Our competitors ...<\link>
-->
* <link sunset-topic Definition>I found it ...<\link>
<!--
* <link tribe-topic Definition>A coffee talk ...<\link>
-->
<\list>
<otherhead>Some Text-Based Audio Links
<list plain loose>
* <link hyperlink="dtaction Play sounds/monkey.snd &" Execute>
Monkey<graphic entity=SoundIcon>
<\link>
* <link hyperlink="dtaction Play sounds/chord.snd &" Execute>
Pleasant Chord<graphic entity=SoundIcon>
<\link>
* <link hyperlink="dtaction Play sounds/hal2.snd &" Execute>
Hal 9000 <graphic entity=SoundIcon>
<\link>
* <link hyperlink="dtaction Play sounds/attack.snd &" Execute>
Prepare to attack! <graphic entity=SoundIcon>
<\link>
* <link hyperlink="dtaction Play sounds/beback.snd &" Execute>
I'll be back!<graphic entity=SoundIcon>
<\link>
<\list>
<!-- COMMANDS -->
<s2 id=COMMANDS>Executing Commands
<idx|Command execution|
Each of the following icons is a hyperlink assigned to a particular
system command. If the program in the command is installed on your
system, clicking the icon will invoke it.
<p gentity=clock ghyperlink="DtHelpExecAlias xclockAlias" glinktype=Execute>This
icon starts the ``xclock'' program if it is
installed on your system, and in your PATH.
<p gentity=xload ghyperlink="DtHelpExecAlias xloadAlias" glinktype=Execute>This
icon starts the ``xload'' program if it is installed on your
system, and in your PATH.
Command links do not have to be graphics. For example, this link
executes the <link EXECUTE hyperlink="DtHelpExecAlias dtCalcAlias">CDE
Calculator<\link> program (if it is installed on your system).
<note>
The above Execute examples take advantage of Execution Aliases in the
hyperlinks. When execution alises are defined in the help volume, and
supported in the hosting client, they execute directly when selected by the
user.
To learn more general information about supporting execution hyperlinks and
aliases, refer to the <book|CDE Author's and Programmer's Guide|.
<\note>
<!-- COMMUNICATION -->
<s2 id=COMMUNICATION>Two-Way Communication
<idx|Two way communication|
A help system that is tightly coupled with an application has more
potential for presenting relevant, context-sensitive information. The
architecture of the ...
<otherhead>Help System Controlling the Application
Since CDE Help is intended for use in OSF/Motif-based applications, it takes
advantage of the !!callback!! mechanism used by all other user interface
components. Help callbacks notify the application when certain events
occur within a help window.
Perhaps the most powerful use of help callbacks is the use of
!!application-defined links!!. These are link types invented by the
application developer that can have any meaning.
For example, a developer may want to create a special type of link to
play video clips. Each time the user selects one of these links, the
application is notified so it can do whatever is necessary to play the
appropriate video.
<xref controlTestId>
<otherhead>Application Controlling the Help System
As a toolkit, all CDE Help facilites are under control of the
application. All help windows are transient windows of the
application. The application can control the number of help windows,
the color schemes used within them and other options provided by the
CDE Help libraries.
<s3 id=controlTestId> Sample Application Defined Links
The following collection of hypertext links demonstrate how the CDE Help
System can control the hosting application. These links are authored
as <emph>AppDefined<\emph> links, and require special support in the hosting
client
<note>
These example !!application-defined!! links are supported by the ``dthelpdemo''
program. (If you view this help volume with another application, such as
dthelpview, the links are ignored.)
<\note>
<otherhead>Controlling <emph>YOUR<\emph> client:
<list bullet>
* <link hyperlink="100" type=AppDefined> Move dthelpdemo's window<\link>
* <link hyperlink="101" type=AppDefined> Resize dthelpdemo's window<\link>
<\list>
<!-- design -->
<s1 id=design>The CDE Help System Design
<!-- MODEL -->
<list bullet tight>
* <xref MODEL>
* <xref TOOLKIT>
* <xref API>
* <xref HELPTAG>
<\list>
<s2 id=MODEL>The CDE Help System Use Model
<idx|use model|
<idx|prime directive|
The overriding principle for providing online help is:
<p indent>!!Get the user back on task as quickly and successfully as
possible.!!
To fulfill this "prime directive," online help must be easily accessible
within whatever applications the user has chosen to accomplish the task.
The CDE Help System is cast in a supporting roll. That is,
the help system's job is to function as part of the application with
the purpose of making the user successful with the rest of the
application.
<figure nonumber entity=ApplicationWithHelp>
<\figure>
The idea of keeping the help system tightly coupled with the application
improves the user's <emph>perceived proximity<\emph>. User are more likely
to be successful and productive if they feel like devations to get help
don't take them far from the application.
CDE Help supports two types of <emph> entry
points<\emph> into online help:
<list bullet>
* <link QUICKHELP>Quick help<\link> presents a focussed node of
information for a given context.
* <link GENERALHELP>General help<\link> presents navigable information
that the user can explore.
<\list>
<!-- QUICKHELP -->
<s3 id=QUICKHELP>Quick Help
Quick help information is optimized -- by writing style and
organization -- to get the user back on task with minimal interruption.
<figure entity=QuickHelpModel>
<\figure>
Quick help has a high level of context sensitivity and contains very
specific information. By design, the content and presentation of
quick help information should <emph>not<\emph> encourage the user to
"explore."
So, what if a quick help entry point doesn't fill the user's need?
<emph>Progressive disclosure<\emph> sequences are designed to maintain
a sense of proximity, while exploring an author-constrained path of
nodes that incrementally provide more information for the given
context. (This concept is sometimes called "progressive revelation"
or "progressively-more-help.")
Typical uses of quick help include:
<list bullet>
* Messages (errors, status, etc.).
* Context-sensitive help (invoked with F1 key or Help command button).
* Each step in a constrained progressive disclosure sequence.
* Item help.
* Application copyright and version.
* Simple help on help.
<\list>
<!-- GENERALHELP -->
<s3 id=GENERALHELP>General Help
General help information is anything that isn't quick help. Usually,
general help is intended to be explored (such as this demo).
<figure nonumber entity=GeneralHelpModel>
<\figure>
Typical uses of general help include:
<list bullet>
* Application overview.
* A follow-up to quick help -- that is, when quick help isn't enough.
* Application tutorials.
* Application training modules.
* Complete help on help (when quick help on help isn't enough).
<\list>
<!-- TOOLKIT -->
<s2 id=TOOLKIT>The Toolkit Architecture
Application developers add help components to their
software just as they add any other window. The CDE Help
programmer's toolkit defines new widget classes for the various help
windows. There are many advantages to this toolkit architecture:
<list bullet>
* There's no dependency on a separate help server process -- the
"help system" is part of the application.
* Response time is dramatically faster.
* Memory usage is significantly less (which increases overall system
performance).
* User's perceive help to be part of the application, making it seem
like less of a deviation to ask for help.
* There's no need for an inter-process communication (IPC) mechanism.
The application interacts with CDE Help components just as it does
with all other user interface components.
* There's no new programming paradigm -- all CDE Help
components are accessed using the same object-oriented
interface used for OSF/Motif (via the Xt Intrinsics and convenience
functions).
<\list>
Since the CDE Help toolkit is based exclusively on standards (ANSI
C, Xlib, Xt Intrinsics, and OSF/Motif), it is as portable as any OSF/Motif
application can be.
<!-- HELPTAG -->
<s2 id=API>CDE Help API Summary
<idx|API summary|
The CDE Help System's Application Programmers Interface (API) includes the
following functions:
<list bullet>
* Functions for creating and working with help dialogs:
<list plain tight>
* <link DtHelpDialog man>DtHelpDialog()<\link>
* <link DtHelpQuickDialog man>DtHelpQuickDialog()<\link>
* <link DtCreateHelpDialog man>DtCreateHelpDialog()<\link>
* <link DtCreateHelpQuickDialog man>DtCreateHelpQuickDialog()<\link>
* <link DtHelpQuickDialogGetChild man>DtHelpQuickDialogGetChild()<\link>
<\list>
* Function for implementing item help mode:
<list plain tight>
* <link DtHelpReturnSelectedWidgetId man>DtHelpReturnSelectedWidgetId()<\link>
<\list>
* Function for specifying the message catalog for the Xvh library:
<list plain tight>
* <link DtHelpSetCatalogName man>DtHelpSetCatalogName()<\link>
<\list>
<\list>
<!-- HELPTAG -->
<s2 id=HELPTAG>Authoring with HelpTag
Authoring for CDE Help is based on the HelpTag markup language and
accompanying software. HelpTag is based on the SMGL standard (ISO
8879).
<otherhead>The HelpTag Markup Language
Online help is written in ordinary text files. You use special codes, or tags to
markup elements within the information. The tags form a markup language called
CDE HelpTag.
The CDE HelpTag markup language defines a hierarchy of elements that define
high-level elements such as chapters, sections, and subsections, and low-level
elements such as paragraphs, lists, and emphasized words.
To learn more general information about authoring with CDE HelpTag, refer to
the <book|CDE Author's and Programmer's Guide|.
<otherhead>The HelpTag Software
The HelpTag software is responsible for converting the author's files
into the run-time help files that are shipped with the application.
The software is invoked with a command like this:
<ex>dthelptag %%basename%%.htg<\ex>
A run-time help file is generated. If the application that
the help is intended for is ready to use, the help volume can be tested
immediately.
If the application is not ready, or the help is not associated with a
particular application, it can be viewed using the <book|dthelpview| preview
client.

View File

@@ -0,0 +1,3 @@
search=/usr/dt/dthelp/dthelptag
search=/usr/dt/dthelp/dthelptag/icons
search=./graphics

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,15 @@
##########################################################################
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
#
# Csh script to set DTHELPUSERSEARCHPATH to find
# the help volume used by helpdemo.
#
# To activate, execute "source ./helpdemoHelpEnv.csh"
#
##########################################################################
set PWD = `pwd`
setenv DTHELPUSERSEARCHPATH $PWD/help/%H:$PWD/help/%H.hv:$PWD/help/%H.sdl

View File

@@ -0,0 +1,15 @@
# $XConsortium: helpdemoHelpEnv.sh /main/2 1995/07/19 17:09:31 drk $
##########################################################################
# (c) Copyright 1993, 1994 Hewlett-Packard Company
# (c) Copyright 1993, 1994 International Business Machines Corp.
# (c) Copyright 1993, 1994 Sun Microsystems, Inc.
# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
# Novell, Inc.
#
# Sh and Ksh script to set DTHELPUSERSEARCHPATH to find
# the help volume used by helpdemo.
#
# To activate, execute ". ./helpdemoHelpEnv.sh"
#
##########################################################################
export DTHELPUSERSEARCHPATH="$PWD/help/%H:$PWD/help/%H.hv:$PWD/help/%H.sdl"