2 * CDE - Common Desktop Environment
4 * Copyright (c) 1993-2012, The Open Group. All rights reserved.
6 * These libraries and programs are free software; you can
7 * redistribute them and/or modify them under the terms of the GNU
8 * Lesser General Public License as published by the Free Software
9 * Foundation; either version 2 of the License, or (at your option)
12 * These libraries and programs are distributed in the hope that
13 * they will be useful, but WITHOUT ANY WARRANTY; without even the
14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 * PURPOSE. See the GNU Lesser General Public License for more
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with these libraries and programs; if not, write
20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21 * Floor, Boston, MA 02110-1301 USA
23 /* $XConsortium: HelpDialogI.h /main/6 1996/08/28 19:07:35 cde-hp $ */
24 /*************************************<+>*************************************
25 *****************************************************************************
27 ** File: HelpDialogI.h
29 ** Project: Cache Creek (Rivers) Project:
31 ** Description: Internal header file for HelpDialog Widget.
34 ** (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 Hewlett-Packard Company
36 ** (c) Copyright 1993, 1994 Hewlett-Packard Company
37 ** (c) Copyright 1993, 1994 International Business Machines Corp.
38 ** (c) Copyright 1993, 1994 Sun Microsystems, Inc.
39 ** (c) Copyright 1993, 1994 Novell, Inc.
41 *******************************************************************
42 *************************************<+>*************************************/
43 #ifndef _HelpDialogI_h
44 #define _HelpDialogI_h
46 #include <Dt/HelpDialog.h>
47 #include "HelpDialogP.h"
50 /* Update list defines use in _DtHelpUpdateDisplayArea */
52 #define DtHISTORY_AND_JUMP 1
53 #define DtHISTORY_ONLY 2
57 /* Defines for processing a request to "Top Level..." */
58 #define DtBROWSER_HOME _DtHelpDefaultLocationId
59 #define DtBROWSER_NAME "browser.hv"
64 #define DtJUMP_LIST_MAX 999
68 /****************************************************************
70 * Current Color Info Structure Definition
72 ****************************************************************/
73 typedef struct _colorStruct {
82 /*****************************************************************************
83 * Function: void _DtHelpUpdateDisplayArea(
85 * DtHelpDialogWidget nw,
87 * int topicUpdateType);
90 * Parameters: locationId
96 * Purpose: Updates the History List for the current help dialog.
98 *****************************************************************************/
99 extern void _DtHelpUpdateDisplayArea(
101 DtHelpDialogWidget nw,
104 int topicUpdateType);
107 /*****************************************************************************
108 * Function: void _DtHelpUpdateJumpList(
110 * DtHelpDialogWidget nw);
113 * Parameters: topicInfo
117 * Return Value: Void.
119 * Purpose: Updates the History List for the current help dialog.
121 *****************************************************************************/
122 extern void _DtHelpUpdateJumpList(
128 /*****************************************************************************
129 * Function: void _DtHelpDialogHypertextCB(
130 * XtPointer pDisplayAreaStruct,
131 * XtPointer clientData,
132 * DtHelpHyperTextStruct *hyperData)
134 * Parameters: pDisplayAreaStruct Specifies the curretn display are info.
136 * hyperData Specifies the current hypertext info
139 * clientData Specifies the client data passed into
140 * the hypertext callback.
142 * Return Value: Void.
144 * Purpose: Process all hypertext requests in a given Help Dialogs
147 *****************************************************************************/
148 extern void _DtHelpDialogHypertextCB (
149 XtPointer pDisplayAreaStruct,
150 XtPointer clientData,
151 DtHelpHyperTextStruct *hyperData);
153 /*****************************************************************************
154 * Function: void _DtHelpSetupDisplayType(DtHelpDialogWidget nw);
158 * Parameters: nw Specifies the current help dialog widget.
160 * Return Value: Void.
162 * Purpose: Determins the type of topic the user want's to display
163 * in the current help dialog and sets it up for display.
165 *****************************************************************************/
166 extern void _DtHelpSetupDisplayType(
167 DtHelpDialogWidget nw,
171 /*****************************************************************************
172 * Function: void _DtHelpTopicListFree (DtTopicListStruct *pHead);
175 * Parameters: pHead Specifies the head pointer to the topic list.
177 * Return Value: Void.
179 * Purpose: Frees all elements in a Topic List.
181 *****************************************************************************/
182 extern void _DtHelpTopicListFree(
183 DtTopicListStruct *pHead);
185 /*****************************************************************************
186 * Function: extern void DisplayHistoryCB(
188 * XtPointer client_data,
189 * XtPointer call_data);
195 * Purpose: This routine will cause the history dialog to be
198 ****************************************************************************/
199 extern void _DtHelpDisplayHistoryCB(
201 XtPointer client_data,
202 XtPointer call_data );
204 /*****************************************************************************
205 * Function: extern void _DtHelpDisplayBackCB(
207 * XtPointer client_data,
208 * XtPointer call_data);
214 * Purpose: This routine will cause the top element in the jump
215 * stack to be displayed.
217 ****************************************************************************/
218 extern void _DtHelpDisplayBackCB(
220 XtPointer client_data,
221 XtPointer call_data);
224 /*****************************************************************************
225 * Function: extern void _DtHelpDuplicateWindowCB(
227 * XtPointer client_data,
228 * XtPointer call_data);
234 * Purpose: This routine creates a new help widget by forcing the
235 * equivelent of a Jump New hyper text call
237 ****************************************************************************/
238 extern void _DtHelpDuplicateWindowCB(
240 XtPointer client_data,
241 XtPointer call_data);
243 /*****************************************************************************
244 * Function: void _DtHelpDisplayIndexCB(
246 * XtPointer client_data,
247 * XtPointer call_data);
253 * Purpose: This routine will cause the index dialog to be
256 ****************************************************************************/
257 extern void _DtHelpDisplayIndexCB(
259 XtPointer client_data,
260 XtPointer call_data);
262 /*****************************************************************************
263 * Function: void _DtHelpDisplayBrowserHomeCB(
265 * XtPointer client_data,
266 * XtPointer call_data);
272 * Purpose: This routine will cause the top level of the browser.hv
273 * help volume to be displayed.
275 ****************************************************************************/
276 extern void _DtHelpDisplayBrowserHomeCB(
278 XtPointer client_data,
279 XtPointer call_data);
281 /*****************************************************************************
282 * Function: _DtHelpFilterExecCmdCB
284 * clientData: The general help dialog widget
285 * cmdStr: cmd string to filter
286 * ret_filteredCmdStr: string after filtering. NULL if exec denied
288 * Return Value: 0: ok, < 0: error
290 * Purpose: filter an execution command using executionPolicy rsrc
293 * The caller must free memory allocated for the ret_filteredCmdStr
294 *****************************************************************************/
295 extern int _DtHelpFilterExecCmdCB(
298 char * * ret_filteredCmdStr);
300 #endif /* _HelpDialogI_h */
301 /* Do not add anything after this endif. */