|
|
1.1 root 1: /**********************************************************************\
2: * *
3: * Module Name: PMSHL.H *
4: * *
5: * OS/2 Presentation Manager Shell constants, types, messages and *
6: * function declarations *
7: * Copyright (c) 1988 IBM Corporation *
8: * Copyright (c) 1988 Microsoft Corporation *
9: * *
10: * =====================================================================*
11: * *
12: * The following symbols are used in this file for conditional sections.*
13: * *
14: * INCL_WINSHELLDATA Include Winthorn Data private entries *
15: * INCL_SHLERRORS defined if INCL_ERRORS is defined *
16: * INCL_WINSWITCHLIST Include Switch List Calls *
17: * *
18: * History: *
19: * 17June88 DCR 24018 AP - moved Switch List + Program List API's *
20: * to PMSHLP.H *
21: * 23May88 DCR 23914 ...ies -> ize - SD, part 2 (remove old) *
22: * 16May88 DCR 23914 ...ies -> ize - SD *
23: * 9May88 PTR 3944 Message values - SD *
24: * *
25: \**********************************************************************/
26:
27: /* common types, constants and function declarations */
28:
29: /* maximum file name length */
30: #define MAXNAMEL 60
31:
32: /* program handle */
33: typedef LHANDLE HPROGRAM; /* hprog */
34: typedef HPROGRAM FAR * PHPROGRAM;
35:
36: /* window size structure */
37: typedef struct _XYWINSIZE { /* xywin */
38: SHORT x;
39: SHORT y;
40: SHORT cx;
41: SHORT cy;
42: SHORT fsWindow;
43: } XYWINSIZE;
44: typedef XYWINSIZE FAR *PXYWINSIZE;
45:
46: /* Definitions for fsWindow */ /* PTR 3317 */
47: #define XYF_NOAUTOCLOSE 0x0008 /* PTR 3317 */
48: #define XYF_MINIMIZED 0x0004 /* D23914 */
49: #define XYF_MAXIMIZED 0x0002 /* D23914 */
50: #define XYF_INVISIBLE 0x0001
51: #define XYF_NORMAL 0X0000
52:
53: #if (defined(INCL_WINSWITCHLIST) | !defined(INCL_NOCOMMON))
54:
55: typedef LHANDLE HSWITCH; /* hsw */
56: typedef HSWITCH FAR *PHSWITCH;
57:
58: /* visibility flag for SWCNTRL structure */
59: #define SWL_VISIBLE (BYTE)0x00
60: #define SWL_INVISIBLE (BYTE)0x01
61: #define SWL_GRAYED (BYTE)0x02
62:
63: /* visibility flag for SWCNTRL structure */
64: #define SWL_JUMPABLE (BYTE)0x00
65: #define SWL_NOTJUMPABLE (BYTE)0x01
66:
67: typedef struct _SWCNTRL { /* swctl */ /* DCR 23781 */
68: HWND hwnd; /* DCR 23781 */
69: HWND hwndIcon; /* DCR 23781 */
70: HPROGRAM hprog; /* DCR 23781 */
71: USHORT idProcess; /* DCR 23781 */
72: USHORT idSession; /* DCR 23781 */
73: UCHAR uchVisibility; /* DCR 23781 */
74: UCHAR fbJump; /* DCR 23781 */
75: CHAR szSwtitle[MAXNAMEL+1]; /* DCR 23781 */
76: BYTE fReserved; /* To align on word boundary */ /* DCR 23781 */
77: } SWCNTRL;
78: typedef SWCNTRL FAR *PSWCNTRL;
79:
80: /*** Switching Program functions */
81: HSWITCH APIENTRY WinAddSwitchEntry( PSWCNTRL );
82: USHORT APIENTRY WinRemoveSwitchEntry( HSWITCH );
83: USHORT APIENTRY WinSave( PSZ );
84:
85: /* PTR 3994 define message for WinSave */
86: #define WM_WINSAVE 0x008F /* WM_SHELLFIRST + 0x0F */
87:
88: #endif /* not INCL_NOCOMMON */
89:
90: #ifdef INCL_WINSWITCHLIST
91:
92: USHORT APIENTRY WinChangeSwitchEntry( HSWITCH, PSWCNTRL );
93: USHORT APIENTRY WinQueryTaskTitle( USHORT, PSZ , USHORT );
94:
95: #endif
96:
97: /* if error definitions are required then allow Shell errors */
98: #ifdef INCL_ERRORS
99: #define INCL_SHLERRORS
100: #endif /* INCL_ERRORS */
101:
102: #ifdef INCL_WINSHELLDATA
103:
104: /*** OS2.INI Access functions */
105: SHORT APIENTRY WinQueryProfileInt ( HAB , PSZ , PSZ , SHORT );
106: USHORT APIENTRY WinQueryProfileString ( HAB , PVOID , PVOID
107: , PVOID , PVOID , USHORT );
108: BOOL APIENTRY WinWriteProfileString ( HAB , PSZ , PVOID , PVOID );
109: USHORT APIENTRY WinQueryProfileSize ( HAB , PSZ , PSZ , PUSHORT );
110: USHORT APIENTRY WinQueryProfileData ( HAB , PSZ , PSZ , PVOID , PUSHORT );
111: USHORT APIENTRY WinWriteProfileData ( HAB , PSZ , PSZ , PVOID , USHORT );
112:
113: #endif /* INCL_WINSHELLDATA */
114:
115: #ifdef INCL_SHLERRORS
116:
117: #define PMERR_INVALID_PIB 0x1101
118: #define PMERR_INSUFF_SPACE_TO_ADD 0x1102
119: #define PMERR_INVALID_GROUP_HANDLE 0x1103
120: #define PMERR_DUPLICATE_TITLE 0x1104
121: #define PMERR_INVALID_TITLE 0x1105
122: #define PMERR_HANDLE_NOT_IN_GROUP 0x1107
123: #define PMERR_INVALID_TARGET_HANDLE 0x1106
124: #define PMERR_INVALID_PATH_STATEMENT 0x1108
125: #define PMERR_NO_PROGRAM_FOUND 0x1109
126: #define PMERR_INVALID_BUFFER_SIZE 0x110A
127: #define PMERR_BUFFER_TOO_SMALL 0x110B
128: #define PMERR_PL_INITIALISATION_FAIL 0x110C
129: #define PMERR_CANT_DESTROY_SYS_GROUP 0x110D
130: #define PMERR_INVALID_TYPE_CHANGE 0x110E
131: #define PMERR_INVALID_PROGRAM_HANDLE 0x110F
132:
133: #define PMERR_NOT_CURRENT_PL_VERSION 0x1110
134: #define PMERR_INVALID_CIRCULAR_REF 0x1111
135: #define PMERR_MEMORY_ALLOCATION_ERR 0x1112
136: #define PMERR_MEMORY_DEALLOCATION_ERR 0x1113
137: #define PMERR_TASK_HEADER_TOO_BIG 0x1114
138:
139: #define PMERR_DOS_ERROR 0x1200
140:
141: #define PMERR_NO_SPACE 0x1201
142: #define PMERR_INVALID_SWITCH_HANDLE 0x1202
143: #define PMERR_NO_HANDLE 0x1203
144: #define PMERR_INVALID_PROCESS_ID 0x1204
145: #define PMERR_NOT_SHELL 0x1205
146: #define PMERR_INVALID_WINDOW 0x1206
147: #define PMERR_INVALID_POST_MSG 0x1207
148: #define PMERR_INVALID_PARAMETERS 0x1208
149: #define PMERR_INVALID_PROGRAM_TYPE 0x1209
150: #define PMERR_NOT_EXTENDED_FOCUS 0x120A
151: #define PMERR_INVALID_SESSION_ID 0x120B
152:
153: #define PMERR_OPENING_INI_FILE 0x1301
154: #define PMERR_INI_FILE_CORRUPT 0x1302
155: #define PMERR_INVALID_PARM 0x1303
156: #define PMERR_NOT_IN_IDX 0x1304
157:
158: #define PMERR_INI_WRITE_FAIL 0x1306
159: #define PMERR_IDX_FULL 0x1307
160: #define PMERR_INI_PROTECTED 0x1308
161: #define PMERR_MEMORY_ALLOC 0x1309
162: #define PMERR_INI_INIT_ALREADY_DONE 0x130A
163: #define PMERR_INVALID_INTEGER 0x130B
164: #define PMERR_INVALID_ASCIIZ 0x130C
165: #define PMERR_CAN_NOT_CALL_SPOOLER 0x130D
166: #define PMERR_VALIDATION_REJECTED PMERR_CAN_NOT_CALL_SPOOLER
167:
168: #define PMERR_WARNING_WINDOW_NOT_KILLED 0x1401
169: #define PMERR_ERROR_INVALID_WINDOW 0x1402
170: #define PMERR_ALREADY_INITIALIZED 0x1403
171: #define PMERR_MSG_PROG_NO_MOU 0x1405
172: #define PMERR_MSG_PROG_NON_RECOV 0x1406
173: #define PMERR_WINCONV_INVALID_PATH 0x1407
174: #define PMERR_PI_NOT_INITIALISED 0x1408
175: #define PMERR_PL_NOT_INITIALISED 0x1409
176: #define PMERR_NO_TASK_MANAGER 0x140A
177: #define PMERR_SAVE_NOT_IN_PROGRESS 0x140B
178: #define PMERR_NO_STACK_SPACE 0x140C
179: #define PMERR_INVALID_COLR_FIELD 0x140d
180: #define PMERR_INVALID_COLR_VALUE 0x140e
181: #define PMERR_COLR_WRITE 0x140f
182:
183: #define PMERR_TARGET_FILE_EXISTS 0x1501
184: #define PMERR_SOURCE_SAME_AS_TARGET 0x1502
185: #define PMERR_SOURCE_FILE_NOT_FOUND 0x1503
186: #define PMERR_INVALID_NEW_PATH 0x1504
187: #define PMERR_TARGET_FILE_NOT_FOUND 0x1505
188: #define PMERR_INVALID_DRIVE_NUMBER 0x1506
189: #define PMERR_NAME_TOO_LONG 0x1507
190: #define PMERR_NOT_ENOUGH_ROOM_ON_DISK 0x1508
191: #define PMERR_NOT_ENOUGH_MEM 0x1509
192:
193: #define PMERR_LOG_DRV_DOES_NOT_EXIST 0x150B
194: #define PMERR_INVALID_DRIVE 0x150C
195: #define PMERR_ACCESS_DENIED 0x150D
196: #define PMERR_NO_FIRST_SLASH 0x150E
197: #define PMERR_READ_ONLY_FILE 0x150F
198:
199: #endif /* INCL_SHLERRORS */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.