1 /* $XConsortium: DtMainW.h /main/3 1995/11/06 09:35:41 rswiston $ */
3 * (c) Copyright 1993, 1994 Hewlett-Packard Company *
4 * (c) Copyright 1993, 1994 International Business Machines Corp. *
5 * (c) Copyright 1993, 1994 Sun Microsystems, Inc. *
6 * (c) Copyright 1993, 1994 Novell, Inc. *
12 #include "MainWindow.h"
15 #include "DtActions.h"
16 #include "DtSetPref.h"
17 #include "DtPrinterIcon.h"
27 typedef void (*OpenCallback) (void *callback_data, BaseUI *object);
31 ActionCallback actionCallback;
33 char *actionReferenceName;
36 class DtMenu : public Menu
40 DtMenu(MenuBar *parent, char *name, char *mnemonic, char *help_location_id) :
41 Menu(parent, name, mnemonic)
43 location_id = help_location_id;
45 boolean HandleHelpRequest();
48 class DtMainW : public MainWindow
51 friend void SetPrefCB(void *data);
52 friend void ExitCB(void *data);
53 friend void ActionCB(void *data);
54 friend void HelpCB(void *data);
55 friend void ReferenceCB(void *data);
56 friend void UsingHelpCB(void *data);
57 friend void TasksCB(void *data);
58 friend void AboutCB(void *data);
62 OpenCallback _openClose;
63 PreferenceCallback _prefCB;
64 ContainerType _container_type;
65 SelectionType _select_type;
66 void *_openCallbackData;
67 void *_prefCallbackData;
69 char *_fileMenuMnemonic;
70 ActionData **action_data;
73 PrinterApplicationMode app_mode;
75 static void SetPrefCB(void *data);
76 static void ExitCB(void *data);
77 static void ActionCB(void *data);
78 static void OnItemCB(void *data);
79 static void HelpCB(void *data);
80 static void ReferenceCB(void *data);
81 static void UsingHelpCB(void *data);
82 static void TasksCB(void *data);
83 static void AboutCB(void *data);
85 boolean HandleHelpRequest();
89 DtFindD * findD; // Find dialog
90 DtSetPref * setPrefD; // Set preferences dialog
91 DtSetModList *setModList; // Set printer list dialog
92 DtWorkArea * container; // Work Area
93 MenuBar * mbar; // Menu Bar
94 HelpSystem * helpSystem;
97 // Pulldown menu structure
102 DtActions *actionsMenu;
104 Button *introduction;
105 // ------------------- Separator
109 // ------------------- Separator
111 // ------------------- Separator
114 LabelObj *status_line;
117 DtMainW(char *category,
120 ContainerType container_type = SCROLLED_WORK_AREA,
121 SelectionType select_type = SINGLE_SELECT,
122 OpenCallback openCB = NULL,
123 void *openCallbackData = NULL,
124 PreferenceCallback prefCB = NULL,
125 void *prefCallbackData = NULL,
126 char *fileMenuName = NULL,
127 char *fileMenuMnemonic = NULL,
128 PrinterApplicationMode app_mode = SINGLE_PRINTER);
130 void DtAddAction(char *name, char *category,
131 char *actionReferenceName, ActionCallback callback,
132 void *callback_data, char *mnemonic = NULL,
133 char *acceleratorText = NULL, char *accelerator = NULL);
135 void WorkingCursor(boolean);
136 PrinterApplicationMode PrinterAppMode() { return app_mode; }
137 void DisplayHelp(char *location_id, char *volume = "Printmgr");
138 void DtAddSep(char *category);
140 void OpenClose(BaseUI *obj);
144 #endif /* DTMAINW_H */