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 librararies 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: help.c /main/4 1995/11/02 14:05:18 rswiston $ */
24 /*********************************************************************
25 * (c) Copyright 1993, 1994 Hewlett-Packard Company
26 * (c) Copyright 1993, 1994 International Business Machines Corp.
27 * (c) Copyright 1993, 1994 Sun Microsystems, Inc.
28 * (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of
30 **********************************************************************/
31 /******************************************************************************
34 ** Description: X11-based multi-color icon editor
36 ** File: help.c, which contains the following subroutines or
38 ** AssignHelpCallbacks()
43 ** HelpSetVolAndLocation()
46 ** DisplayHelpDialog()
49 ******************************************************************************
51 ** Copyright 1991 by Hewlett-Packard Company, 1990, 1991, 1992.
52 ** All rights are reserved. Copying or reproduction of this program,
53 ** except for archival purposes, is prohibited without prior written
54 ** consent of Hewlett-Packard Company.
56 ** Hewlett-Packard makes no representations about the suitibility of this
57 ** software for any purpose. It is provided "as is" without express or
60 ******************************************************************************/
62 #include <Xm/DialogS.h>
64 #include <Xm/MwmUtil.h>
65 #include <Dt/HelpDialog.h>
69 extern Widget circleButton, editMenu_addHS_pb, editMenu_clear_pb;
70 extern Widget editMenu_copy_pb, editMenu_cut_pb, editMenu_deleteHS_pb;
71 extern Widget editMenu_flip_pb, editMenu_paste_pb, editMenu_resize_pb;
72 extern Widget editMenu_rotate_pb, editMenu_scale_pb, editMenu_top_pb;
73 extern Widget editMenu_undo_pb, ellipseButton, eraseButton, floodButton;
74 extern Widget fileMenu_new_pb, fileMenu_open_pb, fileMenu_quit_pb;
75 extern Widget fileMenu_saveAs_pb, fileMenu_save_pb, fileMenu_top_pb;
76 extern Widget lineButton, menu1, optionsMenu_format, optionsMenu_grid;
77 extern Widget optionsMenu_magnify, optionsMenu_top_pb, pointButton;
78 extern Widget polygonButton, polylineButton, queryDialog, rectangleButton;
79 extern Widget selectButton, fillToggle;
80 extern Widget editMenu_grabImage_pb;
81 extern Widget helpMenu_top_pb, helpMenu_intro_pb, helpMenu_tasks_pb,
82 helpMenu_ref_pb, helpMenu_item_pb, helpMenu_using_pb,
84 extern Widget rotateMenu, flipMenu, formatMenu, magnificationMenu;
85 extern Widget staticColorsBox, symbolicColorsBox, staticGreysBox;
86 extern Widget viewport;
88 void HelpTriggerCB(Widget w, caddr_t client_data, caddr_t call_data);
89 void HelpOnItemCB(Widget w, caddr_t client_data, caddr_t call_data);
90 void HelpSetVolAndLocation(int topic);
91 void DisplayNewHelp(char *helpVolume, char *locationId);
92 void DisplayHelp(char *helpVolume, char *locationId);
93 void DisplayHelpDialog(Widget dialog, char *helpVolume, char *locationId);
94 Widget CreateHelpDialog(HelpStruct *pHelp);
98 AssignHelpCallbacks( void )
102 stat_out("Entering AssignHelpCallbacks\n");
105 /*** Set Help callbacks for the graphic tools ***/
106 XtAddCallback(pointButton, XmNhelpCallback,
107 (XtCallbackProc) HelpTriggerCB,
108 (XtPointer)HELP_POINT_BUTTON);
109 XtAddCallback(floodButton, XmNhelpCallback,
110 (XtCallbackProc) HelpTriggerCB,
111 (XtPointer)HELP_FLOOD_BUTTON);
112 XtAddCallback(lineButton, XmNhelpCallback,
113 (XtCallbackProc) HelpTriggerCB,
114 (XtPointer)HELP_LINE_BUTTON);
115 XtAddCallback(polylineButton, XmNhelpCallback,
116 (XtCallbackProc) HelpTriggerCB,
117 (XtPointer)HELP_POLYLINE_BUTTON);
118 XtAddCallback(rectangleButton, XmNhelpCallback,
119 (XtCallbackProc) HelpTriggerCB,
120 (XtPointer)HELP_RECTANGLE_BUTTON);
121 XtAddCallback(polygonButton, XmNhelpCallback,
122 (XtCallbackProc) HelpTriggerCB,
123 (XtPointer)HELP_POLYGON_BUTTON);
124 XtAddCallback(circleButton, XmNhelpCallback,
125 (XtCallbackProc) HelpTriggerCB,
126 (XtPointer)HELP_CIRCLE_BUTTON);
127 XtAddCallback(ellipseButton, XmNhelpCallback,
128 (XtCallbackProc) HelpTriggerCB,
129 (XtPointer)HELP_ELLIPSE_BUTTON);
130 XtAddCallback(eraseButton, XmNhelpCallback,
131 (XtCallbackProc) HelpTriggerCB,
132 (XtPointer)HELP_ERASER_BUTTON);
133 XtAddCallback(selectButton, XmNhelpCallback,
134 (XtCallbackProc) HelpTriggerCB,
135 (XtPointer)HELP_SELECT_BUTTON);
136 XtAddCallback(fillToggle, XmNhelpCallback,
137 (XtCallbackProc) HelpTriggerCB,
138 (XtPointer)HELP_FILL_BUTTON);
140 /*** Set Help callbacks for the pen groups ***/
141 XtAddCallback(staticColorsBox, XmNhelpCallback,
142 (XtCallbackProc) HelpTriggerCB,
143 (XtPointer)HELP_STATIC_COLOR_BUTTON);
144 XtAddCallback(staticGreysBox, XmNhelpCallback,
145 (XtCallbackProc) HelpTriggerCB,
146 (XtPointer)HELP_STATIC_GREY_BUTTON);
147 XtAddCallback(symbolicColorsBox, XmNhelpCallback,
148 (XtCallbackProc) HelpTriggerCB,
149 (XtPointer)HELP_DYNAMIC_COLOR_BUTTON);
151 /*** Set Help callbacks for the File menu ***/
152 XtAddCallback(fileMenu_top_pb, XmNhelpCallback,
153 (XtCallbackProc) HelpTriggerCB,
154 (XtPointer)HELP_FILE_BUTTON);
155 XtAddCallback(fileMenu_new_pb, XmNhelpCallback,
156 (XtCallbackProc) HelpTriggerCB,
157 (XtPointer)HELP_NEW_BUTTON);
158 XtAddCallback(fileMenu_open_pb, XmNhelpCallback,
159 (XtCallbackProc) HelpTriggerCB,
160 (XtPointer)HELP_OPEN_BUTTON);
161 XtAddCallback(fileMenu_save_pb, XmNhelpCallback,
162 (XtCallbackProc) HelpTriggerCB,
163 (XtPointer)HELP_SAVE_BUTTON);
164 XtAddCallback(fileMenu_saveAs_pb, XmNhelpCallback,
165 (XtCallbackProc) HelpTriggerCB,
166 (XtPointer)HELP_SAVE_AS_BUTTON);
167 XtAddCallback(fileMenu_quit_pb, XmNhelpCallback,
168 (XtCallbackProc) HelpTriggerCB,
169 (XtPointer)HELP_QUIT_BUTTON);
171 /*** Set Help callbacks for the Edit menu ***/
172 XtAddCallback(editMenu_top_pb, XmNhelpCallback,
173 (XtCallbackProc) HelpTriggerCB,
174 (XtPointer)HELP_EDIT_BUTTON);
175 XtAddCallback(editMenu_undo_pb, XmNhelpCallback,
176 (XtCallbackProc) HelpTriggerCB,
177 (XtPointer)HELP_UNDO_BUTTON);
178 XtAddCallback(editMenu_cut_pb, XmNhelpCallback,
179 (XtCallbackProc) HelpTriggerCB,
180 (XtPointer)HELP_CUT_BUTTON);
181 XtAddCallback(editMenu_copy_pb, XmNhelpCallback,
182 (XtCallbackProc) HelpTriggerCB,
183 (XtPointer)HELP_COPY_BUTTON);
184 XtAddCallback(editMenu_paste_pb, XmNhelpCallback,
185 (XtCallbackProc) HelpTriggerCB,
186 (XtPointer)HELP_PASTE_BUTTON);
187 XtAddCallback(editMenu_rotate_pb, XmNhelpCallback,
188 (XtCallbackProc) HelpTriggerCB,
189 (XtPointer)HELP_ROTATE_BUTTON);
190 XtAddCallback(rotateMenu, XmNhelpCallback,
191 (XtCallbackProc) HelpTriggerCB,
192 (XtPointer)HELP_ROTATE_BUTTON);
193 XtAddCallback(editMenu_flip_pb, XmNhelpCallback,
194 (XtCallbackProc) HelpTriggerCB,
195 (XtPointer)HELP_FLIP_BUTTON);
196 XtAddCallback(flipMenu, XmNhelpCallback,
197 (XtCallbackProc) HelpTriggerCB,
198 (XtPointer)HELP_FLIP_BUTTON);
199 XtAddCallback(editMenu_scale_pb, XmNhelpCallback,
200 (XtCallbackProc) HelpTriggerCB,
201 (XtPointer)HELP_SCALE_BUTTON);
202 XtAddCallback(editMenu_resize_pb, XmNhelpCallback,
203 (XtCallbackProc) HelpTriggerCB,
204 (XtPointer)HELP_RESIZE_ICON_BUTTON);
205 XtAddCallback(editMenu_addHS_pb, XmNhelpCallback,
206 (XtCallbackProc) HelpTriggerCB,
207 (XtPointer)HELP_ADD_HOTSPOT_BUTTON);
208 XtAddCallback(editMenu_deleteHS_pb, XmNhelpCallback,
209 (XtCallbackProc) HelpTriggerCB,
210 (XtPointer)HELP_DELETE_HOTSPOT_BUTTON);
211 XtAddCallback(editMenu_grabImage_pb, XmNhelpCallback,
212 (XtCallbackProc) HelpTriggerCB,
213 (XtPointer)HELP_GRAB_BUTTON);
214 XtAddCallback(editMenu_clear_pb, XmNhelpCallback,
215 (XtCallbackProc) HelpTriggerCB,
216 (XtPointer)HELP_CLEAR_ICON_BUTTON);
218 /*** Set Help callbacks for the Options menu ***/
219 XtAddCallback(optionsMenu_top_pb, XmNhelpCallback,
220 (XtCallbackProc) HelpTriggerCB,
221 (XtPointer)HELP_OPTIONS_BUTTON);
222 XtAddCallback(optionsMenu_grid, XmNhelpCallback,
223 (XtCallbackProc) HelpTriggerCB,
224 (XtPointer)HELP_VISIBLE_GRID_BUTTON);
225 XtAddCallback(optionsMenu_format, XmNhelpCallback,
226 (XtCallbackProc) HelpTriggerCB,
227 (XtPointer)HELP_OUTPUT_FORMAT_BUTTON);
228 XtAddCallback(formatMenu, XmNhelpCallback,
229 (XtCallbackProc) HelpTriggerCB,
230 (XtPointer)HELP_OUTPUT_FORMAT_BUTTON);
231 XtAddCallback(optionsMenu_magnify, XmNhelpCallback,
232 (XtCallbackProc) HelpTriggerCB,
233 (XtPointer)HELP_MAGNIFICATION_BUTTON);
234 XtAddCallback(magnificationMenu, XmNhelpCallback,
235 (XtCallbackProc) HelpTriggerCB,
236 (XtPointer)HELP_MAGNIFICATION_BUTTON);
238 /*** Set Help callbacks for the Help menu (menu items activated) ***/
239 XtAddCallback(helpMenu_intro_pb,
241 (XtCallbackProc) HelpTriggerCB,
242 (XtPointer)HELP_INTRODUCTION);
243 XtAddCallback(helpMenu_tasks_pb,
245 (XtCallbackProc) HelpTriggerCB,
246 (XtPointer)HELP_TASKS);
247 XtAddCallback(helpMenu_ref_pb,
249 (XtCallbackProc) HelpTriggerCB,
250 (XtPointer)HELP_REFERENCE);
251 XtAddCallback(helpMenu_item_pb,
253 (XtCallbackProc) HelpOnItemCB,
254 (XtPointer)HELP_ON_ITEM);
255 XtAddCallback(helpMenu_using_pb,
257 (XtCallbackProc) HelpTriggerCB,
258 (XtPointer)HELP_USING_HELP);
259 XtAddCallback(helpMenu_version_pb,
261 (XtCallbackProc) HelpTriggerCB,
262 (XtPointer)HELP_VERSION);
264 /*** Set Help callbacks for the Help menu (help on menu items themselves) ***/
265 XtAddCallback(helpMenu_top_pb,
267 (XtCallbackProc) HelpTriggerCB,
268 (XtPointer)HELP_HELP_BUTTON);
269 XtAddCallback(helpMenu_intro_pb,
271 (XtCallbackProc) HelpTriggerCB,
272 (XtPointer)HELP_HELP_INTRODUCTION);
273 XtAddCallback(helpMenu_tasks_pb,
275 (XtCallbackProc) HelpTriggerCB,
276 (XtPointer)HELP_HELP_TASKS);
277 XtAddCallback(helpMenu_ref_pb,
279 (XtCallbackProc) HelpTriggerCB,
280 (XtPointer)HELP_HELP_REFERENCE);
281 XtAddCallback(helpMenu_item_pb,
283 (XtCallbackProc) HelpTriggerCB,
284 (XtPointer)HELP_HELP_ON_ITEM);
285 XtAddCallback(helpMenu_using_pb,
287 (XtCallbackProc) HelpTriggerCB,
288 (XtPointer)HELP_HELP_USING_HELP);
289 XtAddCallback(helpMenu_version_pb,
291 (XtCallbackProc) HelpTriggerCB,
292 (XtPointer)HELP_HELP_VERSION);
294 /*** Set Help callbacks for other GUI components ***/
295 XtAddCallback(menu1, XmNhelpCallback,
296 (XtCallbackProc) HelpTriggerCB,
297 (XtPointer)HELP_MENUBAR);
298 XtAddCallback(queryDialog, XmNhelpCallback,
299 (XtCallbackProc) HelpTriggerCB,
300 (XtPointer)HELP_QUERY);
301 XtAddCallback(stdErrDialog, XmNhelpCallback,
302 (XtCallbackProc) HelpTriggerCB,
303 (XtPointer)HELP_ERROR);
304 XtAddCallback(newIconDialog, XmNhelpCallback,
305 (XtCallbackProc) HelpTriggerCB,
306 (XtPointer)HELP_NEW_ICON);
307 XtAddCallback(fileIODialog, XmNhelpCallback,
308 (XtCallbackProc) HelpTriggerCB,
309 (XtPointer)HELP_FILEIO_ICON);
310 XtAddCallback(viewport, XmNhelpCallback,
311 (XtCallbackProc) HelpTriggerCB,
312 (XtPointer)HELP_VIEWPORT);
313 XtAddCallback(mainWindow, XmNhelpCallback,
314 (XtCallbackProc) HelpTriggerCB,
315 (XtPointer)HELP_MAIN_WINDOW);
319 stat_out("Leaving AssignHelpCallbacks\n");
332 stat_out("Entering HelpTriggerCB: help-tag=%d\n", (int) client_data);
335 HelpSetVolAndLocation((int) client_data);
339 stat_out("Leaving HelpTriggerCB\n");
355 stat_out("Entering HelpOnItemCB: help-tag=%d\n", (int) client_data);
359 while (!XtIsSubclass(w, applicationShellWidgetClass))
362 status = DtHelpReturnSelectedWidgetId(w, 0, &selWidget);
363 /* NULL value for cursor, uses default cursor value. */
367 case DtHELP_SELECT_ERROR:
368 /* Display error dialog here, function call failed */
370 case DtHELP_SELECT_VALID:
371 while (selWidget != (Widget)NULL)
373 if ( (XtHasCallbacks(selWidget, XmNhelpCallback)
374 == XtCallbackHasSome) )
376 XtCallCallbacks(selWidget, XmNhelpCallback, NULL);
380 selWidget = XtParent(selWidget);
383 case DtHELP_SELECT_ABORT:
384 /* Display error dialog here,
385 * "Selection Aborted by user."
388 case DtHELP_SELECT_INVALID:
389 DoErrorDialog( GETSTR(14,4,"You must select an item\nwithin the Icon Editor.") );
396 stat_out("Leaving HelpOnItemCB\n");
404 caddr_t client_data_unused,
407 DtHelpDialogCallbackStruct *pHyper =
408 (DtHelpDialogCallbackStruct *) call_data;
410 switch(pHyper->hyperType) {
411 case DtHELP_LINK_JUMP_NEW :
412 DisplayNewHelp(pHyper->helpVolume, pHyper->locationId);
414 default : ; /* application defined link code goes here */
423 caddr_t call_data_unused )
425 HelpStruct *pHelp = (HelpStruct *)client_data;
429 stat_out("Entering HelpCloseCB\n");
432 if(pHelp != (HelpStruct *)NULL)
434 /* this is a "cached" help dialog */
435 pHelp->inUse = False;
442 stat_out("Leaving HelpCloseCB\n");
448 GetHelpDialog( void )
456 stat_out("Entering GetHelpDialog\n");
459 if(help_head == (HelpStruct *)NULL) {
460 pHelp = (HelpStruct *)XtMalloc(sizeof(HelpStruct));
461 pHelp->pNext = (HelpStruct *)NULL;
462 pHelp->pPrev = (HelpStruct *)NULL;
464 pHelp->dialog = CreateHelpDialog(pHelp);
469 stat_out("Leaving GetHelpDialog: Created the 1st help dialog\n");
472 return pHelp->dialog;
478 if(pHelp->inUse == False) {
483 stat_out("Leaving GetHelpDialog: activated an existing help dialog\n");
486 return pHelp->dialog;
488 if(pHelp->pNext != (HelpStruct *)NULL)
489 pHelp = pHelp->pNext;
493 pHelp->pNext = (HelpStruct *) XtMalloc(sizeof(HelpStruct));
494 pHelp->pNext->pPrev = pHelp;
495 pHelp = pHelp->pNext;
496 pHelp->pNext = (HelpStruct *)NULL;
498 pHelp->dialog = CreateHelpDialog(pHelp);
502 stat_out("Leaving GetHelpDialog: Created a new help dialog\n");
505 return pHelp->dialog;
511 HelpSetVolAndLocation(
514 char *helpVolume, *locationId;
518 stat_out("Entering HelpSetVolAndLocation: topic = %d\n", topic);
521 helpVolume = HELP_VOLUME;
524 /*** choices for the 'Help' pulldown menu ***/
525 case HELP_INTRODUCTION:
526 locationId = HELP_INTRODUCTION_STR;
529 locationId = HELP_TASKS_STR;
532 locationId = HELP_REFERENCE_STR;
535 locationId = HELP_ON_ITEM_STR;
537 case HELP_USING_HELP:
538 helpVolume = HELP_HELP_VOLUME;
539 locationId = HELP_USING_HELP_STR;
542 locationId = HELP_VERSION_STR;
545 /*** choices for the top-level menus on the main menubar ***/
546 case HELP_FILE_BUTTON:
547 locationId = HELP_FILE_BUTTON_STR;
549 case HELP_EDIT_BUTTON:
550 locationId = HELP_EDIT_BUTTON_STR;
552 case HELP_OPTIONS_BUTTON:
553 locationId = HELP_OPTIONS_BUTTON_STR;
555 case HELP_HELP_BUTTON:
556 locationId = HELP_HELP_BUTTON_STR;
559 /*** choices for the 'File' pulldown menu ***/
560 case HELP_NEW_BUTTON:
561 locationId = HELP_NEW_BUTTON_STR;
563 case HELP_OPEN_BUTTON:
564 locationId = HELP_OPEN_BUTTON_STR;
566 case HELP_SAVE_BUTTON:
567 locationId = HELP_SAVE_BUTTON_STR;
569 case HELP_SAVE_AS_BUTTON:
570 locationId = HELP_SAVE_AS_BUTTON_STR;
572 case HELP_QUIT_BUTTON:
573 locationId = HELP_QUIT_BUTTON_STR;
576 /*** choices for the 'Edit' pulldown menu ***/
577 case HELP_UNDO_BUTTON:
578 locationId = HELP_UNDO_BUTTON_STR;
580 case HELP_CUT_BUTTON:
581 locationId = HELP_CUT_BUTTON_STR;
583 case HELP_COPY_BUTTON:
584 locationId = HELP_COPY_BUTTON_STR;
586 case HELP_PASTE_BUTTON:
587 locationId = HELP_PASTE_BUTTON_STR;
589 case HELP_ROTATE_BUTTON:
590 locationId = HELP_ROTATE_BUTTON_STR;
592 case HELP_FLIP_BUTTON:
593 locationId = HELP_FLIP_BUTTON_STR;
595 case HELP_SCALE_BUTTON:
596 locationId = HELP_SCALE_BUTTON_STR;
598 case HELP_RESIZE_ICON_BUTTON:
599 locationId = HELP_RESIZE_ICON_BUTTON_STR;
601 case HELP_ADD_HOTSPOT_BUTTON:
602 locationId = HELP_ADD_HOTSPOT_BUTTON_STR;
604 case HELP_DELETE_HOTSPOT_BUTTON:
605 locationId = HELP_DELETE_HOTSPOT_BUTTON_STR;
607 case HELP_GRAB_BUTTON:
608 locationId = HELP_GRAB_BUTTON_STR;
610 case HELP_CLEAR_ICON_BUTTON:
611 locationId = HELP_CLEAR_ICON_BUTTON_STR;
614 /*** choices for the 'Options' pulldown menu ***/
615 case HELP_VISIBLE_GRID_BUTTON:
616 locationId = HELP_VISIBLE_GRID_BUTTON_STR;
618 case HELP_OUTPUT_FORMAT_BUTTON:
619 locationId = HELP_OUTPUT_FORMAT_BUTTON_STR;
621 case HELP_MAGNIFICATION_BUTTON:
622 locationId = HELP_MAGNIFICATION_BUTTON_STR;
625 /*** choices for the 'Help' pulldown menu ***/
626 case HELP_HELP_INTRODUCTION:
627 locationId = HELP_HELP_INTRODUCTION_STR;
630 case HELP_HELP_TASKS:
631 locationId = HELP_HELP_TASKS_STR;
634 case HELP_HELP_REFERENCE:
635 locationId = HELP_HELP_REFERENCE_STR;
638 case HELP_HELP_ON_ITEM:
639 locationId = HELP_HELP_ON_ITEM_STR;
642 case HELP_HELP_USING_HELP:
643 locationId = HELP_HELP_USING_HELP_STR;
646 case HELP_HELP_VERSION:
647 locationId = HELP_HELP_VERSION_STR;
650 /*** choices for each of the Graphics Tool pushbuttons ***/
651 case HELP_POINT_BUTTON:
652 locationId = HELP_POINT_BUTTON_STR;
654 case HELP_FLOOD_BUTTON:
655 locationId = HELP_FLOOD_BUTTON_STR;
657 case HELP_LINE_BUTTON:
658 locationId = HELP_LINE_BUTTON_STR;
660 case HELP_POLYLINE_BUTTON:
661 locationId = HELP_POLYLINE_BUTTON_STR;
663 case HELP_RECTANGLE_BUTTON:
664 locationId = HELP_RECTANGLE_BUTTON_STR;
666 case HELP_POLYGON_BUTTON:
667 locationId = HELP_POLYGON_BUTTON_STR;
669 case HELP_CIRCLE_BUTTON:
670 locationId = HELP_CIRCLE_BUTTON_STR;
672 case HELP_ELLIPSE_BUTTON:
673 locationId = HELP_ELLIPSE_BUTTON_STR;
675 case HELP_ERASER_BUTTON:
676 locationId = HELP_ERASER_BUTTON_STR;
678 case HELP_SELECT_BUTTON:
679 locationId = HELP_SELECT_BUTTON_STR;
681 case HELP_FILL_BUTTON:
682 locationId = HELP_FILL_BUTTON_STR;
685 /*** choices for each of the Pen Color Group pushbuttons ***/
686 case HELP_STATIC_COLOR_BUTTON:
687 locationId = HELP_STATIC_COLOR_BUTTON_STR;
689 case HELP_STATIC_GREY_BUTTON:
690 locationId = HELP_STATIC_GREY_BUTTON_STR;
692 case HELP_DYNAMIC_COLOR_BUTTON:
693 locationId = HELP_DYNAMIC_COLOR_BUTTON_STR;
696 /*** choice for other GUI components ***/
698 locationId = HELP_MENUBAR_STR;
701 locationId = HELP_QUERY_STR;
704 locationId = HELP_ERROR_STR;
707 locationId = HELP_NEW_ICON_STR;
709 case HELP_FILEIO_ICON:
710 locationId = HELP_FILEIO_ICON_STR;
713 locationId = HELP_VIEWPORT_STR;
715 case HELP_MAIN_WINDOW:
716 locationId = HELP_MAIN_WINDOW_STR;
719 locationId = HELP_MAIN_WINDOW_STR;
722 DisplayHelp(helpVolume, locationId);
726 stat_out("Leaving HelpSetVolAndLocation\n");
736 static Widget mainHelpDialog = NULL;
740 stat_out("Entering DisplayHelp\n");
743 if (mainHelpDialog == NULL)
744 mainHelpDialog = CreateHelpDialog(NULL);
746 DisplayHelpDialog (mainHelpDialog, helpVolume, locationId);
750 stat_out("Leaving DisplayHelp\n");
764 stat_out("Entering DisplayNewHelp\n");
767 helpDialog = GetHelpDialog();
768 DisplayHelpDialog (helpDialog, helpVolume, locationId);
772 stat_out("Leaving DisplayNewHelp\n");
787 stat_out("Entering DisplayHelpDialog\n");
791 XtSetArg(args[n], DtNhelpVolume, helpVolume); n++;
792 XtSetArg(args[n], DtNhelpType, DtHELP_TYPE_TOPIC); n++;
793 XtSetArg(args[n], DtNlocationId, locationId); n++;
794 XtSetValues(helpDialog, args, n);
796 XtManageChild(helpDialog);
800 stat_out("Leaving DisplayHelpDialog\n");
806 CreateHelpDialog (HelpStruct *pHelp)
814 stat_out("Entering CreateHelpDialog, pHelp is %x\n", pHelp);
818 XtSetArg(args[i], XmNtitle, GETSTR(14,2, "Icon Editor - Help")); i++;
819 XtSetArg(args[i], XmNiconName,GETSTR(14,2, "Icon Editor - Help"));i++;
820 helpDialog = DtCreateHelpDialog(dtIconShell, "helpDlg",
822 XtAddCallback(helpDialog, DtNhyperLinkCallback,
823 (XtCallbackProc)HelpHyperlinkCB, NULL);
824 XtAddCallback(helpDialog, DtNcloseCallback,
825 (XtCallbackProc)HelpCloseCB, pHelp);
829 stat_out("Leaving CreateHelpDialog\n");