|
1 |
|
2 /* ========================== Module _Menu ========================== */ |
|
3 |
|
4 #include "Python.h" |
|
5 |
|
6 #ifndef __LP64__ |
|
7 |
|
8 |
|
9 #include "pymactoolbox.h" |
|
10 |
|
11 /* Macro to test whether a weak-loaded CFM function exists */ |
|
12 #define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL ) {\ |
|
13 PyErr_SetString(PyExc_NotImplementedError, \ |
|
14 "Not available in this shared library/OS version"); \ |
|
15 return NULL; \ |
|
16 }} while(0) |
|
17 |
|
18 |
|
19 #include <Carbon/Carbon.h> |
|
20 |
|
21 |
|
22 #ifdef USE_TOOLBOX_OBJECT_GLUE |
|
23 |
|
24 extern PyObject *_MenuObj_New(MenuHandle); |
|
25 extern int _MenuObj_Convert(PyObject *, MenuHandle *); |
|
26 |
|
27 #define MenuObj_New _MenuObj_New |
|
28 #define MenuObj_Convert _MenuObj_Convert |
|
29 #endif |
|
30 |
|
31 #define as_Menu(h) ((MenuHandle)h) |
|
32 #define as_Resource(h) ((Handle)h) |
|
33 |
|
34 |
|
35 /* Alternative version of MenuObj_New, which returns None for NULL argument */ |
|
36 PyObject *OptMenuObj_New(MenuRef itself) |
|
37 { |
|
38 if (itself == NULL) { |
|
39 Py_INCREF(Py_None); |
|
40 return Py_None; |
|
41 } |
|
42 return MenuObj_New(itself); |
|
43 } |
|
44 |
|
45 /* Alternative version of MenuObj_Convert, which returns NULL for a None argument */ |
|
46 int OptMenuObj_Convert(PyObject *v, MenuRef *p_itself) |
|
47 { |
|
48 if ( v == Py_None ) { |
|
49 *p_itself = NULL; |
|
50 return 1; |
|
51 } |
|
52 return MenuObj_Convert(v, p_itself); |
|
53 } |
|
54 |
|
55 static PyObject *Menu_Error; |
|
56 |
|
57 /* ------------------------ Object type Menu ------------------------ */ |
|
58 |
|
59 PyTypeObject Menu_Type; |
|
60 |
|
61 #define MenuObj_Check(x) ((x)->ob_type == &Menu_Type || PyObject_TypeCheck((x), &Menu_Type)) |
|
62 |
|
63 typedef struct MenuObject { |
|
64 PyObject_HEAD |
|
65 MenuHandle ob_itself; |
|
66 } MenuObject; |
|
67 |
|
68 PyObject *MenuObj_New(MenuHandle itself) |
|
69 { |
|
70 MenuObject *it; |
|
71 it = PyObject_NEW(MenuObject, &Menu_Type); |
|
72 if (it == NULL) return NULL; |
|
73 it->ob_itself = itself; |
|
74 return (PyObject *)it; |
|
75 } |
|
76 |
|
77 int MenuObj_Convert(PyObject *v, MenuHandle *p_itself) |
|
78 { |
|
79 if (!MenuObj_Check(v)) |
|
80 { |
|
81 PyErr_SetString(PyExc_TypeError, "Menu required"); |
|
82 return 0; |
|
83 } |
|
84 *p_itself = ((MenuObject *)v)->ob_itself; |
|
85 return 1; |
|
86 } |
|
87 |
|
88 static void MenuObj_dealloc(MenuObject *self) |
|
89 { |
|
90 /* Cleanup of self->ob_itself goes here */ |
|
91 self->ob_type->tp_free((PyObject *)self); |
|
92 } |
|
93 |
|
94 static PyObject *MenuObj_DisposeMenu(MenuObject *_self, PyObject *_args) |
|
95 { |
|
96 PyObject *_res = NULL; |
|
97 #ifndef DisposeMenu |
|
98 PyMac_PRECHECK(DisposeMenu); |
|
99 #endif |
|
100 if (!PyArg_ParseTuple(_args, "")) |
|
101 return NULL; |
|
102 DisposeMenu(_self->ob_itself); |
|
103 Py_INCREF(Py_None); |
|
104 _res = Py_None; |
|
105 return _res; |
|
106 } |
|
107 |
|
108 static PyObject *MenuObj_CalcMenuSize(MenuObject *_self, PyObject *_args) |
|
109 { |
|
110 PyObject *_res = NULL; |
|
111 #ifndef CalcMenuSize |
|
112 PyMac_PRECHECK(CalcMenuSize); |
|
113 #endif |
|
114 if (!PyArg_ParseTuple(_args, "")) |
|
115 return NULL; |
|
116 CalcMenuSize(_self->ob_itself); |
|
117 Py_INCREF(Py_None); |
|
118 _res = Py_None; |
|
119 return _res; |
|
120 } |
|
121 |
|
122 static PyObject *MenuObj_CountMenuItems(MenuObject *_self, PyObject *_args) |
|
123 { |
|
124 PyObject *_res = NULL; |
|
125 UInt16 _rv; |
|
126 #ifndef CountMenuItems |
|
127 PyMac_PRECHECK(CountMenuItems); |
|
128 #endif |
|
129 if (!PyArg_ParseTuple(_args, "")) |
|
130 return NULL; |
|
131 _rv = CountMenuItems(_self->ob_itself); |
|
132 _res = Py_BuildValue("H", |
|
133 _rv); |
|
134 return _res; |
|
135 } |
|
136 |
|
137 static PyObject *MenuObj_GetMenuFont(MenuObject *_self, PyObject *_args) |
|
138 { |
|
139 PyObject *_res = NULL; |
|
140 OSStatus _err; |
|
141 SInt16 outFontID; |
|
142 UInt16 outFontSize; |
|
143 #ifndef GetMenuFont |
|
144 PyMac_PRECHECK(GetMenuFont); |
|
145 #endif |
|
146 if (!PyArg_ParseTuple(_args, "")) |
|
147 return NULL; |
|
148 _err = GetMenuFont(_self->ob_itself, |
|
149 &outFontID, |
|
150 &outFontSize); |
|
151 if (_err != noErr) return PyMac_Error(_err); |
|
152 _res = Py_BuildValue("hH", |
|
153 outFontID, |
|
154 outFontSize); |
|
155 return _res; |
|
156 } |
|
157 |
|
158 static PyObject *MenuObj_SetMenuFont(MenuObject *_self, PyObject *_args) |
|
159 { |
|
160 PyObject *_res = NULL; |
|
161 OSStatus _err; |
|
162 SInt16 inFontID; |
|
163 UInt16 inFontSize; |
|
164 #ifndef SetMenuFont |
|
165 PyMac_PRECHECK(SetMenuFont); |
|
166 #endif |
|
167 if (!PyArg_ParseTuple(_args, "hH", |
|
168 &inFontID, |
|
169 &inFontSize)) |
|
170 return NULL; |
|
171 _err = SetMenuFont(_self->ob_itself, |
|
172 inFontID, |
|
173 inFontSize); |
|
174 if (_err != noErr) return PyMac_Error(_err); |
|
175 Py_INCREF(Py_None); |
|
176 _res = Py_None; |
|
177 return _res; |
|
178 } |
|
179 |
|
180 static PyObject *MenuObj_GetMenuExcludesMarkColumn(MenuObject *_self, PyObject *_args) |
|
181 { |
|
182 PyObject *_res = NULL; |
|
183 Boolean _rv; |
|
184 #ifndef GetMenuExcludesMarkColumn |
|
185 PyMac_PRECHECK(GetMenuExcludesMarkColumn); |
|
186 #endif |
|
187 if (!PyArg_ParseTuple(_args, "")) |
|
188 return NULL; |
|
189 _rv = GetMenuExcludesMarkColumn(_self->ob_itself); |
|
190 _res = Py_BuildValue("b", |
|
191 _rv); |
|
192 return _res; |
|
193 } |
|
194 |
|
195 static PyObject *MenuObj_SetMenuExcludesMarkColumn(MenuObject *_self, PyObject *_args) |
|
196 { |
|
197 PyObject *_res = NULL; |
|
198 OSStatus _err; |
|
199 Boolean excludesMark; |
|
200 #ifndef SetMenuExcludesMarkColumn |
|
201 PyMac_PRECHECK(SetMenuExcludesMarkColumn); |
|
202 #endif |
|
203 if (!PyArg_ParseTuple(_args, "b", |
|
204 &excludesMark)) |
|
205 return NULL; |
|
206 _err = SetMenuExcludesMarkColumn(_self->ob_itself, |
|
207 excludesMark); |
|
208 if (_err != noErr) return PyMac_Error(_err); |
|
209 Py_INCREF(Py_None); |
|
210 _res = Py_None; |
|
211 return _res; |
|
212 } |
|
213 |
|
214 static PyObject *MenuObj_IsValidMenu(MenuObject *_self, PyObject *_args) |
|
215 { |
|
216 PyObject *_res = NULL; |
|
217 Boolean _rv; |
|
218 #ifndef IsValidMenu |
|
219 PyMac_PRECHECK(IsValidMenu); |
|
220 #endif |
|
221 if (!PyArg_ParseTuple(_args, "")) |
|
222 return NULL; |
|
223 _rv = IsValidMenu(_self->ob_itself); |
|
224 _res = Py_BuildValue("b", |
|
225 _rv); |
|
226 return _res; |
|
227 } |
|
228 |
|
229 static PyObject *MenuObj_GetMenuRetainCount(MenuObject *_self, PyObject *_args) |
|
230 { |
|
231 PyObject *_res = NULL; |
|
232 ItemCount _rv; |
|
233 #ifndef GetMenuRetainCount |
|
234 PyMac_PRECHECK(GetMenuRetainCount); |
|
235 #endif |
|
236 if (!PyArg_ParseTuple(_args, "")) |
|
237 return NULL; |
|
238 _rv = GetMenuRetainCount(_self->ob_itself); |
|
239 _res = Py_BuildValue("l", |
|
240 _rv); |
|
241 return _res; |
|
242 } |
|
243 |
|
244 static PyObject *MenuObj_RetainMenu(MenuObject *_self, PyObject *_args) |
|
245 { |
|
246 PyObject *_res = NULL; |
|
247 OSStatus _err; |
|
248 #ifndef RetainMenu |
|
249 PyMac_PRECHECK(RetainMenu); |
|
250 #endif |
|
251 if (!PyArg_ParseTuple(_args, "")) |
|
252 return NULL; |
|
253 _err = RetainMenu(_self->ob_itself); |
|
254 if (_err != noErr) return PyMac_Error(_err); |
|
255 Py_INCREF(Py_None); |
|
256 _res = Py_None; |
|
257 return _res; |
|
258 } |
|
259 |
|
260 static PyObject *MenuObj_ReleaseMenu(MenuObject *_self, PyObject *_args) |
|
261 { |
|
262 PyObject *_res = NULL; |
|
263 OSStatus _err; |
|
264 #ifndef ReleaseMenu |
|
265 PyMac_PRECHECK(ReleaseMenu); |
|
266 #endif |
|
267 if (!PyArg_ParseTuple(_args, "")) |
|
268 return NULL; |
|
269 _err = ReleaseMenu(_self->ob_itself); |
|
270 if (_err != noErr) return PyMac_Error(_err); |
|
271 Py_INCREF(Py_None); |
|
272 _res = Py_None; |
|
273 return _res; |
|
274 } |
|
275 |
|
276 static PyObject *MenuObj_DuplicateMenu(MenuObject *_self, PyObject *_args) |
|
277 { |
|
278 PyObject *_res = NULL; |
|
279 OSStatus _err; |
|
280 MenuHandle outMenu; |
|
281 #ifndef DuplicateMenu |
|
282 PyMac_PRECHECK(DuplicateMenu); |
|
283 #endif |
|
284 if (!PyArg_ParseTuple(_args, "")) |
|
285 return NULL; |
|
286 _err = DuplicateMenu(_self->ob_itself, |
|
287 &outMenu); |
|
288 if (_err != noErr) return PyMac_Error(_err); |
|
289 _res = Py_BuildValue("O&", |
|
290 MenuObj_New, outMenu); |
|
291 return _res; |
|
292 } |
|
293 |
|
294 static PyObject *MenuObj_CopyMenuTitleAsCFString(MenuObject *_self, PyObject *_args) |
|
295 { |
|
296 PyObject *_res = NULL; |
|
297 OSStatus _err; |
|
298 CFStringRef outString; |
|
299 #ifndef CopyMenuTitleAsCFString |
|
300 PyMac_PRECHECK(CopyMenuTitleAsCFString); |
|
301 #endif |
|
302 if (!PyArg_ParseTuple(_args, "")) |
|
303 return NULL; |
|
304 _err = CopyMenuTitleAsCFString(_self->ob_itself, |
|
305 &outString); |
|
306 if (_err != noErr) return PyMac_Error(_err); |
|
307 _res = Py_BuildValue("O&", |
|
308 CFStringRefObj_New, outString); |
|
309 return _res; |
|
310 } |
|
311 |
|
312 static PyObject *MenuObj_SetMenuTitleWithCFString(MenuObject *_self, PyObject *_args) |
|
313 { |
|
314 PyObject *_res = NULL; |
|
315 OSStatus _err; |
|
316 CFStringRef inString; |
|
317 #ifndef SetMenuTitleWithCFString |
|
318 PyMac_PRECHECK(SetMenuTitleWithCFString); |
|
319 #endif |
|
320 if (!PyArg_ParseTuple(_args, "O&", |
|
321 CFStringRefObj_Convert, &inString)) |
|
322 return NULL; |
|
323 _err = SetMenuTitleWithCFString(_self->ob_itself, |
|
324 inString); |
|
325 if (_err != noErr) return PyMac_Error(_err); |
|
326 Py_INCREF(Py_None); |
|
327 _res = Py_None; |
|
328 return _res; |
|
329 } |
|
330 |
|
331 static PyObject *MenuObj_InvalidateMenuSize(MenuObject *_self, PyObject *_args) |
|
332 { |
|
333 PyObject *_res = NULL; |
|
334 OSStatus _err; |
|
335 #ifndef InvalidateMenuSize |
|
336 PyMac_PRECHECK(InvalidateMenuSize); |
|
337 #endif |
|
338 if (!PyArg_ParseTuple(_args, "")) |
|
339 return NULL; |
|
340 _err = InvalidateMenuSize(_self->ob_itself); |
|
341 if (_err != noErr) return PyMac_Error(_err); |
|
342 Py_INCREF(Py_None); |
|
343 _res = Py_None; |
|
344 return _res; |
|
345 } |
|
346 |
|
347 static PyObject *MenuObj_IsMenuSizeInvalid(MenuObject *_self, PyObject *_args) |
|
348 { |
|
349 PyObject *_res = NULL; |
|
350 Boolean _rv; |
|
351 #ifndef IsMenuSizeInvalid |
|
352 PyMac_PRECHECK(IsMenuSizeInvalid); |
|
353 #endif |
|
354 if (!PyArg_ParseTuple(_args, "")) |
|
355 return NULL; |
|
356 _rv = IsMenuSizeInvalid(_self->ob_itself); |
|
357 _res = Py_BuildValue("b", |
|
358 _rv); |
|
359 return _res; |
|
360 } |
|
361 |
|
362 static PyObject *MenuObj_MacAppendMenu(MenuObject *_self, PyObject *_args) |
|
363 { |
|
364 PyObject *_res = NULL; |
|
365 Str255 data; |
|
366 #ifndef MacAppendMenu |
|
367 PyMac_PRECHECK(MacAppendMenu); |
|
368 #endif |
|
369 if (!PyArg_ParseTuple(_args, "O&", |
|
370 PyMac_GetStr255, data)) |
|
371 return NULL; |
|
372 MacAppendMenu(_self->ob_itself, |
|
373 data); |
|
374 Py_INCREF(Py_None); |
|
375 _res = Py_None; |
|
376 return _res; |
|
377 } |
|
378 |
|
379 static PyObject *MenuObj_InsertResMenu(MenuObject *_self, PyObject *_args) |
|
380 { |
|
381 PyObject *_res = NULL; |
|
382 ResType theType; |
|
383 short afterItem; |
|
384 #ifndef InsertResMenu |
|
385 PyMac_PRECHECK(InsertResMenu); |
|
386 #endif |
|
387 if (!PyArg_ParseTuple(_args, "O&h", |
|
388 PyMac_GetOSType, &theType, |
|
389 &afterItem)) |
|
390 return NULL; |
|
391 InsertResMenu(_self->ob_itself, |
|
392 theType, |
|
393 afterItem); |
|
394 Py_INCREF(Py_None); |
|
395 _res = Py_None; |
|
396 return _res; |
|
397 } |
|
398 |
|
399 static PyObject *MenuObj_AppendResMenu(MenuObject *_self, PyObject *_args) |
|
400 { |
|
401 PyObject *_res = NULL; |
|
402 ResType theType; |
|
403 #ifndef AppendResMenu |
|
404 PyMac_PRECHECK(AppendResMenu); |
|
405 #endif |
|
406 if (!PyArg_ParseTuple(_args, "O&", |
|
407 PyMac_GetOSType, &theType)) |
|
408 return NULL; |
|
409 AppendResMenu(_self->ob_itself, |
|
410 theType); |
|
411 Py_INCREF(Py_None); |
|
412 _res = Py_None; |
|
413 return _res; |
|
414 } |
|
415 |
|
416 static PyObject *MenuObj_MacInsertMenuItem(MenuObject *_self, PyObject *_args) |
|
417 { |
|
418 PyObject *_res = NULL; |
|
419 Str255 itemString; |
|
420 short afterItem; |
|
421 #ifndef MacInsertMenuItem |
|
422 PyMac_PRECHECK(MacInsertMenuItem); |
|
423 #endif |
|
424 if (!PyArg_ParseTuple(_args, "O&h", |
|
425 PyMac_GetStr255, itemString, |
|
426 &afterItem)) |
|
427 return NULL; |
|
428 MacInsertMenuItem(_self->ob_itself, |
|
429 itemString, |
|
430 afterItem); |
|
431 Py_INCREF(Py_None); |
|
432 _res = Py_None; |
|
433 return _res; |
|
434 } |
|
435 |
|
436 static PyObject *MenuObj_DeleteMenuItem(MenuObject *_self, PyObject *_args) |
|
437 { |
|
438 PyObject *_res = NULL; |
|
439 short item; |
|
440 #ifndef DeleteMenuItem |
|
441 PyMac_PRECHECK(DeleteMenuItem); |
|
442 #endif |
|
443 if (!PyArg_ParseTuple(_args, "h", |
|
444 &item)) |
|
445 return NULL; |
|
446 DeleteMenuItem(_self->ob_itself, |
|
447 item); |
|
448 Py_INCREF(Py_None); |
|
449 _res = Py_None; |
|
450 return _res; |
|
451 } |
|
452 |
|
453 static PyObject *MenuObj_InsertFontResMenu(MenuObject *_self, PyObject *_args) |
|
454 { |
|
455 PyObject *_res = NULL; |
|
456 short afterItem; |
|
457 short scriptFilter; |
|
458 #ifndef InsertFontResMenu |
|
459 PyMac_PRECHECK(InsertFontResMenu); |
|
460 #endif |
|
461 if (!PyArg_ParseTuple(_args, "hh", |
|
462 &afterItem, |
|
463 &scriptFilter)) |
|
464 return NULL; |
|
465 InsertFontResMenu(_self->ob_itself, |
|
466 afterItem, |
|
467 scriptFilter); |
|
468 Py_INCREF(Py_None); |
|
469 _res = Py_None; |
|
470 return _res; |
|
471 } |
|
472 |
|
473 static PyObject *MenuObj_InsertIntlResMenu(MenuObject *_self, PyObject *_args) |
|
474 { |
|
475 PyObject *_res = NULL; |
|
476 ResType theType; |
|
477 short afterItem; |
|
478 short scriptFilter; |
|
479 #ifndef InsertIntlResMenu |
|
480 PyMac_PRECHECK(InsertIntlResMenu); |
|
481 #endif |
|
482 if (!PyArg_ParseTuple(_args, "O&hh", |
|
483 PyMac_GetOSType, &theType, |
|
484 &afterItem, |
|
485 &scriptFilter)) |
|
486 return NULL; |
|
487 InsertIntlResMenu(_self->ob_itself, |
|
488 theType, |
|
489 afterItem, |
|
490 scriptFilter); |
|
491 Py_INCREF(Py_None); |
|
492 _res = Py_None; |
|
493 return _res; |
|
494 } |
|
495 |
|
496 static PyObject *MenuObj_AppendMenuItemText(MenuObject *_self, PyObject *_args) |
|
497 { |
|
498 PyObject *_res = NULL; |
|
499 OSStatus _err; |
|
500 Str255 inString; |
|
501 #ifndef AppendMenuItemText |
|
502 PyMac_PRECHECK(AppendMenuItemText); |
|
503 #endif |
|
504 if (!PyArg_ParseTuple(_args, "O&", |
|
505 PyMac_GetStr255, inString)) |
|
506 return NULL; |
|
507 _err = AppendMenuItemText(_self->ob_itself, |
|
508 inString); |
|
509 if (_err != noErr) return PyMac_Error(_err); |
|
510 Py_INCREF(Py_None); |
|
511 _res = Py_None; |
|
512 return _res; |
|
513 } |
|
514 |
|
515 static PyObject *MenuObj_InsertMenuItemText(MenuObject *_self, PyObject *_args) |
|
516 { |
|
517 PyObject *_res = NULL; |
|
518 OSStatus _err; |
|
519 Str255 inString; |
|
520 MenuItemIndex afterItem; |
|
521 #ifndef InsertMenuItemText |
|
522 PyMac_PRECHECK(InsertMenuItemText); |
|
523 #endif |
|
524 if (!PyArg_ParseTuple(_args, "O&h", |
|
525 PyMac_GetStr255, inString, |
|
526 &afterItem)) |
|
527 return NULL; |
|
528 _err = InsertMenuItemText(_self->ob_itself, |
|
529 inString, |
|
530 afterItem); |
|
531 if (_err != noErr) return PyMac_Error(_err); |
|
532 Py_INCREF(Py_None); |
|
533 _res = Py_None; |
|
534 return _res; |
|
535 } |
|
536 |
|
537 static PyObject *MenuObj_CopyMenuItems(MenuObject *_self, PyObject *_args) |
|
538 { |
|
539 PyObject *_res = NULL; |
|
540 OSStatus _err; |
|
541 MenuItemIndex inFirstItem; |
|
542 ItemCount inNumItems; |
|
543 MenuHandle inDestMenu; |
|
544 MenuItemIndex inInsertAfter; |
|
545 #ifndef CopyMenuItems |
|
546 PyMac_PRECHECK(CopyMenuItems); |
|
547 #endif |
|
548 if (!PyArg_ParseTuple(_args, "hlO&h", |
|
549 &inFirstItem, |
|
550 &inNumItems, |
|
551 MenuObj_Convert, &inDestMenu, |
|
552 &inInsertAfter)) |
|
553 return NULL; |
|
554 _err = CopyMenuItems(_self->ob_itself, |
|
555 inFirstItem, |
|
556 inNumItems, |
|
557 inDestMenu, |
|
558 inInsertAfter); |
|
559 if (_err != noErr) return PyMac_Error(_err); |
|
560 Py_INCREF(Py_None); |
|
561 _res = Py_None; |
|
562 return _res; |
|
563 } |
|
564 |
|
565 static PyObject *MenuObj_DeleteMenuItems(MenuObject *_self, PyObject *_args) |
|
566 { |
|
567 PyObject *_res = NULL; |
|
568 OSStatus _err; |
|
569 MenuItemIndex inFirstItem; |
|
570 ItemCount inNumItems; |
|
571 #ifndef DeleteMenuItems |
|
572 PyMac_PRECHECK(DeleteMenuItems); |
|
573 #endif |
|
574 if (!PyArg_ParseTuple(_args, "hl", |
|
575 &inFirstItem, |
|
576 &inNumItems)) |
|
577 return NULL; |
|
578 _err = DeleteMenuItems(_self->ob_itself, |
|
579 inFirstItem, |
|
580 inNumItems); |
|
581 if (_err != noErr) return PyMac_Error(_err); |
|
582 Py_INCREF(Py_None); |
|
583 _res = Py_None; |
|
584 return _res; |
|
585 } |
|
586 |
|
587 static PyObject *MenuObj_AppendMenuItemTextWithCFString(MenuObject *_self, PyObject *_args) |
|
588 { |
|
589 PyObject *_res = NULL; |
|
590 OSStatus _err; |
|
591 CFStringRef inString; |
|
592 MenuItemAttributes inAttributes; |
|
593 MenuCommand inCommandID; |
|
594 MenuItemIndex outNewItem; |
|
595 #ifndef AppendMenuItemTextWithCFString |
|
596 PyMac_PRECHECK(AppendMenuItemTextWithCFString); |
|
597 #endif |
|
598 if (!PyArg_ParseTuple(_args, "O&ll", |
|
599 CFStringRefObj_Convert, &inString, |
|
600 &inAttributes, |
|
601 &inCommandID)) |
|
602 return NULL; |
|
603 _err = AppendMenuItemTextWithCFString(_self->ob_itself, |
|
604 inString, |
|
605 inAttributes, |
|
606 inCommandID, |
|
607 &outNewItem); |
|
608 if (_err != noErr) return PyMac_Error(_err); |
|
609 _res = Py_BuildValue("h", |
|
610 outNewItem); |
|
611 return _res; |
|
612 } |
|
613 |
|
614 static PyObject *MenuObj_InsertMenuItemTextWithCFString(MenuObject *_self, PyObject *_args) |
|
615 { |
|
616 PyObject *_res = NULL; |
|
617 OSStatus _err; |
|
618 CFStringRef inString; |
|
619 MenuItemIndex inAfterItem; |
|
620 MenuItemAttributes inAttributes; |
|
621 MenuCommand inCommandID; |
|
622 #ifndef InsertMenuItemTextWithCFString |
|
623 PyMac_PRECHECK(InsertMenuItemTextWithCFString); |
|
624 #endif |
|
625 if (!PyArg_ParseTuple(_args, "O&hll", |
|
626 CFStringRefObj_Convert, &inString, |
|
627 &inAfterItem, |
|
628 &inAttributes, |
|
629 &inCommandID)) |
|
630 return NULL; |
|
631 _err = InsertMenuItemTextWithCFString(_self->ob_itself, |
|
632 inString, |
|
633 inAfterItem, |
|
634 inAttributes, |
|
635 inCommandID); |
|
636 if (_err != noErr) return PyMac_Error(_err); |
|
637 Py_INCREF(Py_None); |
|
638 _res = Py_None; |
|
639 return _res; |
|
640 } |
|
641 |
|
642 static PyObject *MenuObj_PopUpMenuSelect(MenuObject *_self, PyObject *_args) |
|
643 { |
|
644 PyObject *_res = NULL; |
|
645 long _rv; |
|
646 short top; |
|
647 short left; |
|
648 short popUpItem; |
|
649 #ifndef PopUpMenuSelect |
|
650 PyMac_PRECHECK(PopUpMenuSelect); |
|
651 #endif |
|
652 if (!PyArg_ParseTuple(_args, "hhh", |
|
653 &top, |
|
654 &left, |
|
655 &popUpItem)) |
|
656 return NULL; |
|
657 _rv = PopUpMenuSelect(_self->ob_itself, |
|
658 top, |
|
659 left, |
|
660 popUpItem); |
|
661 _res = Py_BuildValue("l", |
|
662 _rv); |
|
663 return _res; |
|
664 } |
|
665 |
|
666 static PyObject *MenuObj_InvalidateMenuEnabling(MenuObject *_self, PyObject *_args) |
|
667 { |
|
668 PyObject *_res = NULL; |
|
669 OSStatus _err; |
|
670 #ifndef InvalidateMenuEnabling |
|
671 PyMac_PRECHECK(InvalidateMenuEnabling); |
|
672 #endif |
|
673 if (!PyArg_ParseTuple(_args, "")) |
|
674 return NULL; |
|
675 _err = InvalidateMenuEnabling(_self->ob_itself); |
|
676 if (_err != noErr) return PyMac_Error(_err); |
|
677 Py_INCREF(Py_None); |
|
678 _res = Py_None; |
|
679 return _res; |
|
680 } |
|
681 |
|
682 static PyObject *MenuObj_IsMenuBarInvalid(MenuObject *_self, PyObject *_args) |
|
683 { |
|
684 PyObject *_res = NULL; |
|
685 Boolean _rv; |
|
686 #ifndef IsMenuBarInvalid |
|
687 PyMac_PRECHECK(IsMenuBarInvalid); |
|
688 #endif |
|
689 if (!PyArg_ParseTuple(_args, "")) |
|
690 return NULL; |
|
691 _rv = IsMenuBarInvalid(_self->ob_itself); |
|
692 _res = Py_BuildValue("b", |
|
693 _rv); |
|
694 return _res; |
|
695 } |
|
696 |
|
697 static PyObject *MenuObj_MacInsertMenu(MenuObject *_self, PyObject *_args) |
|
698 { |
|
699 PyObject *_res = NULL; |
|
700 MenuID beforeID; |
|
701 #ifndef MacInsertMenu |
|
702 PyMac_PRECHECK(MacInsertMenu); |
|
703 #endif |
|
704 if (!PyArg_ParseTuple(_args, "h", |
|
705 &beforeID)) |
|
706 return NULL; |
|
707 MacInsertMenu(_self->ob_itself, |
|
708 beforeID); |
|
709 Py_INCREF(Py_None); |
|
710 _res = Py_None; |
|
711 return _res; |
|
712 } |
|
713 |
|
714 static PyObject *MenuObj_SetRootMenu(MenuObject *_self, PyObject *_args) |
|
715 { |
|
716 PyObject *_res = NULL; |
|
717 OSStatus _err; |
|
718 #ifndef SetRootMenu |
|
719 PyMac_PRECHECK(SetRootMenu); |
|
720 #endif |
|
721 if (!PyArg_ParseTuple(_args, "")) |
|
722 return NULL; |
|
723 _err = SetRootMenu(_self->ob_itself); |
|
724 if (_err != noErr) return PyMac_Error(_err); |
|
725 Py_INCREF(Py_None); |
|
726 _res = Py_None; |
|
727 return _res; |
|
728 } |
|
729 |
|
730 static PyObject *MenuObj_MacCheckMenuItem(MenuObject *_self, PyObject *_args) |
|
731 { |
|
732 PyObject *_res = NULL; |
|
733 short item; |
|
734 Boolean checked; |
|
735 #ifndef MacCheckMenuItem |
|
736 PyMac_PRECHECK(MacCheckMenuItem); |
|
737 #endif |
|
738 if (!PyArg_ParseTuple(_args, "hb", |
|
739 &item, |
|
740 &checked)) |
|
741 return NULL; |
|
742 MacCheckMenuItem(_self->ob_itself, |
|
743 item, |
|
744 checked); |
|
745 Py_INCREF(Py_None); |
|
746 _res = Py_None; |
|
747 return _res; |
|
748 } |
|
749 |
|
750 static PyObject *MenuObj_SetMenuItemText(MenuObject *_self, PyObject *_args) |
|
751 { |
|
752 PyObject *_res = NULL; |
|
753 short item; |
|
754 Str255 itemString; |
|
755 #ifndef SetMenuItemText |
|
756 PyMac_PRECHECK(SetMenuItemText); |
|
757 #endif |
|
758 if (!PyArg_ParseTuple(_args, "hO&", |
|
759 &item, |
|
760 PyMac_GetStr255, itemString)) |
|
761 return NULL; |
|
762 SetMenuItemText(_self->ob_itself, |
|
763 item, |
|
764 itemString); |
|
765 Py_INCREF(Py_None); |
|
766 _res = Py_None; |
|
767 return _res; |
|
768 } |
|
769 |
|
770 static PyObject *MenuObj_GetMenuItemText(MenuObject *_self, PyObject *_args) |
|
771 { |
|
772 PyObject *_res = NULL; |
|
773 short item; |
|
774 Str255 itemString; |
|
775 #ifndef GetMenuItemText |
|
776 PyMac_PRECHECK(GetMenuItemText); |
|
777 #endif |
|
778 if (!PyArg_ParseTuple(_args, "h", |
|
779 &item)) |
|
780 return NULL; |
|
781 GetMenuItemText(_self->ob_itself, |
|
782 item, |
|
783 itemString); |
|
784 _res = Py_BuildValue("O&", |
|
785 PyMac_BuildStr255, itemString); |
|
786 return _res; |
|
787 } |
|
788 |
|
789 static PyObject *MenuObj_SetItemMark(MenuObject *_self, PyObject *_args) |
|
790 { |
|
791 PyObject *_res = NULL; |
|
792 short item; |
|
793 CharParameter markChar; |
|
794 #ifndef SetItemMark |
|
795 PyMac_PRECHECK(SetItemMark); |
|
796 #endif |
|
797 if (!PyArg_ParseTuple(_args, "hh", |
|
798 &item, |
|
799 &markChar)) |
|
800 return NULL; |
|
801 SetItemMark(_self->ob_itself, |
|
802 item, |
|
803 markChar); |
|
804 Py_INCREF(Py_None); |
|
805 _res = Py_None; |
|
806 return _res; |
|
807 } |
|
808 |
|
809 static PyObject *MenuObj_GetItemMark(MenuObject *_self, PyObject *_args) |
|
810 { |
|
811 PyObject *_res = NULL; |
|
812 short item; |
|
813 CharParameter markChar; |
|
814 #ifndef GetItemMark |
|
815 PyMac_PRECHECK(GetItemMark); |
|
816 #endif |
|
817 if (!PyArg_ParseTuple(_args, "h", |
|
818 &item)) |
|
819 return NULL; |
|
820 GetItemMark(_self->ob_itself, |
|
821 item, |
|
822 &markChar); |
|
823 _res = Py_BuildValue("h", |
|
824 markChar); |
|
825 return _res; |
|
826 } |
|
827 |
|
828 static PyObject *MenuObj_SetItemCmd(MenuObject *_self, PyObject *_args) |
|
829 { |
|
830 PyObject *_res = NULL; |
|
831 short item; |
|
832 CharParameter cmdChar; |
|
833 #ifndef SetItemCmd |
|
834 PyMac_PRECHECK(SetItemCmd); |
|
835 #endif |
|
836 if (!PyArg_ParseTuple(_args, "hh", |
|
837 &item, |
|
838 &cmdChar)) |
|
839 return NULL; |
|
840 SetItemCmd(_self->ob_itself, |
|
841 item, |
|
842 cmdChar); |
|
843 Py_INCREF(Py_None); |
|
844 _res = Py_None; |
|
845 return _res; |
|
846 } |
|
847 |
|
848 static PyObject *MenuObj_GetItemCmd(MenuObject *_self, PyObject *_args) |
|
849 { |
|
850 PyObject *_res = NULL; |
|
851 short item; |
|
852 CharParameter cmdChar; |
|
853 #ifndef GetItemCmd |
|
854 PyMac_PRECHECK(GetItemCmd); |
|
855 #endif |
|
856 if (!PyArg_ParseTuple(_args, "h", |
|
857 &item)) |
|
858 return NULL; |
|
859 GetItemCmd(_self->ob_itself, |
|
860 item, |
|
861 &cmdChar); |
|
862 _res = Py_BuildValue("h", |
|
863 cmdChar); |
|
864 return _res; |
|
865 } |
|
866 |
|
867 static PyObject *MenuObj_SetItemIcon(MenuObject *_self, PyObject *_args) |
|
868 { |
|
869 PyObject *_res = NULL; |
|
870 short item; |
|
871 short iconIndex; |
|
872 #ifndef SetItemIcon |
|
873 PyMac_PRECHECK(SetItemIcon); |
|
874 #endif |
|
875 if (!PyArg_ParseTuple(_args, "hh", |
|
876 &item, |
|
877 &iconIndex)) |
|
878 return NULL; |
|
879 SetItemIcon(_self->ob_itself, |
|
880 item, |
|
881 iconIndex); |
|
882 Py_INCREF(Py_None); |
|
883 _res = Py_None; |
|
884 return _res; |
|
885 } |
|
886 |
|
887 static PyObject *MenuObj_GetItemIcon(MenuObject *_self, PyObject *_args) |
|
888 { |
|
889 PyObject *_res = NULL; |
|
890 short item; |
|
891 short iconIndex; |
|
892 #ifndef GetItemIcon |
|
893 PyMac_PRECHECK(GetItemIcon); |
|
894 #endif |
|
895 if (!PyArg_ParseTuple(_args, "h", |
|
896 &item)) |
|
897 return NULL; |
|
898 GetItemIcon(_self->ob_itself, |
|
899 item, |
|
900 &iconIndex); |
|
901 _res = Py_BuildValue("h", |
|
902 iconIndex); |
|
903 return _res; |
|
904 } |
|
905 |
|
906 static PyObject *MenuObj_SetItemStyle(MenuObject *_self, PyObject *_args) |
|
907 { |
|
908 PyObject *_res = NULL; |
|
909 short item; |
|
910 StyleParameter chStyle; |
|
911 #ifndef SetItemStyle |
|
912 PyMac_PRECHECK(SetItemStyle); |
|
913 #endif |
|
914 if (!PyArg_ParseTuple(_args, "hh", |
|
915 &item, |
|
916 &chStyle)) |
|
917 return NULL; |
|
918 SetItemStyle(_self->ob_itself, |
|
919 item, |
|
920 chStyle); |
|
921 Py_INCREF(Py_None); |
|
922 _res = Py_None; |
|
923 return _res; |
|
924 } |
|
925 |
|
926 static PyObject *MenuObj_GetItemStyle(MenuObject *_self, PyObject *_args) |
|
927 { |
|
928 PyObject *_res = NULL; |
|
929 short item; |
|
930 Style chStyle; |
|
931 #ifndef GetItemStyle |
|
932 PyMac_PRECHECK(GetItemStyle); |
|
933 #endif |
|
934 if (!PyArg_ParseTuple(_args, "h", |
|
935 &item)) |
|
936 return NULL; |
|
937 GetItemStyle(_self->ob_itself, |
|
938 item, |
|
939 &chStyle); |
|
940 _res = Py_BuildValue("b", |
|
941 chStyle); |
|
942 return _res; |
|
943 } |
|
944 |
|
945 static PyObject *MenuObj_SetMenuItemCommandID(MenuObject *_self, PyObject *_args) |
|
946 { |
|
947 PyObject *_res = NULL; |
|
948 OSErr _err; |
|
949 SInt16 inItem; |
|
950 MenuCommand inCommandID; |
|
951 #ifndef SetMenuItemCommandID |
|
952 PyMac_PRECHECK(SetMenuItemCommandID); |
|
953 #endif |
|
954 if (!PyArg_ParseTuple(_args, "hl", |
|
955 &inItem, |
|
956 &inCommandID)) |
|
957 return NULL; |
|
958 _err = SetMenuItemCommandID(_self->ob_itself, |
|
959 inItem, |
|
960 inCommandID); |
|
961 if (_err != noErr) return PyMac_Error(_err); |
|
962 Py_INCREF(Py_None); |
|
963 _res = Py_None; |
|
964 return _res; |
|
965 } |
|
966 |
|
967 static PyObject *MenuObj_GetMenuItemCommandID(MenuObject *_self, PyObject *_args) |
|
968 { |
|
969 PyObject *_res = NULL; |
|
970 OSErr _err; |
|
971 SInt16 inItem; |
|
972 MenuCommand outCommandID; |
|
973 #ifndef GetMenuItemCommandID |
|
974 PyMac_PRECHECK(GetMenuItemCommandID); |
|
975 #endif |
|
976 if (!PyArg_ParseTuple(_args, "h", |
|
977 &inItem)) |
|
978 return NULL; |
|
979 _err = GetMenuItemCommandID(_self->ob_itself, |
|
980 inItem, |
|
981 &outCommandID); |
|
982 if (_err != noErr) return PyMac_Error(_err); |
|
983 _res = Py_BuildValue("l", |
|
984 outCommandID); |
|
985 return _res; |
|
986 } |
|
987 |
|
988 static PyObject *MenuObj_SetMenuItemModifiers(MenuObject *_self, PyObject *_args) |
|
989 { |
|
990 PyObject *_res = NULL; |
|
991 OSErr _err; |
|
992 SInt16 inItem; |
|
993 UInt8 inModifiers; |
|
994 #ifndef SetMenuItemModifiers |
|
995 PyMac_PRECHECK(SetMenuItemModifiers); |
|
996 #endif |
|
997 if (!PyArg_ParseTuple(_args, "hb", |
|
998 &inItem, |
|
999 &inModifiers)) |
|
1000 return NULL; |
|
1001 _err = SetMenuItemModifiers(_self->ob_itself, |
|
1002 inItem, |
|
1003 inModifiers); |
|
1004 if (_err != noErr) return PyMac_Error(_err); |
|
1005 Py_INCREF(Py_None); |
|
1006 _res = Py_None; |
|
1007 return _res; |
|
1008 } |
|
1009 |
|
1010 static PyObject *MenuObj_GetMenuItemModifiers(MenuObject *_self, PyObject *_args) |
|
1011 { |
|
1012 PyObject *_res = NULL; |
|
1013 OSErr _err; |
|
1014 SInt16 inItem; |
|
1015 UInt8 outModifiers; |
|
1016 #ifndef GetMenuItemModifiers |
|
1017 PyMac_PRECHECK(GetMenuItemModifiers); |
|
1018 #endif |
|
1019 if (!PyArg_ParseTuple(_args, "h", |
|
1020 &inItem)) |
|
1021 return NULL; |
|
1022 _err = GetMenuItemModifiers(_self->ob_itself, |
|
1023 inItem, |
|
1024 &outModifiers); |
|
1025 if (_err != noErr) return PyMac_Error(_err); |
|
1026 _res = Py_BuildValue("b", |
|
1027 outModifiers); |
|
1028 return _res; |
|
1029 } |
|
1030 |
|
1031 static PyObject *MenuObj_SetMenuItemIconHandle(MenuObject *_self, PyObject *_args) |
|
1032 { |
|
1033 PyObject *_res = NULL; |
|
1034 OSErr _err; |
|
1035 SInt16 inItem; |
|
1036 UInt8 inIconType; |
|
1037 Handle inIconHandle; |
|
1038 #ifndef SetMenuItemIconHandle |
|
1039 PyMac_PRECHECK(SetMenuItemIconHandle); |
|
1040 #endif |
|
1041 if (!PyArg_ParseTuple(_args, "hbO&", |
|
1042 &inItem, |
|
1043 &inIconType, |
|
1044 ResObj_Convert, &inIconHandle)) |
|
1045 return NULL; |
|
1046 _err = SetMenuItemIconHandle(_self->ob_itself, |
|
1047 inItem, |
|
1048 inIconType, |
|
1049 inIconHandle); |
|
1050 if (_err != noErr) return PyMac_Error(_err); |
|
1051 Py_INCREF(Py_None); |
|
1052 _res = Py_None; |
|
1053 return _res; |
|
1054 } |
|
1055 |
|
1056 static PyObject *MenuObj_GetMenuItemIconHandle(MenuObject *_self, PyObject *_args) |
|
1057 { |
|
1058 PyObject *_res = NULL; |
|
1059 OSErr _err; |
|
1060 SInt16 inItem; |
|
1061 UInt8 outIconType; |
|
1062 Handle outIconHandle; |
|
1063 #ifndef GetMenuItemIconHandle |
|
1064 PyMac_PRECHECK(GetMenuItemIconHandle); |
|
1065 #endif |
|
1066 if (!PyArg_ParseTuple(_args, "h", |
|
1067 &inItem)) |
|
1068 return NULL; |
|
1069 _err = GetMenuItemIconHandle(_self->ob_itself, |
|
1070 inItem, |
|
1071 &outIconType, |
|
1072 &outIconHandle); |
|
1073 if (_err != noErr) return PyMac_Error(_err); |
|
1074 _res = Py_BuildValue("bO&", |
|
1075 outIconType, |
|
1076 ResObj_New, outIconHandle); |
|
1077 return _res; |
|
1078 } |
|
1079 |
|
1080 static PyObject *MenuObj_SetMenuItemTextEncoding(MenuObject *_self, PyObject *_args) |
|
1081 { |
|
1082 PyObject *_res = NULL; |
|
1083 OSErr _err; |
|
1084 SInt16 inItem; |
|
1085 TextEncoding inScriptID; |
|
1086 #ifndef SetMenuItemTextEncoding |
|
1087 PyMac_PRECHECK(SetMenuItemTextEncoding); |
|
1088 #endif |
|
1089 if (!PyArg_ParseTuple(_args, "hl", |
|
1090 &inItem, |
|
1091 &inScriptID)) |
|
1092 return NULL; |
|
1093 _err = SetMenuItemTextEncoding(_self->ob_itself, |
|
1094 inItem, |
|
1095 inScriptID); |
|
1096 if (_err != noErr) return PyMac_Error(_err); |
|
1097 Py_INCREF(Py_None); |
|
1098 _res = Py_None; |
|
1099 return _res; |
|
1100 } |
|
1101 |
|
1102 static PyObject *MenuObj_GetMenuItemTextEncoding(MenuObject *_self, PyObject *_args) |
|
1103 { |
|
1104 PyObject *_res = NULL; |
|
1105 OSErr _err; |
|
1106 SInt16 inItem; |
|
1107 TextEncoding outScriptID; |
|
1108 #ifndef GetMenuItemTextEncoding |
|
1109 PyMac_PRECHECK(GetMenuItemTextEncoding); |
|
1110 #endif |
|
1111 if (!PyArg_ParseTuple(_args, "h", |
|
1112 &inItem)) |
|
1113 return NULL; |
|
1114 _err = GetMenuItemTextEncoding(_self->ob_itself, |
|
1115 inItem, |
|
1116 &outScriptID); |
|
1117 if (_err != noErr) return PyMac_Error(_err); |
|
1118 _res = Py_BuildValue("l", |
|
1119 outScriptID); |
|
1120 return _res; |
|
1121 } |
|
1122 |
|
1123 static PyObject *MenuObj_SetMenuItemHierarchicalID(MenuObject *_self, PyObject *_args) |
|
1124 { |
|
1125 PyObject *_res = NULL; |
|
1126 OSErr _err; |
|
1127 SInt16 inItem; |
|
1128 MenuID inHierID; |
|
1129 #ifndef SetMenuItemHierarchicalID |
|
1130 PyMac_PRECHECK(SetMenuItemHierarchicalID); |
|
1131 #endif |
|
1132 if (!PyArg_ParseTuple(_args, "hh", |
|
1133 &inItem, |
|
1134 &inHierID)) |
|
1135 return NULL; |
|
1136 _err = SetMenuItemHierarchicalID(_self->ob_itself, |
|
1137 inItem, |
|
1138 inHierID); |
|
1139 if (_err != noErr) return PyMac_Error(_err); |
|
1140 Py_INCREF(Py_None); |
|
1141 _res = Py_None; |
|
1142 return _res; |
|
1143 } |
|
1144 |
|
1145 static PyObject *MenuObj_GetMenuItemHierarchicalID(MenuObject *_self, PyObject *_args) |
|
1146 { |
|
1147 PyObject *_res = NULL; |
|
1148 OSErr _err; |
|
1149 SInt16 inItem; |
|
1150 MenuID outHierID; |
|
1151 #ifndef GetMenuItemHierarchicalID |
|
1152 PyMac_PRECHECK(GetMenuItemHierarchicalID); |
|
1153 #endif |
|
1154 if (!PyArg_ParseTuple(_args, "h", |
|
1155 &inItem)) |
|
1156 return NULL; |
|
1157 _err = GetMenuItemHierarchicalID(_self->ob_itself, |
|
1158 inItem, |
|
1159 &outHierID); |
|
1160 if (_err != noErr) return PyMac_Error(_err); |
|
1161 _res = Py_BuildValue("h", |
|
1162 outHierID); |
|
1163 return _res; |
|
1164 } |
|
1165 |
|
1166 static PyObject *MenuObj_SetMenuItemFontID(MenuObject *_self, PyObject *_args) |
|
1167 { |
|
1168 PyObject *_res = NULL; |
|
1169 OSErr _err; |
|
1170 SInt16 inItem; |
|
1171 SInt16 inFontID; |
|
1172 #ifndef SetMenuItemFontID |
|
1173 PyMac_PRECHECK(SetMenuItemFontID); |
|
1174 #endif |
|
1175 if (!PyArg_ParseTuple(_args, "hh", |
|
1176 &inItem, |
|
1177 &inFontID)) |
|
1178 return NULL; |
|
1179 _err = SetMenuItemFontID(_self->ob_itself, |
|
1180 inItem, |
|
1181 inFontID); |
|
1182 if (_err != noErr) return PyMac_Error(_err); |
|
1183 Py_INCREF(Py_None); |
|
1184 _res = Py_None; |
|
1185 return _res; |
|
1186 } |
|
1187 |
|
1188 static PyObject *MenuObj_GetMenuItemFontID(MenuObject *_self, PyObject *_args) |
|
1189 { |
|
1190 PyObject *_res = NULL; |
|
1191 OSErr _err; |
|
1192 SInt16 inItem; |
|
1193 SInt16 outFontID; |
|
1194 #ifndef GetMenuItemFontID |
|
1195 PyMac_PRECHECK(GetMenuItemFontID); |
|
1196 #endif |
|
1197 if (!PyArg_ParseTuple(_args, "h", |
|
1198 &inItem)) |
|
1199 return NULL; |
|
1200 _err = GetMenuItemFontID(_self->ob_itself, |
|
1201 inItem, |
|
1202 &outFontID); |
|
1203 if (_err != noErr) return PyMac_Error(_err); |
|
1204 _res = Py_BuildValue("h", |
|
1205 outFontID); |
|
1206 return _res; |
|
1207 } |
|
1208 |
|
1209 static PyObject *MenuObj_SetMenuItemRefCon(MenuObject *_self, PyObject *_args) |
|
1210 { |
|
1211 PyObject *_res = NULL; |
|
1212 OSErr _err; |
|
1213 SInt16 inItem; |
|
1214 UInt32 inRefCon; |
|
1215 #ifndef SetMenuItemRefCon |
|
1216 PyMac_PRECHECK(SetMenuItemRefCon); |
|
1217 #endif |
|
1218 if (!PyArg_ParseTuple(_args, "hl", |
|
1219 &inItem, |
|
1220 &inRefCon)) |
|
1221 return NULL; |
|
1222 _err = SetMenuItemRefCon(_self->ob_itself, |
|
1223 inItem, |
|
1224 inRefCon); |
|
1225 if (_err != noErr) return PyMac_Error(_err); |
|
1226 Py_INCREF(Py_None); |
|
1227 _res = Py_None; |
|
1228 return _res; |
|
1229 } |
|
1230 |
|
1231 static PyObject *MenuObj_GetMenuItemRefCon(MenuObject *_self, PyObject *_args) |
|
1232 { |
|
1233 PyObject *_res = NULL; |
|
1234 OSErr _err; |
|
1235 SInt16 inItem; |
|
1236 UInt32 outRefCon; |
|
1237 #ifndef GetMenuItemRefCon |
|
1238 PyMac_PRECHECK(GetMenuItemRefCon); |
|
1239 #endif |
|
1240 if (!PyArg_ParseTuple(_args, "h", |
|
1241 &inItem)) |
|
1242 return NULL; |
|
1243 _err = GetMenuItemRefCon(_self->ob_itself, |
|
1244 inItem, |
|
1245 &outRefCon); |
|
1246 if (_err != noErr) return PyMac_Error(_err); |
|
1247 _res = Py_BuildValue("l", |
|
1248 outRefCon); |
|
1249 return _res; |
|
1250 } |
|
1251 |
|
1252 static PyObject *MenuObj_SetMenuItemKeyGlyph(MenuObject *_self, PyObject *_args) |
|
1253 { |
|
1254 PyObject *_res = NULL; |
|
1255 OSErr _err; |
|
1256 SInt16 inItem; |
|
1257 SInt16 inGlyph; |
|
1258 #ifndef SetMenuItemKeyGlyph |
|
1259 PyMac_PRECHECK(SetMenuItemKeyGlyph); |
|
1260 #endif |
|
1261 if (!PyArg_ParseTuple(_args, "hh", |
|
1262 &inItem, |
|
1263 &inGlyph)) |
|
1264 return NULL; |
|
1265 _err = SetMenuItemKeyGlyph(_self->ob_itself, |
|
1266 inItem, |
|
1267 inGlyph); |
|
1268 if (_err != noErr) return PyMac_Error(_err); |
|
1269 Py_INCREF(Py_None); |
|
1270 _res = Py_None; |
|
1271 return _res; |
|
1272 } |
|
1273 |
|
1274 static PyObject *MenuObj_GetMenuItemKeyGlyph(MenuObject *_self, PyObject *_args) |
|
1275 { |
|
1276 PyObject *_res = NULL; |
|
1277 OSErr _err; |
|
1278 SInt16 inItem; |
|
1279 SInt16 outGlyph; |
|
1280 #ifndef GetMenuItemKeyGlyph |
|
1281 PyMac_PRECHECK(GetMenuItemKeyGlyph); |
|
1282 #endif |
|
1283 if (!PyArg_ParseTuple(_args, "h", |
|
1284 &inItem)) |
|
1285 return NULL; |
|
1286 _err = GetMenuItemKeyGlyph(_self->ob_itself, |
|
1287 inItem, |
|
1288 &outGlyph); |
|
1289 if (_err != noErr) return PyMac_Error(_err); |
|
1290 _res = Py_BuildValue("h", |
|
1291 outGlyph); |
|
1292 return _res; |
|
1293 } |
|
1294 |
|
1295 static PyObject *MenuObj_MacEnableMenuItem(MenuObject *_self, PyObject *_args) |
|
1296 { |
|
1297 PyObject *_res = NULL; |
|
1298 MenuItemIndex item; |
|
1299 #ifndef MacEnableMenuItem |
|
1300 PyMac_PRECHECK(MacEnableMenuItem); |
|
1301 #endif |
|
1302 if (!PyArg_ParseTuple(_args, "h", |
|
1303 &item)) |
|
1304 return NULL; |
|
1305 MacEnableMenuItem(_self->ob_itself, |
|
1306 item); |
|
1307 Py_INCREF(Py_None); |
|
1308 _res = Py_None; |
|
1309 return _res; |
|
1310 } |
|
1311 |
|
1312 static PyObject *MenuObj_DisableMenuItem(MenuObject *_self, PyObject *_args) |
|
1313 { |
|
1314 PyObject *_res = NULL; |
|
1315 MenuItemIndex item; |
|
1316 #ifndef DisableMenuItem |
|
1317 PyMac_PRECHECK(DisableMenuItem); |
|
1318 #endif |
|
1319 if (!PyArg_ParseTuple(_args, "h", |
|
1320 &item)) |
|
1321 return NULL; |
|
1322 DisableMenuItem(_self->ob_itself, |
|
1323 item); |
|
1324 Py_INCREF(Py_None); |
|
1325 _res = Py_None; |
|
1326 return _res; |
|
1327 } |
|
1328 |
|
1329 static PyObject *MenuObj_IsMenuItemEnabled(MenuObject *_self, PyObject *_args) |
|
1330 { |
|
1331 PyObject *_res = NULL; |
|
1332 Boolean _rv; |
|
1333 MenuItemIndex item; |
|
1334 #ifndef IsMenuItemEnabled |
|
1335 PyMac_PRECHECK(IsMenuItemEnabled); |
|
1336 #endif |
|
1337 if (!PyArg_ParseTuple(_args, "h", |
|
1338 &item)) |
|
1339 return NULL; |
|
1340 _rv = IsMenuItemEnabled(_self->ob_itself, |
|
1341 item); |
|
1342 _res = Py_BuildValue("b", |
|
1343 _rv); |
|
1344 return _res; |
|
1345 } |
|
1346 |
|
1347 static PyObject *MenuObj_EnableMenuItemIcon(MenuObject *_self, PyObject *_args) |
|
1348 { |
|
1349 PyObject *_res = NULL; |
|
1350 MenuItemIndex item; |
|
1351 #ifndef EnableMenuItemIcon |
|
1352 PyMac_PRECHECK(EnableMenuItemIcon); |
|
1353 #endif |
|
1354 if (!PyArg_ParseTuple(_args, "h", |
|
1355 &item)) |
|
1356 return NULL; |
|
1357 EnableMenuItemIcon(_self->ob_itself, |
|
1358 item); |
|
1359 Py_INCREF(Py_None); |
|
1360 _res = Py_None; |
|
1361 return _res; |
|
1362 } |
|
1363 |
|
1364 static PyObject *MenuObj_DisableMenuItemIcon(MenuObject *_self, PyObject *_args) |
|
1365 { |
|
1366 PyObject *_res = NULL; |
|
1367 MenuItemIndex item; |
|
1368 #ifndef DisableMenuItemIcon |
|
1369 PyMac_PRECHECK(DisableMenuItemIcon); |
|
1370 #endif |
|
1371 if (!PyArg_ParseTuple(_args, "h", |
|
1372 &item)) |
|
1373 return NULL; |
|
1374 DisableMenuItemIcon(_self->ob_itself, |
|
1375 item); |
|
1376 Py_INCREF(Py_None); |
|
1377 _res = Py_None; |
|
1378 return _res; |
|
1379 } |
|
1380 |
|
1381 static PyObject *MenuObj_IsMenuItemIconEnabled(MenuObject *_self, PyObject *_args) |
|
1382 { |
|
1383 PyObject *_res = NULL; |
|
1384 Boolean _rv; |
|
1385 MenuItemIndex item; |
|
1386 #ifndef IsMenuItemIconEnabled |
|
1387 PyMac_PRECHECK(IsMenuItemIconEnabled); |
|
1388 #endif |
|
1389 if (!PyArg_ParseTuple(_args, "h", |
|
1390 &item)) |
|
1391 return NULL; |
|
1392 _rv = IsMenuItemIconEnabled(_self->ob_itself, |
|
1393 item); |
|
1394 _res = Py_BuildValue("b", |
|
1395 _rv); |
|
1396 return _res; |
|
1397 } |
|
1398 |
|
1399 static PyObject *MenuObj_SetMenuItemHierarchicalMenu(MenuObject *_self, PyObject *_args) |
|
1400 { |
|
1401 PyObject *_res = NULL; |
|
1402 OSStatus _err; |
|
1403 MenuItemIndex inItem; |
|
1404 MenuHandle inHierMenu; |
|
1405 #ifndef SetMenuItemHierarchicalMenu |
|
1406 PyMac_PRECHECK(SetMenuItemHierarchicalMenu); |
|
1407 #endif |
|
1408 if (!PyArg_ParseTuple(_args, "hO&", |
|
1409 &inItem, |
|
1410 MenuObj_Convert, &inHierMenu)) |
|
1411 return NULL; |
|
1412 _err = SetMenuItemHierarchicalMenu(_self->ob_itself, |
|
1413 inItem, |
|
1414 inHierMenu); |
|
1415 if (_err != noErr) return PyMac_Error(_err); |
|
1416 Py_INCREF(Py_None); |
|
1417 _res = Py_None; |
|
1418 return _res; |
|
1419 } |
|
1420 |
|
1421 static PyObject *MenuObj_GetMenuItemHierarchicalMenu(MenuObject *_self, PyObject *_args) |
|
1422 { |
|
1423 PyObject *_res = NULL; |
|
1424 OSStatus _err; |
|
1425 MenuItemIndex inItem; |
|
1426 MenuHandle outHierMenu; |
|
1427 #ifndef GetMenuItemHierarchicalMenu |
|
1428 PyMac_PRECHECK(GetMenuItemHierarchicalMenu); |
|
1429 #endif |
|
1430 if (!PyArg_ParseTuple(_args, "h", |
|
1431 &inItem)) |
|
1432 return NULL; |
|
1433 _err = GetMenuItemHierarchicalMenu(_self->ob_itself, |
|
1434 inItem, |
|
1435 &outHierMenu); |
|
1436 if (_err != noErr) return PyMac_Error(_err); |
|
1437 _res = Py_BuildValue("O&", |
|
1438 OptMenuObj_New, outHierMenu); |
|
1439 return _res; |
|
1440 } |
|
1441 |
|
1442 static PyObject *MenuObj_CopyMenuItemTextAsCFString(MenuObject *_self, PyObject *_args) |
|
1443 { |
|
1444 PyObject *_res = NULL; |
|
1445 OSStatus _err; |
|
1446 MenuItemIndex inItem; |
|
1447 CFStringRef outString; |
|
1448 #ifndef CopyMenuItemTextAsCFString |
|
1449 PyMac_PRECHECK(CopyMenuItemTextAsCFString); |
|
1450 #endif |
|
1451 if (!PyArg_ParseTuple(_args, "h", |
|
1452 &inItem)) |
|
1453 return NULL; |
|
1454 _err = CopyMenuItemTextAsCFString(_self->ob_itself, |
|
1455 inItem, |
|
1456 &outString); |
|
1457 if (_err != noErr) return PyMac_Error(_err); |
|
1458 _res = Py_BuildValue("O&", |
|
1459 CFStringRefObj_New, outString); |
|
1460 return _res; |
|
1461 } |
|
1462 |
|
1463 static PyObject *MenuObj_SetMenuItemTextWithCFString(MenuObject *_self, PyObject *_args) |
|
1464 { |
|
1465 PyObject *_res = NULL; |
|
1466 OSStatus _err; |
|
1467 MenuItemIndex inItem; |
|
1468 CFStringRef inString; |
|
1469 #ifndef SetMenuItemTextWithCFString |
|
1470 PyMac_PRECHECK(SetMenuItemTextWithCFString); |
|
1471 #endif |
|
1472 if (!PyArg_ParseTuple(_args, "hO&", |
|
1473 &inItem, |
|
1474 CFStringRefObj_Convert, &inString)) |
|
1475 return NULL; |
|
1476 _err = SetMenuItemTextWithCFString(_self->ob_itself, |
|
1477 inItem, |
|
1478 inString); |
|
1479 if (_err != noErr) return PyMac_Error(_err); |
|
1480 Py_INCREF(Py_None); |
|
1481 _res = Py_None; |
|
1482 return _res; |
|
1483 } |
|
1484 |
|
1485 static PyObject *MenuObj_GetMenuItemIndent(MenuObject *_self, PyObject *_args) |
|
1486 { |
|
1487 PyObject *_res = NULL; |
|
1488 OSStatus _err; |
|
1489 MenuItemIndex inItem; |
|
1490 UInt32 outIndent; |
|
1491 #ifndef GetMenuItemIndent |
|
1492 PyMac_PRECHECK(GetMenuItemIndent); |
|
1493 #endif |
|
1494 if (!PyArg_ParseTuple(_args, "h", |
|
1495 &inItem)) |
|
1496 return NULL; |
|
1497 _err = GetMenuItemIndent(_self->ob_itself, |
|
1498 inItem, |
|
1499 &outIndent); |
|
1500 if (_err != noErr) return PyMac_Error(_err); |
|
1501 _res = Py_BuildValue("l", |
|
1502 outIndent); |
|
1503 return _res; |
|
1504 } |
|
1505 |
|
1506 static PyObject *MenuObj_SetMenuItemIndent(MenuObject *_self, PyObject *_args) |
|
1507 { |
|
1508 PyObject *_res = NULL; |
|
1509 OSStatus _err; |
|
1510 MenuItemIndex inItem; |
|
1511 UInt32 inIndent; |
|
1512 #ifndef SetMenuItemIndent |
|
1513 PyMac_PRECHECK(SetMenuItemIndent); |
|
1514 #endif |
|
1515 if (!PyArg_ParseTuple(_args, "hl", |
|
1516 &inItem, |
|
1517 &inIndent)) |
|
1518 return NULL; |
|
1519 _err = SetMenuItemIndent(_self->ob_itself, |
|
1520 inItem, |
|
1521 inIndent); |
|
1522 if (_err != noErr) return PyMac_Error(_err); |
|
1523 Py_INCREF(Py_None); |
|
1524 _res = Py_None; |
|
1525 return _res; |
|
1526 } |
|
1527 |
|
1528 static PyObject *MenuObj_GetMenuItemCommandKey(MenuObject *_self, PyObject *_args) |
|
1529 { |
|
1530 PyObject *_res = NULL; |
|
1531 OSStatus _err; |
|
1532 MenuItemIndex inItem; |
|
1533 Boolean inGetVirtualKey; |
|
1534 UInt16 outKey; |
|
1535 #ifndef GetMenuItemCommandKey |
|
1536 PyMac_PRECHECK(GetMenuItemCommandKey); |
|
1537 #endif |
|
1538 if (!PyArg_ParseTuple(_args, "hb", |
|
1539 &inItem, |
|
1540 &inGetVirtualKey)) |
|
1541 return NULL; |
|
1542 _err = GetMenuItemCommandKey(_self->ob_itself, |
|
1543 inItem, |
|
1544 inGetVirtualKey, |
|
1545 &outKey); |
|
1546 if (_err != noErr) return PyMac_Error(_err); |
|
1547 _res = Py_BuildValue("H", |
|
1548 outKey); |
|
1549 return _res; |
|
1550 } |
|
1551 |
|
1552 static PyObject *MenuObj_SetMenuItemCommandKey(MenuObject *_self, PyObject *_args) |
|
1553 { |
|
1554 PyObject *_res = NULL; |
|
1555 OSStatus _err; |
|
1556 MenuItemIndex inItem; |
|
1557 Boolean inSetVirtualKey; |
|
1558 UInt16 inKey; |
|
1559 #ifndef SetMenuItemCommandKey |
|
1560 PyMac_PRECHECK(SetMenuItemCommandKey); |
|
1561 #endif |
|
1562 if (!PyArg_ParseTuple(_args, "hbH", |
|
1563 &inItem, |
|
1564 &inSetVirtualKey, |
|
1565 &inKey)) |
|
1566 return NULL; |
|
1567 _err = SetMenuItemCommandKey(_self->ob_itself, |
|
1568 inItem, |
|
1569 inSetVirtualKey, |
|
1570 inKey); |
|
1571 if (_err != noErr) return PyMac_Error(_err); |
|
1572 Py_INCREF(Py_None); |
|
1573 _res = Py_None; |
|
1574 return _res; |
|
1575 } |
|
1576 |
|
1577 static PyObject *MenuObj_GetMenuItemPropertyAttributes(MenuObject *_self, PyObject *_args) |
|
1578 { |
|
1579 PyObject *_res = NULL; |
|
1580 OSStatus _err; |
|
1581 MenuItemIndex item; |
|
1582 OSType propertyCreator; |
|
1583 OSType propertyTag; |
|
1584 UInt32 attributes; |
|
1585 #ifndef GetMenuItemPropertyAttributes |
|
1586 PyMac_PRECHECK(GetMenuItemPropertyAttributes); |
|
1587 #endif |
|
1588 if (!PyArg_ParseTuple(_args, "hO&O&", |
|
1589 &item, |
|
1590 PyMac_GetOSType, &propertyCreator, |
|
1591 PyMac_GetOSType, &propertyTag)) |
|
1592 return NULL; |
|
1593 _err = GetMenuItemPropertyAttributes(_self->ob_itself, |
|
1594 item, |
|
1595 propertyCreator, |
|
1596 propertyTag, |
|
1597 &attributes); |
|
1598 if (_err != noErr) return PyMac_Error(_err); |
|
1599 _res = Py_BuildValue("l", |
|
1600 attributes); |
|
1601 return _res; |
|
1602 } |
|
1603 |
|
1604 static PyObject *MenuObj_ChangeMenuItemPropertyAttributes(MenuObject *_self, PyObject *_args) |
|
1605 { |
|
1606 PyObject *_res = NULL; |
|
1607 OSStatus _err; |
|
1608 MenuItemIndex item; |
|
1609 OSType propertyCreator; |
|
1610 OSType propertyTag; |
|
1611 UInt32 attributesToSet; |
|
1612 UInt32 attributesToClear; |
|
1613 #ifndef ChangeMenuItemPropertyAttributes |
|
1614 PyMac_PRECHECK(ChangeMenuItemPropertyAttributes); |
|
1615 #endif |
|
1616 if (!PyArg_ParseTuple(_args, "hO&O&ll", |
|
1617 &item, |
|
1618 PyMac_GetOSType, &propertyCreator, |
|
1619 PyMac_GetOSType, &propertyTag, |
|
1620 &attributesToSet, |
|
1621 &attributesToClear)) |
|
1622 return NULL; |
|
1623 _err = ChangeMenuItemPropertyAttributes(_self->ob_itself, |
|
1624 item, |
|
1625 propertyCreator, |
|
1626 propertyTag, |
|
1627 attributesToSet, |
|
1628 attributesToClear); |
|
1629 if (_err != noErr) return PyMac_Error(_err); |
|
1630 Py_INCREF(Py_None); |
|
1631 _res = Py_None; |
|
1632 return _res; |
|
1633 } |
|
1634 |
|
1635 static PyObject *MenuObj_GetMenuAttributes(MenuObject *_self, PyObject *_args) |
|
1636 { |
|
1637 PyObject *_res = NULL; |
|
1638 OSStatus _err; |
|
1639 MenuAttributes outAttributes; |
|
1640 #ifndef GetMenuAttributes |
|
1641 PyMac_PRECHECK(GetMenuAttributes); |
|
1642 #endif |
|
1643 if (!PyArg_ParseTuple(_args, "")) |
|
1644 return NULL; |
|
1645 _err = GetMenuAttributes(_self->ob_itself, |
|
1646 &outAttributes); |
|
1647 if (_err != noErr) return PyMac_Error(_err); |
|
1648 _res = Py_BuildValue("l", |
|
1649 outAttributes); |
|
1650 return _res; |
|
1651 } |
|
1652 |
|
1653 static PyObject *MenuObj_ChangeMenuAttributes(MenuObject *_self, PyObject *_args) |
|
1654 { |
|
1655 PyObject *_res = NULL; |
|
1656 OSStatus _err; |
|
1657 MenuAttributes setTheseAttributes; |
|
1658 MenuAttributes clearTheseAttributes; |
|
1659 #ifndef ChangeMenuAttributes |
|
1660 PyMac_PRECHECK(ChangeMenuAttributes); |
|
1661 #endif |
|
1662 if (!PyArg_ParseTuple(_args, "ll", |
|
1663 &setTheseAttributes, |
|
1664 &clearTheseAttributes)) |
|
1665 return NULL; |
|
1666 _err = ChangeMenuAttributes(_self->ob_itself, |
|
1667 setTheseAttributes, |
|
1668 clearTheseAttributes); |
|
1669 if (_err != noErr) return PyMac_Error(_err); |
|
1670 Py_INCREF(Py_None); |
|
1671 _res = Py_None; |
|
1672 return _res; |
|
1673 } |
|
1674 |
|
1675 static PyObject *MenuObj_GetMenuItemAttributes(MenuObject *_self, PyObject *_args) |
|
1676 { |
|
1677 PyObject *_res = NULL; |
|
1678 OSStatus _err; |
|
1679 MenuItemIndex item; |
|
1680 MenuItemAttributes outAttributes; |
|
1681 #ifndef GetMenuItemAttributes |
|
1682 PyMac_PRECHECK(GetMenuItemAttributes); |
|
1683 #endif |
|
1684 if (!PyArg_ParseTuple(_args, "h", |
|
1685 &item)) |
|
1686 return NULL; |
|
1687 _err = GetMenuItemAttributes(_self->ob_itself, |
|
1688 item, |
|
1689 &outAttributes); |
|
1690 if (_err != noErr) return PyMac_Error(_err); |
|
1691 _res = Py_BuildValue("l", |
|
1692 outAttributes); |
|
1693 return _res; |
|
1694 } |
|
1695 |
|
1696 static PyObject *MenuObj_ChangeMenuItemAttributes(MenuObject *_self, PyObject *_args) |
|
1697 { |
|
1698 PyObject *_res = NULL; |
|
1699 OSStatus _err; |
|
1700 MenuItemIndex item; |
|
1701 MenuItemAttributes setTheseAttributes; |
|
1702 MenuItemAttributes clearTheseAttributes; |
|
1703 #ifndef ChangeMenuItemAttributes |
|
1704 PyMac_PRECHECK(ChangeMenuItemAttributes); |
|
1705 #endif |
|
1706 if (!PyArg_ParseTuple(_args, "hll", |
|
1707 &item, |
|
1708 &setTheseAttributes, |
|
1709 &clearTheseAttributes)) |
|
1710 return NULL; |
|
1711 _err = ChangeMenuItemAttributes(_self->ob_itself, |
|
1712 item, |
|
1713 setTheseAttributes, |
|
1714 clearTheseAttributes); |
|
1715 if (_err != noErr) return PyMac_Error(_err); |
|
1716 Py_INCREF(Py_None); |
|
1717 _res = Py_None; |
|
1718 return _res; |
|
1719 } |
|
1720 |
|
1721 static PyObject *MenuObj_DisableAllMenuItems(MenuObject *_self, PyObject *_args) |
|
1722 { |
|
1723 PyObject *_res = NULL; |
|
1724 #ifndef DisableAllMenuItems |
|
1725 PyMac_PRECHECK(DisableAllMenuItems); |
|
1726 #endif |
|
1727 if (!PyArg_ParseTuple(_args, "")) |
|
1728 return NULL; |
|
1729 DisableAllMenuItems(_self->ob_itself); |
|
1730 Py_INCREF(Py_None); |
|
1731 _res = Py_None; |
|
1732 return _res; |
|
1733 } |
|
1734 |
|
1735 static PyObject *MenuObj_EnableAllMenuItems(MenuObject *_self, PyObject *_args) |
|
1736 { |
|
1737 PyObject *_res = NULL; |
|
1738 #ifndef EnableAllMenuItems |
|
1739 PyMac_PRECHECK(EnableAllMenuItems); |
|
1740 #endif |
|
1741 if (!PyArg_ParseTuple(_args, "")) |
|
1742 return NULL; |
|
1743 EnableAllMenuItems(_self->ob_itself); |
|
1744 Py_INCREF(Py_None); |
|
1745 _res = Py_None; |
|
1746 return _res; |
|
1747 } |
|
1748 |
|
1749 static PyObject *MenuObj_MenuHasEnabledItems(MenuObject *_self, PyObject *_args) |
|
1750 { |
|
1751 PyObject *_res = NULL; |
|
1752 Boolean _rv; |
|
1753 #ifndef MenuHasEnabledItems |
|
1754 PyMac_PRECHECK(MenuHasEnabledItems); |
|
1755 #endif |
|
1756 if (!PyArg_ParseTuple(_args, "")) |
|
1757 return NULL; |
|
1758 _rv = MenuHasEnabledItems(_self->ob_itself); |
|
1759 _res = Py_BuildValue("b", |
|
1760 _rv); |
|
1761 return _res; |
|
1762 } |
|
1763 |
|
1764 static PyObject *MenuObj_GetMenuType(MenuObject *_self, PyObject *_args) |
|
1765 { |
|
1766 PyObject *_res = NULL; |
|
1767 OSStatus _err; |
|
1768 UInt16 outType; |
|
1769 #ifndef GetMenuType |
|
1770 PyMac_PRECHECK(GetMenuType); |
|
1771 #endif |
|
1772 if (!PyArg_ParseTuple(_args, "")) |
|
1773 return NULL; |
|
1774 _err = GetMenuType(_self->ob_itself, |
|
1775 &outType); |
|
1776 if (_err != noErr) return PyMac_Error(_err); |
|
1777 _res = Py_BuildValue("H", |
|
1778 outType); |
|
1779 return _res; |
|
1780 } |
|
1781 |
|
1782 static PyObject *MenuObj_CountMenuItemsWithCommandID(MenuObject *_self, PyObject *_args) |
|
1783 { |
|
1784 PyObject *_res = NULL; |
|
1785 ItemCount _rv; |
|
1786 MenuCommand inCommandID; |
|
1787 #ifndef CountMenuItemsWithCommandID |
|
1788 PyMac_PRECHECK(CountMenuItemsWithCommandID); |
|
1789 #endif |
|
1790 if (!PyArg_ParseTuple(_args, "l", |
|
1791 &inCommandID)) |
|
1792 return NULL; |
|
1793 _rv = CountMenuItemsWithCommandID(_self->ob_itself, |
|
1794 inCommandID); |
|
1795 _res = Py_BuildValue("l", |
|
1796 _rv); |
|
1797 return _res; |
|
1798 } |
|
1799 |
|
1800 static PyObject *MenuObj_GetIndMenuItemWithCommandID(MenuObject *_self, PyObject *_args) |
|
1801 { |
|
1802 PyObject *_res = NULL; |
|
1803 OSStatus _err; |
|
1804 MenuCommand inCommandID; |
|
1805 UInt32 inItemIndex; |
|
1806 MenuHandle outMenu; |
|
1807 MenuItemIndex outIndex; |
|
1808 #ifndef GetIndMenuItemWithCommandID |
|
1809 PyMac_PRECHECK(GetIndMenuItemWithCommandID); |
|
1810 #endif |
|
1811 if (!PyArg_ParseTuple(_args, "ll", |
|
1812 &inCommandID, |
|
1813 &inItemIndex)) |
|
1814 return NULL; |
|
1815 _err = GetIndMenuItemWithCommandID(_self->ob_itself, |
|
1816 inCommandID, |
|
1817 inItemIndex, |
|
1818 &outMenu, |
|
1819 &outIndex); |
|
1820 if (_err != noErr) return PyMac_Error(_err); |
|
1821 _res = Py_BuildValue("O&h", |
|
1822 MenuObj_New, outMenu, |
|
1823 outIndex); |
|
1824 return _res; |
|
1825 } |
|
1826 |
|
1827 static PyObject *MenuObj_EnableMenuCommand(MenuObject *_self, PyObject *_args) |
|
1828 { |
|
1829 PyObject *_res = NULL; |
|
1830 MenuCommand inCommandID; |
|
1831 #ifndef EnableMenuCommand |
|
1832 PyMac_PRECHECK(EnableMenuCommand); |
|
1833 #endif |
|
1834 if (!PyArg_ParseTuple(_args, "l", |
|
1835 &inCommandID)) |
|
1836 return NULL; |
|
1837 EnableMenuCommand(_self->ob_itself, |
|
1838 inCommandID); |
|
1839 Py_INCREF(Py_None); |
|
1840 _res = Py_None; |
|
1841 return _res; |
|
1842 } |
|
1843 |
|
1844 static PyObject *MenuObj_DisableMenuCommand(MenuObject *_self, PyObject *_args) |
|
1845 { |
|
1846 PyObject *_res = NULL; |
|
1847 MenuCommand inCommandID; |
|
1848 #ifndef DisableMenuCommand |
|
1849 PyMac_PRECHECK(DisableMenuCommand); |
|
1850 #endif |
|
1851 if (!PyArg_ParseTuple(_args, "l", |
|
1852 &inCommandID)) |
|
1853 return NULL; |
|
1854 DisableMenuCommand(_self->ob_itself, |
|
1855 inCommandID); |
|
1856 Py_INCREF(Py_None); |
|
1857 _res = Py_None; |
|
1858 return _res; |
|
1859 } |
|
1860 |
|
1861 static PyObject *MenuObj_IsMenuCommandEnabled(MenuObject *_self, PyObject *_args) |
|
1862 { |
|
1863 PyObject *_res = NULL; |
|
1864 Boolean _rv; |
|
1865 MenuCommand inCommandID; |
|
1866 #ifndef IsMenuCommandEnabled |
|
1867 PyMac_PRECHECK(IsMenuCommandEnabled); |
|
1868 #endif |
|
1869 if (!PyArg_ParseTuple(_args, "l", |
|
1870 &inCommandID)) |
|
1871 return NULL; |
|
1872 _rv = IsMenuCommandEnabled(_self->ob_itself, |
|
1873 inCommandID); |
|
1874 _res = Py_BuildValue("b", |
|
1875 _rv); |
|
1876 return _res; |
|
1877 } |
|
1878 |
|
1879 static PyObject *MenuObj_SetMenuCommandMark(MenuObject *_self, PyObject *_args) |
|
1880 { |
|
1881 PyObject *_res = NULL; |
|
1882 OSStatus _err; |
|
1883 MenuCommand inCommandID; |
|
1884 UniChar inMark; |
|
1885 #ifndef SetMenuCommandMark |
|
1886 PyMac_PRECHECK(SetMenuCommandMark); |
|
1887 #endif |
|
1888 if (!PyArg_ParseTuple(_args, "lh", |
|
1889 &inCommandID, |
|
1890 &inMark)) |
|
1891 return NULL; |
|
1892 _err = SetMenuCommandMark(_self->ob_itself, |
|
1893 inCommandID, |
|
1894 inMark); |
|
1895 if (_err != noErr) return PyMac_Error(_err); |
|
1896 Py_INCREF(Py_None); |
|
1897 _res = Py_None; |
|
1898 return _res; |
|
1899 } |
|
1900 |
|
1901 static PyObject *MenuObj_GetMenuCommandMark(MenuObject *_self, PyObject *_args) |
|
1902 { |
|
1903 PyObject *_res = NULL; |
|
1904 OSStatus _err; |
|
1905 MenuCommand inCommandID; |
|
1906 UniChar outMark; |
|
1907 #ifndef GetMenuCommandMark |
|
1908 PyMac_PRECHECK(GetMenuCommandMark); |
|
1909 #endif |
|
1910 if (!PyArg_ParseTuple(_args, "l", |
|
1911 &inCommandID)) |
|
1912 return NULL; |
|
1913 _err = GetMenuCommandMark(_self->ob_itself, |
|
1914 inCommandID, |
|
1915 &outMark); |
|
1916 if (_err != noErr) return PyMac_Error(_err); |
|
1917 _res = Py_BuildValue("h", |
|
1918 outMark); |
|
1919 return _res; |
|
1920 } |
|
1921 |
|
1922 static PyObject *MenuObj_GetMenuCommandPropertySize(MenuObject *_self, PyObject *_args) |
|
1923 { |
|
1924 PyObject *_res = NULL; |
|
1925 OSStatus _err; |
|
1926 MenuCommand inCommandID; |
|
1927 OSType inPropertyCreator; |
|
1928 OSType inPropertyTag; |
|
1929 ByteCount outSize; |
|
1930 #ifndef GetMenuCommandPropertySize |
|
1931 PyMac_PRECHECK(GetMenuCommandPropertySize); |
|
1932 #endif |
|
1933 if (!PyArg_ParseTuple(_args, "lO&O&", |
|
1934 &inCommandID, |
|
1935 PyMac_GetOSType, &inPropertyCreator, |
|
1936 PyMac_GetOSType, &inPropertyTag)) |
|
1937 return NULL; |
|
1938 _err = GetMenuCommandPropertySize(_self->ob_itself, |
|
1939 inCommandID, |
|
1940 inPropertyCreator, |
|
1941 inPropertyTag, |
|
1942 &outSize); |
|
1943 if (_err != noErr) return PyMac_Error(_err); |
|
1944 _res = Py_BuildValue("l", |
|
1945 outSize); |
|
1946 return _res; |
|
1947 } |
|
1948 |
|
1949 static PyObject *MenuObj_RemoveMenuCommandProperty(MenuObject *_self, PyObject *_args) |
|
1950 { |
|
1951 PyObject *_res = NULL; |
|
1952 OSStatus _err; |
|
1953 MenuCommand inCommandID; |
|
1954 OSType inPropertyCreator; |
|
1955 OSType inPropertyTag; |
|
1956 #ifndef RemoveMenuCommandProperty |
|
1957 PyMac_PRECHECK(RemoveMenuCommandProperty); |
|
1958 #endif |
|
1959 if (!PyArg_ParseTuple(_args, "lO&O&", |
|
1960 &inCommandID, |
|
1961 PyMac_GetOSType, &inPropertyCreator, |
|
1962 PyMac_GetOSType, &inPropertyTag)) |
|
1963 return NULL; |
|
1964 _err = RemoveMenuCommandProperty(_self->ob_itself, |
|
1965 inCommandID, |
|
1966 inPropertyCreator, |
|
1967 inPropertyTag); |
|
1968 if (_err != noErr) return PyMac_Error(_err); |
|
1969 Py_INCREF(Py_None); |
|
1970 _res = Py_None; |
|
1971 return _res; |
|
1972 } |
|
1973 |
|
1974 static PyObject *MenuObj_IsMenuItemInvalid(MenuObject *_self, PyObject *_args) |
|
1975 { |
|
1976 PyObject *_res = NULL; |
|
1977 Boolean _rv; |
|
1978 MenuItemIndex inItem; |
|
1979 #ifndef IsMenuItemInvalid |
|
1980 PyMac_PRECHECK(IsMenuItemInvalid); |
|
1981 #endif |
|
1982 if (!PyArg_ParseTuple(_args, "h", |
|
1983 &inItem)) |
|
1984 return NULL; |
|
1985 _rv = IsMenuItemInvalid(_self->ob_itself, |
|
1986 inItem); |
|
1987 _res = Py_BuildValue("b", |
|
1988 _rv); |
|
1989 return _res; |
|
1990 } |
|
1991 |
|
1992 static PyObject *MenuObj_InvalidateMenuItems(MenuObject *_self, PyObject *_args) |
|
1993 { |
|
1994 PyObject *_res = NULL; |
|
1995 OSStatus _err; |
|
1996 MenuItemIndex inFirstItem; |
|
1997 ItemCount inNumItems; |
|
1998 #ifndef InvalidateMenuItems |
|
1999 PyMac_PRECHECK(InvalidateMenuItems); |
|
2000 #endif |
|
2001 if (!PyArg_ParseTuple(_args, "hl", |
|
2002 &inFirstItem, |
|
2003 &inNumItems)) |
|
2004 return NULL; |
|
2005 _err = InvalidateMenuItems(_self->ob_itself, |
|
2006 inFirstItem, |
|
2007 inNumItems); |
|
2008 if (_err != noErr) return PyMac_Error(_err); |
|
2009 Py_INCREF(Py_None); |
|
2010 _res = Py_None; |
|
2011 return _res; |
|
2012 } |
|
2013 |
|
2014 static PyObject *MenuObj_UpdateInvalidMenuItems(MenuObject *_self, PyObject *_args) |
|
2015 { |
|
2016 PyObject *_res = NULL; |
|
2017 OSStatus _err; |
|
2018 #ifndef UpdateInvalidMenuItems |
|
2019 PyMac_PRECHECK(UpdateInvalidMenuItems); |
|
2020 #endif |
|
2021 if (!PyArg_ParseTuple(_args, "")) |
|
2022 return NULL; |
|
2023 _err = UpdateInvalidMenuItems(_self->ob_itself); |
|
2024 if (_err != noErr) return PyMac_Error(_err); |
|
2025 Py_INCREF(Py_None); |
|
2026 _res = Py_None; |
|
2027 return _res; |
|
2028 } |
|
2029 |
|
2030 static PyObject *MenuObj_CreateStandardFontMenu(MenuObject *_self, PyObject *_args) |
|
2031 { |
|
2032 PyObject *_res = NULL; |
|
2033 OSStatus _err; |
|
2034 MenuItemIndex afterItem; |
|
2035 MenuID firstHierMenuID; |
|
2036 OptionBits options; |
|
2037 ItemCount outHierMenuCount; |
|
2038 #ifndef CreateStandardFontMenu |
|
2039 PyMac_PRECHECK(CreateStandardFontMenu); |
|
2040 #endif |
|
2041 if (!PyArg_ParseTuple(_args, "hhl", |
|
2042 &afterItem, |
|
2043 &firstHierMenuID, |
|
2044 &options)) |
|
2045 return NULL; |
|
2046 _err = CreateStandardFontMenu(_self->ob_itself, |
|
2047 afterItem, |
|
2048 firstHierMenuID, |
|
2049 options, |
|
2050 &outHierMenuCount); |
|
2051 if (_err != noErr) return PyMac_Error(_err); |
|
2052 _res = Py_BuildValue("l", |
|
2053 outHierMenuCount); |
|
2054 return _res; |
|
2055 } |
|
2056 |
|
2057 static PyObject *MenuObj_UpdateStandardFontMenu(MenuObject *_self, PyObject *_args) |
|
2058 { |
|
2059 PyObject *_res = NULL; |
|
2060 OSStatus _err; |
|
2061 ItemCount outHierMenuCount; |
|
2062 #ifndef UpdateStandardFontMenu |
|
2063 PyMac_PRECHECK(UpdateStandardFontMenu); |
|
2064 #endif |
|
2065 if (!PyArg_ParseTuple(_args, "")) |
|
2066 return NULL; |
|
2067 _err = UpdateStandardFontMenu(_self->ob_itself, |
|
2068 &outHierMenuCount); |
|
2069 if (_err != noErr) return PyMac_Error(_err); |
|
2070 _res = Py_BuildValue("l", |
|
2071 outHierMenuCount); |
|
2072 return _res; |
|
2073 } |
|
2074 |
|
2075 static PyObject *MenuObj_GetFontFamilyFromMenuSelection(MenuObject *_self, PyObject *_args) |
|
2076 { |
|
2077 PyObject *_res = NULL; |
|
2078 OSStatus _err; |
|
2079 MenuItemIndex item; |
|
2080 FMFontFamily outFontFamily; |
|
2081 FMFontStyle outStyle; |
|
2082 #ifndef GetFontFamilyFromMenuSelection |
|
2083 PyMac_PRECHECK(GetFontFamilyFromMenuSelection); |
|
2084 #endif |
|
2085 if (!PyArg_ParseTuple(_args, "h", |
|
2086 &item)) |
|
2087 return NULL; |
|
2088 _err = GetFontFamilyFromMenuSelection(_self->ob_itself, |
|
2089 item, |
|
2090 &outFontFamily, |
|
2091 &outStyle); |
|
2092 if (_err != noErr) return PyMac_Error(_err); |
|
2093 _res = Py_BuildValue("hh", |
|
2094 outFontFamily, |
|
2095 outStyle); |
|
2096 return _res; |
|
2097 } |
|
2098 |
|
2099 static PyObject *MenuObj_GetMenuID(MenuObject *_self, PyObject *_args) |
|
2100 { |
|
2101 PyObject *_res = NULL; |
|
2102 MenuID _rv; |
|
2103 #ifndef GetMenuID |
|
2104 PyMac_PRECHECK(GetMenuID); |
|
2105 #endif |
|
2106 if (!PyArg_ParseTuple(_args, "")) |
|
2107 return NULL; |
|
2108 _rv = GetMenuID(_self->ob_itself); |
|
2109 _res = Py_BuildValue("h", |
|
2110 _rv); |
|
2111 return _res; |
|
2112 } |
|
2113 |
|
2114 static PyObject *MenuObj_GetMenuWidth(MenuObject *_self, PyObject *_args) |
|
2115 { |
|
2116 PyObject *_res = NULL; |
|
2117 SInt16 _rv; |
|
2118 #ifndef GetMenuWidth |
|
2119 PyMac_PRECHECK(GetMenuWidth); |
|
2120 #endif |
|
2121 if (!PyArg_ParseTuple(_args, "")) |
|
2122 return NULL; |
|
2123 _rv = GetMenuWidth(_self->ob_itself); |
|
2124 _res = Py_BuildValue("h", |
|
2125 _rv); |
|
2126 return _res; |
|
2127 } |
|
2128 |
|
2129 static PyObject *MenuObj_GetMenuHeight(MenuObject *_self, PyObject *_args) |
|
2130 { |
|
2131 PyObject *_res = NULL; |
|
2132 SInt16 _rv; |
|
2133 #ifndef GetMenuHeight |
|
2134 PyMac_PRECHECK(GetMenuHeight); |
|
2135 #endif |
|
2136 if (!PyArg_ParseTuple(_args, "")) |
|
2137 return NULL; |
|
2138 _rv = GetMenuHeight(_self->ob_itself); |
|
2139 _res = Py_BuildValue("h", |
|
2140 _rv); |
|
2141 return _res; |
|
2142 } |
|
2143 |
|
2144 static PyObject *MenuObj_SetMenuID(MenuObject *_self, PyObject *_args) |
|
2145 { |
|
2146 PyObject *_res = NULL; |
|
2147 MenuID menuID; |
|
2148 #ifndef SetMenuID |
|
2149 PyMac_PRECHECK(SetMenuID); |
|
2150 #endif |
|
2151 if (!PyArg_ParseTuple(_args, "h", |
|
2152 &menuID)) |
|
2153 return NULL; |
|
2154 SetMenuID(_self->ob_itself, |
|
2155 menuID); |
|
2156 Py_INCREF(Py_None); |
|
2157 _res = Py_None; |
|
2158 return _res; |
|
2159 } |
|
2160 |
|
2161 static PyObject *MenuObj_SetMenuWidth(MenuObject *_self, PyObject *_args) |
|
2162 { |
|
2163 PyObject *_res = NULL; |
|
2164 SInt16 width; |
|
2165 #ifndef SetMenuWidth |
|
2166 PyMac_PRECHECK(SetMenuWidth); |
|
2167 #endif |
|
2168 if (!PyArg_ParseTuple(_args, "h", |
|
2169 &width)) |
|
2170 return NULL; |
|
2171 SetMenuWidth(_self->ob_itself, |
|
2172 width); |
|
2173 Py_INCREF(Py_None); |
|
2174 _res = Py_None; |
|
2175 return _res; |
|
2176 } |
|
2177 |
|
2178 static PyObject *MenuObj_SetMenuHeight(MenuObject *_self, PyObject *_args) |
|
2179 { |
|
2180 PyObject *_res = NULL; |
|
2181 SInt16 height; |
|
2182 #ifndef SetMenuHeight |
|
2183 PyMac_PRECHECK(SetMenuHeight); |
|
2184 #endif |
|
2185 if (!PyArg_ParseTuple(_args, "h", |
|
2186 &height)) |
|
2187 return NULL; |
|
2188 SetMenuHeight(_self->ob_itself, |
|
2189 height); |
|
2190 Py_INCREF(Py_None); |
|
2191 _res = Py_None; |
|
2192 return _res; |
|
2193 } |
|
2194 |
|
2195 static PyObject *MenuObj_as_Resource(MenuObject *_self, PyObject *_args) |
|
2196 { |
|
2197 PyObject *_res = NULL; |
|
2198 Handle _rv; |
|
2199 #ifndef as_Resource |
|
2200 PyMac_PRECHECK(as_Resource); |
|
2201 #endif |
|
2202 if (!PyArg_ParseTuple(_args, "")) |
|
2203 return NULL; |
|
2204 _rv = as_Resource(_self->ob_itself); |
|
2205 _res = Py_BuildValue("O&", |
|
2206 ResObj_New, _rv); |
|
2207 return _res; |
|
2208 } |
|
2209 |
|
2210 static PyObject *MenuObj_AppendMenu(MenuObject *_self, PyObject *_args) |
|
2211 { |
|
2212 PyObject *_res = NULL; |
|
2213 Str255 data; |
|
2214 #ifndef AppendMenu |
|
2215 PyMac_PRECHECK(AppendMenu); |
|
2216 #endif |
|
2217 if (!PyArg_ParseTuple(_args, "O&", |
|
2218 PyMac_GetStr255, data)) |
|
2219 return NULL; |
|
2220 AppendMenu(_self->ob_itself, |
|
2221 data); |
|
2222 Py_INCREF(Py_None); |
|
2223 _res = Py_None; |
|
2224 return _res; |
|
2225 } |
|
2226 |
|
2227 static PyObject *MenuObj_InsertMenu(MenuObject *_self, PyObject *_args) |
|
2228 { |
|
2229 PyObject *_res = NULL; |
|
2230 short beforeID; |
|
2231 #ifndef InsertMenu |
|
2232 PyMac_PRECHECK(InsertMenu); |
|
2233 #endif |
|
2234 if (!PyArg_ParseTuple(_args, "h", |
|
2235 &beforeID)) |
|
2236 return NULL; |
|
2237 InsertMenu(_self->ob_itself, |
|
2238 beforeID); |
|
2239 Py_INCREF(Py_None); |
|
2240 _res = Py_None; |
|
2241 return _res; |
|
2242 } |
|
2243 |
|
2244 static PyObject *MenuObj_InsertMenuItem(MenuObject *_self, PyObject *_args) |
|
2245 { |
|
2246 PyObject *_res = NULL; |
|
2247 Str255 itemString; |
|
2248 short afterItem; |
|
2249 #ifndef InsertMenuItem |
|
2250 PyMac_PRECHECK(InsertMenuItem); |
|
2251 #endif |
|
2252 if (!PyArg_ParseTuple(_args, "O&h", |
|
2253 PyMac_GetStr255, itemString, |
|
2254 &afterItem)) |
|
2255 return NULL; |
|
2256 InsertMenuItem(_self->ob_itself, |
|
2257 itemString, |
|
2258 afterItem); |
|
2259 Py_INCREF(Py_None); |
|
2260 _res = Py_None; |
|
2261 return _res; |
|
2262 } |
|
2263 |
|
2264 static PyObject *MenuObj_EnableMenuItem(MenuObject *_self, PyObject *_args) |
|
2265 { |
|
2266 PyObject *_res = NULL; |
|
2267 UInt16 item; |
|
2268 #ifndef EnableMenuItem |
|
2269 PyMac_PRECHECK(EnableMenuItem); |
|
2270 #endif |
|
2271 if (!PyArg_ParseTuple(_args, "H", |
|
2272 &item)) |
|
2273 return NULL; |
|
2274 EnableMenuItem(_self->ob_itself, |
|
2275 item); |
|
2276 Py_INCREF(Py_None); |
|
2277 _res = Py_None; |
|
2278 return _res; |
|
2279 } |
|
2280 |
|
2281 static PyObject *MenuObj_CheckMenuItem(MenuObject *_self, PyObject *_args) |
|
2282 { |
|
2283 PyObject *_res = NULL; |
|
2284 short item; |
|
2285 Boolean checked; |
|
2286 #ifndef CheckMenuItem |
|
2287 PyMac_PRECHECK(CheckMenuItem); |
|
2288 #endif |
|
2289 if (!PyArg_ParseTuple(_args, "hb", |
|
2290 &item, |
|
2291 &checked)) |
|
2292 return NULL; |
|
2293 CheckMenuItem(_self->ob_itself, |
|
2294 item, |
|
2295 checked); |
|
2296 Py_INCREF(Py_None); |
|
2297 _res = Py_None; |
|
2298 return _res; |
|
2299 } |
|
2300 |
|
2301 static PyMethodDef MenuObj_methods[] = { |
|
2302 {"DisposeMenu", (PyCFunction)MenuObj_DisposeMenu, 1, |
|
2303 PyDoc_STR("() -> None")}, |
|
2304 {"CalcMenuSize", (PyCFunction)MenuObj_CalcMenuSize, 1, |
|
2305 PyDoc_STR("() -> None")}, |
|
2306 {"CountMenuItems", (PyCFunction)MenuObj_CountMenuItems, 1, |
|
2307 PyDoc_STR("() -> (UInt16 _rv)")}, |
|
2308 {"GetMenuFont", (PyCFunction)MenuObj_GetMenuFont, 1, |
|
2309 PyDoc_STR("() -> (SInt16 outFontID, UInt16 outFontSize)")}, |
|
2310 {"SetMenuFont", (PyCFunction)MenuObj_SetMenuFont, 1, |
|
2311 PyDoc_STR("(SInt16 inFontID, UInt16 inFontSize) -> None")}, |
|
2312 {"GetMenuExcludesMarkColumn", (PyCFunction)MenuObj_GetMenuExcludesMarkColumn, 1, |
|
2313 PyDoc_STR("() -> (Boolean _rv)")}, |
|
2314 {"SetMenuExcludesMarkColumn", (PyCFunction)MenuObj_SetMenuExcludesMarkColumn, 1, |
|
2315 PyDoc_STR("(Boolean excludesMark) -> None")}, |
|
2316 {"IsValidMenu", (PyCFunction)MenuObj_IsValidMenu, 1, |
|
2317 PyDoc_STR("() -> (Boolean _rv)")}, |
|
2318 {"GetMenuRetainCount", (PyCFunction)MenuObj_GetMenuRetainCount, 1, |
|
2319 PyDoc_STR("() -> (ItemCount _rv)")}, |
|
2320 {"RetainMenu", (PyCFunction)MenuObj_RetainMenu, 1, |
|
2321 PyDoc_STR("() -> None")}, |
|
2322 {"ReleaseMenu", (PyCFunction)MenuObj_ReleaseMenu, 1, |
|
2323 PyDoc_STR("() -> None")}, |
|
2324 {"DuplicateMenu", (PyCFunction)MenuObj_DuplicateMenu, 1, |
|
2325 PyDoc_STR("() -> (MenuHandle outMenu)")}, |
|
2326 {"CopyMenuTitleAsCFString", (PyCFunction)MenuObj_CopyMenuTitleAsCFString, 1, |
|
2327 PyDoc_STR("() -> (CFStringRef outString)")}, |
|
2328 {"SetMenuTitleWithCFString", (PyCFunction)MenuObj_SetMenuTitleWithCFString, 1, |
|
2329 PyDoc_STR("(CFStringRef inString) -> None")}, |
|
2330 {"InvalidateMenuSize", (PyCFunction)MenuObj_InvalidateMenuSize, 1, |
|
2331 PyDoc_STR("() -> None")}, |
|
2332 {"IsMenuSizeInvalid", (PyCFunction)MenuObj_IsMenuSizeInvalid, 1, |
|
2333 PyDoc_STR("() -> (Boolean _rv)")}, |
|
2334 {"MacAppendMenu", (PyCFunction)MenuObj_MacAppendMenu, 1, |
|
2335 PyDoc_STR("(Str255 data) -> None")}, |
|
2336 {"InsertResMenu", (PyCFunction)MenuObj_InsertResMenu, 1, |
|
2337 PyDoc_STR("(ResType theType, short afterItem) -> None")}, |
|
2338 {"AppendResMenu", (PyCFunction)MenuObj_AppendResMenu, 1, |
|
2339 PyDoc_STR("(ResType theType) -> None")}, |
|
2340 {"MacInsertMenuItem", (PyCFunction)MenuObj_MacInsertMenuItem, 1, |
|
2341 PyDoc_STR("(Str255 itemString, short afterItem) -> None")}, |
|
2342 {"DeleteMenuItem", (PyCFunction)MenuObj_DeleteMenuItem, 1, |
|
2343 PyDoc_STR("(short item) -> None")}, |
|
2344 {"InsertFontResMenu", (PyCFunction)MenuObj_InsertFontResMenu, 1, |
|
2345 PyDoc_STR("(short afterItem, short scriptFilter) -> None")}, |
|
2346 {"InsertIntlResMenu", (PyCFunction)MenuObj_InsertIntlResMenu, 1, |
|
2347 PyDoc_STR("(ResType theType, short afterItem, short scriptFilter) -> None")}, |
|
2348 {"AppendMenuItemText", (PyCFunction)MenuObj_AppendMenuItemText, 1, |
|
2349 PyDoc_STR("(Str255 inString) -> None")}, |
|
2350 {"InsertMenuItemText", (PyCFunction)MenuObj_InsertMenuItemText, 1, |
|
2351 PyDoc_STR("(Str255 inString, MenuItemIndex afterItem) -> None")}, |
|
2352 {"CopyMenuItems", (PyCFunction)MenuObj_CopyMenuItems, 1, |
|
2353 PyDoc_STR("(MenuItemIndex inFirstItem, ItemCount inNumItems, MenuHandle inDestMenu, MenuItemIndex inInsertAfter) -> None")}, |
|
2354 {"DeleteMenuItems", (PyCFunction)MenuObj_DeleteMenuItems, 1, |
|
2355 PyDoc_STR("(MenuItemIndex inFirstItem, ItemCount inNumItems) -> None")}, |
|
2356 {"AppendMenuItemTextWithCFString", (PyCFunction)MenuObj_AppendMenuItemTextWithCFString, 1, |
|
2357 PyDoc_STR("(CFStringRef inString, MenuItemAttributes inAttributes, MenuCommand inCommandID) -> (MenuItemIndex outNewItem)")}, |
|
2358 {"InsertMenuItemTextWithCFString", (PyCFunction)MenuObj_InsertMenuItemTextWithCFString, 1, |
|
2359 PyDoc_STR("(CFStringRef inString, MenuItemIndex inAfterItem, MenuItemAttributes inAttributes, MenuCommand inCommandID) -> None")}, |
|
2360 {"PopUpMenuSelect", (PyCFunction)MenuObj_PopUpMenuSelect, 1, |
|
2361 PyDoc_STR("(short top, short left, short popUpItem) -> (long _rv)")}, |
|
2362 {"InvalidateMenuEnabling", (PyCFunction)MenuObj_InvalidateMenuEnabling, 1, |
|
2363 PyDoc_STR("() -> None")}, |
|
2364 {"IsMenuBarInvalid", (PyCFunction)MenuObj_IsMenuBarInvalid, 1, |
|
2365 PyDoc_STR("() -> (Boolean _rv)")}, |
|
2366 {"MacInsertMenu", (PyCFunction)MenuObj_MacInsertMenu, 1, |
|
2367 PyDoc_STR("(MenuID beforeID) -> None")}, |
|
2368 {"SetRootMenu", (PyCFunction)MenuObj_SetRootMenu, 1, |
|
2369 PyDoc_STR("() -> None")}, |
|
2370 {"MacCheckMenuItem", (PyCFunction)MenuObj_MacCheckMenuItem, 1, |
|
2371 PyDoc_STR("(short item, Boolean checked) -> None")}, |
|
2372 {"SetMenuItemText", (PyCFunction)MenuObj_SetMenuItemText, 1, |
|
2373 PyDoc_STR("(short item, Str255 itemString) -> None")}, |
|
2374 {"GetMenuItemText", (PyCFunction)MenuObj_GetMenuItemText, 1, |
|
2375 PyDoc_STR("(short item) -> (Str255 itemString)")}, |
|
2376 {"SetItemMark", (PyCFunction)MenuObj_SetItemMark, 1, |
|
2377 PyDoc_STR("(short item, CharParameter markChar) -> None")}, |
|
2378 {"GetItemMark", (PyCFunction)MenuObj_GetItemMark, 1, |
|
2379 PyDoc_STR("(short item) -> (CharParameter markChar)")}, |
|
2380 {"SetItemCmd", (PyCFunction)MenuObj_SetItemCmd, 1, |
|
2381 PyDoc_STR("(short item, CharParameter cmdChar) -> None")}, |
|
2382 {"GetItemCmd", (PyCFunction)MenuObj_GetItemCmd, 1, |
|
2383 PyDoc_STR("(short item) -> (CharParameter cmdChar)")}, |
|
2384 {"SetItemIcon", (PyCFunction)MenuObj_SetItemIcon, 1, |
|
2385 PyDoc_STR("(short item, short iconIndex) -> None")}, |
|
2386 {"GetItemIcon", (PyCFunction)MenuObj_GetItemIcon, 1, |
|
2387 PyDoc_STR("(short item) -> (short iconIndex)")}, |
|
2388 {"SetItemStyle", (PyCFunction)MenuObj_SetItemStyle, 1, |
|
2389 PyDoc_STR("(short item, StyleParameter chStyle) -> None")}, |
|
2390 {"GetItemStyle", (PyCFunction)MenuObj_GetItemStyle, 1, |
|
2391 PyDoc_STR("(short item) -> (Style chStyle)")}, |
|
2392 {"SetMenuItemCommandID", (PyCFunction)MenuObj_SetMenuItemCommandID, 1, |
|
2393 PyDoc_STR("(SInt16 inItem, MenuCommand inCommandID) -> None")}, |
|
2394 {"GetMenuItemCommandID", (PyCFunction)MenuObj_GetMenuItemCommandID, 1, |
|
2395 PyDoc_STR("(SInt16 inItem) -> (MenuCommand outCommandID)")}, |
|
2396 {"SetMenuItemModifiers", (PyCFunction)MenuObj_SetMenuItemModifiers, 1, |
|
2397 PyDoc_STR("(SInt16 inItem, UInt8 inModifiers) -> None")}, |
|
2398 {"GetMenuItemModifiers", (PyCFunction)MenuObj_GetMenuItemModifiers, 1, |
|
2399 PyDoc_STR("(SInt16 inItem) -> (UInt8 outModifiers)")}, |
|
2400 {"SetMenuItemIconHandle", (PyCFunction)MenuObj_SetMenuItemIconHandle, 1, |
|
2401 PyDoc_STR("(SInt16 inItem, UInt8 inIconType, Handle inIconHandle) -> None")}, |
|
2402 {"GetMenuItemIconHandle", (PyCFunction)MenuObj_GetMenuItemIconHandle, 1, |
|
2403 PyDoc_STR("(SInt16 inItem) -> (UInt8 outIconType, Handle outIconHandle)")}, |
|
2404 {"SetMenuItemTextEncoding", (PyCFunction)MenuObj_SetMenuItemTextEncoding, 1, |
|
2405 PyDoc_STR("(SInt16 inItem, TextEncoding inScriptID) -> None")}, |
|
2406 {"GetMenuItemTextEncoding", (PyCFunction)MenuObj_GetMenuItemTextEncoding, 1, |
|
2407 PyDoc_STR("(SInt16 inItem) -> (TextEncoding outScriptID)")}, |
|
2408 {"SetMenuItemHierarchicalID", (PyCFunction)MenuObj_SetMenuItemHierarchicalID, 1, |
|
2409 PyDoc_STR("(SInt16 inItem, MenuID inHierID) -> None")}, |
|
2410 {"GetMenuItemHierarchicalID", (PyCFunction)MenuObj_GetMenuItemHierarchicalID, 1, |
|
2411 PyDoc_STR("(SInt16 inItem) -> (MenuID outHierID)")}, |
|
2412 {"SetMenuItemFontID", (PyCFunction)MenuObj_SetMenuItemFontID, 1, |
|
2413 PyDoc_STR("(SInt16 inItem, SInt16 inFontID) -> None")}, |
|
2414 {"GetMenuItemFontID", (PyCFunction)MenuObj_GetMenuItemFontID, 1, |
|
2415 PyDoc_STR("(SInt16 inItem) -> (SInt16 outFontID)")}, |
|
2416 {"SetMenuItemRefCon", (PyCFunction)MenuObj_SetMenuItemRefCon, 1, |
|
2417 PyDoc_STR("(SInt16 inItem, UInt32 inRefCon) -> None")}, |
|
2418 {"GetMenuItemRefCon", (PyCFunction)MenuObj_GetMenuItemRefCon, 1, |
|
2419 PyDoc_STR("(SInt16 inItem) -> (UInt32 outRefCon)")}, |
|
2420 {"SetMenuItemKeyGlyph", (PyCFunction)MenuObj_SetMenuItemKeyGlyph, 1, |
|
2421 PyDoc_STR("(SInt16 inItem, SInt16 inGlyph) -> None")}, |
|
2422 {"GetMenuItemKeyGlyph", (PyCFunction)MenuObj_GetMenuItemKeyGlyph, 1, |
|
2423 PyDoc_STR("(SInt16 inItem) -> (SInt16 outGlyph)")}, |
|
2424 {"MacEnableMenuItem", (PyCFunction)MenuObj_MacEnableMenuItem, 1, |
|
2425 PyDoc_STR("(MenuItemIndex item) -> None")}, |
|
2426 {"DisableMenuItem", (PyCFunction)MenuObj_DisableMenuItem, 1, |
|
2427 PyDoc_STR("(MenuItemIndex item) -> None")}, |
|
2428 {"IsMenuItemEnabled", (PyCFunction)MenuObj_IsMenuItemEnabled, 1, |
|
2429 PyDoc_STR("(MenuItemIndex item) -> (Boolean _rv)")}, |
|
2430 {"EnableMenuItemIcon", (PyCFunction)MenuObj_EnableMenuItemIcon, 1, |
|
2431 PyDoc_STR("(MenuItemIndex item) -> None")}, |
|
2432 {"DisableMenuItemIcon", (PyCFunction)MenuObj_DisableMenuItemIcon, 1, |
|
2433 PyDoc_STR("(MenuItemIndex item) -> None")}, |
|
2434 {"IsMenuItemIconEnabled", (PyCFunction)MenuObj_IsMenuItemIconEnabled, 1, |
|
2435 PyDoc_STR("(MenuItemIndex item) -> (Boolean _rv)")}, |
|
2436 {"SetMenuItemHierarchicalMenu", (PyCFunction)MenuObj_SetMenuItemHierarchicalMenu, 1, |
|
2437 PyDoc_STR("(MenuItemIndex inItem, MenuHandle inHierMenu) -> None")}, |
|
2438 {"GetMenuItemHierarchicalMenu", (PyCFunction)MenuObj_GetMenuItemHierarchicalMenu, 1, |
|
2439 PyDoc_STR("(MenuItemIndex inItem) -> (MenuHandle outHierMenu)")}, |
|
2440 {"CopyMenuItemTextAsCFString", (PyCFunction)MenuObj_CopyMenuItemTextAsCFString, 1, |
|
2441 PyDoc_STR("(MenuItemIndex inItem) -> (CFStringRef outString)")}, |
|
2442 {"SetMenuItemTextWithCFString", (PyCFunction)MenuObj_SetMenuItemTextWithCFString, 1, |
|
2443 PyDoc_STR("(MenuItemIndex inItem, CFStringRef inString) -> None")}, |
|
2444 {"GetMenuItemIndent", (PyCFunction)MenuObj_GetMenuItemIndent, 1, |
|
2445 PyDoc_STR("(MenuItemIndex inItem) -> (UInt32 outIndent)")}, |
|
2446 {"SetMenuItemIndent", (PyCFunction)MenuObj_SetMenuItemIndent, 1, |
|
2447 PyDoc_STR("(MenuItemIndex inItem, UInt32 inIndent) -> None")}, |
|
2448 {"GetMenuItemCommandKey", (PyCFunction)MenuObj_GetMenuItemCommandKey, 1, |
|
2449 PyDoc_STR("(MenuItemIndex inItem, Boolean inGetVirtualKey) -> (UInt16 outKey)")}, |
|
2450 {"SetMenuItemCommandKey", (PyCFunction)MenuObj_SetMenuItemCommandKey, 1, |
|
2451 PyDoc_STR("(MenuItemIndex inItem, Boolean inSetVirtualKey, UInt16 inKey) -> None")}, |
|
2452 {"GetMenuItemPropertyAttributes", (PyCFunction)MenuObj_GetMenuItemPropertyAttributes, 1, |
|
2453 PyDoc_STR("(MenuItemIndex item, OSType propertyCreator, OSType propertyTag) -> (UInt32 attributes)")}, |
|
2454 {"ChangeMenuItemPropertyAttributes", (PyCFunction)MenuObj_ChangeMenuItemPropertyAttributes, 1, |
|
2455 PyDoc_STR("(MenuItemIndex item, OSType propertyCreator, OSType propertyTag, UInt32 attributesToSet, UInt32 attributesToClear) -> None")}, |
|
2456 {"GetMenuAttributes", (PyCFunction)MenuObj_GetMenuAttributes, 1, |
|
2457 PyDoc_STR("() -> (MenuAttributes outAttributes)")}, |
|
2458 {"ChangeMenuAttributes", (PyCFunction)MenuObj_ChangeMenuAttributes, 1, |
|
2459 PyDoc_STR("(MenuAttributes setTheseAttributes, MenuAttributes clearTheseAttributes) -> None")}, |
|
2460 {"GetMenuItemAttributes", (PyCFunction)MenuObj_GetMenuItemAttributes, 1, |
|
2461 PyDoc_STR("(MenuItemIndex item) -> (MenuItemAttributes outAttributes)")}, |
|
2462 {"ChangeMenuItemAttributes", (PyCFunction)MenuObj_ChangeMenuItemAttributes, 1, |
|
2463 PyDoc_STR("(MenuItemIndex item, MenuItemAttributes setTheseAttributes, MenuItemAttributes clearTheseAttributes) -> None")}, |
|
2464 {"DisableAllMenuItems", (PyCFunction)MenuObj_DisableAllMenuItems, 1, |
|
2465 PyDoc_STR("() -> None")}, |
|
2466 {"EnableAllMenuItems", (PyCFunction)MenuObj_EnableAllMenuItems, 1, |
|
2467 PyDoc_STR("() -> None")}, |
|
2468 {"MenuHasEnabledItems", (PyCFunction)MenuObj_MenuHasEnabledItems, 1, |
|
2469 PyDoc_STR("() -> (Boolean _rv)")}, |
|
2470 {"GetMenuType", (PyCFunction)MenuObj_GetMenuType, 1, |
|
2471 PyDoc_STR("() -> (UInt16 outType)")}, |
|
2472 {"CountMenuItemsWithCommandID", (PyCFunction)MenuObj_CountMenuItemsWithCommandID, 1, |
|
2473 PyDoc_STR("(MenuCommand inCommandID) -> (ItemCount _rv)")}, |
|
2474 {"GetIndMenuItemWithCommandID", (PyCFunction)MenuObj_GetIndMenuItemWithCommandID, 1, |
|
2475 PyDoc_STR("(MenuCommand inCommandID, UInt32 inItemIndex) -> (MenuHandle outMenu, MenuItemIndex outIndex)")}, |
|
2476 {"EnableMenuCommand", (PyCFunction)MenuObj_EnableMenuCommand, 1, |
|
2477 PyDoc_STR("(MenuCommand inCommandID) -> None")}, |
|
2478 {"DisableMenuCommand", (PyCFunction)MenuObj_DisableMenuCommand, 1, |
|
2479 PyDoc_STR("(MenuCommand inCommandID) -> None")}, |
|
2480 {"IsMenuCommandEnabled", (PyCFunction)MenuObj_IsMenuCommandEnabled, 1, |
|
2481 PyDoc_STR("(MenuCommand inCommandID) -> (Boolean _rv)")}, |
|
2482 {"SetMenuCommandMark", (PyCFunction)MenuObj_SetMenuCommandMark, 1, |
|
2483 PyDoc_STR("(MenuCommand inCommandID, UniChar inMark) -> None")}, |
|
2484 {"GetMenuCommandMark", (PyCFunction)MenuObj_GetMenuCommandMark, 1, |
|
2485 PyDoc_STR("(MenuCommand inCommandID) -> (UniChar outMark)")}, |
|
2486 {"GetMenuCommandPropertySize", (PyCFunction)MenuObj_GetMenuCommandPropertySize, 1, |
|
2487 PyDoc_STR("(MenuCommand inCommandID, OSType inPropertyCreator, OSType inPropertyTag) -> (ByteCount outSize)")}, |
|
2488 {"RemoveMenuCommandProperty", (PyCFunction)MenuObj_RemoveMenuCommandProperty, 1, |
|
2489 PyDoc_STR("(MenuCommand inCommandID, OSType inPropertyCreator, OSType inPropertyTag) -> None")}, |
|
2490 {"IsMenuItemInvalid", (PyCFunction)MenuObj_IsMenuItemInvalid, 1, |
|
2491 PyDoc_STR("(MenuItemIndex inItem) -> (Boolean _rv)")}, |
|
2492 {"InvalidateMenuItems", (PyCFunction)MenuObj_InvalidateMenuItems, 1, |
|
2493 PyDoc_STR("(MenuItemIndex inFirstItem, ItemCount inNumItems) -> None")}, |
|
2494 {"UpdateInvalidMenuItems", (PyCFunction)MenuObj_UpdateInvalidMenuItems, 1, |
|
2495 PyDoc_STR("() -> None")}, |
|
2496 {"CreateStandardFontMenu", (PyCFunction)MenuObj_CreateStandardFontMenu, 1, |
|
2497 PyDoc_STR("(MenuItemIndex afterItem, MenuID firstHierMenuID, OptionBits options) -> (ItemCount outHierMenuCount)")}, |
|
2498 {"UpdateStandardFontMenu", (PyCFunction)MenuObj_UpdateStandardFontMenu, 1, |
|
2499 PyDoc_STR("() -> (ItemCount outHierMenuCount)")}, |
|
2500 {"GetFontFamilyFromMenuSelection", (PyCFunction)MenuObj_GetFontFamilyFromMenuSelection, 1, |
|
2501 PyDoc_STR("(MenuItemIndex item) -> (FMFontFamily outFontFamily, FMFontStyle outStyle)")}, |
|
2502 {"GetMenuID", (PyCFunction)MenuObj_GetMenuID, 1, |
|
2503 PyDoc_STR("() -> (MenuID _rv)")}, |
|
2504 {"GetMenuWidth", (PyCFunction)MenuObj_GetMenuWidth, 1, |
|
2505 PyDoc_STR("() -> (SInt16 _rv)")}, |
|
2506 {"GetMenuHeight", (PyCFunction)MenuObj_GetMenuHeight, 1, |
|
2507 PyDoc_STR("() -> (SInt16 _rv)")}, |
|
2508 {"SetMenuID", (PyCFunction)MenuObj_SetMenuID, 1, |
|
2509 PyDoc_STR("(MenuID menuID) -> None")}, |
|
2510 {"SetMenuWidth", (PyCFunction)MenuObj_SetMenuWidth, 1, |
|
2511 PyDoc_STR("(SInt16 width) -> None")}, |
|
2512 {"SetMenuHeight", (PyCFunction)MenuObj_SetMenuHeight, 1, |
|
2513 PyDoc_STR("(SInt16 height) -> None")}, |
|
2514 {"as_Resource", (PyCFunction)MenuObj_as_Resource, 1, |
|
2515 PyDoc_STR("() -> (Handle _rv)")}, |
|
2516 {"AppendMenu", (PyCFunction)MenuObj_AppendMenu, 1, |
|
2517 PyDoc_STR("(Str255 data) -> None")}, |
|
2518 {"InsertMenu", (PyCFunction)MenuObj_InsertMenu, 1, |
|
2519 PyDoc_STR("(short beforeID) -> None")}, |
|
2520 {"InsertMenuItem", (PyCFunction)MenuObj_InsertMenuItem, 1, |
|
2521 PyDoc_STR("(Str255 itemString, short afterItem) -> None")}, |
|
2522 {"EnableMenuItem", (PyCFunction)MenuObj_EnableMenuItem, 1, |
|
2523 PyDoc_STR("(UInt16 item) -> None")}, |
|
2524 {"CheckMenuItem", (PyCFunction)MenuObj_CheckMenuItem, 1, |
|
2525 PyDoc_STR("(short item, Boolean checked) -> None")}, |
|
2526 {NULL, NULL, 0} |
|
2527 }; |
|
2528 |
|
2529 #define MenuObj_getsetlist NULL |
|
2530 |
|
2531 |
|
2532 #define MenuObj_compare NULL |
|
2533 |
|
2534 #define MenuObj_repr NULL |
|
2535 |
|
2536 #define MenuObj_hash NULL |
|
2537 #define MenuObj_tp_init 0 |
|
2538 |
|
2539 #define MenuObj_tp_alloc PyType_GenericAlloc |
|
2540 |
|
2541 static PyObject *MenuObj_tp_new(PyTypeObject *type, PyObject *_args, PyObject *_kwds) |
|
2542 { |
|
2543 PyObject *_self; |
|
2544 MenuHandle itself; |
|
2545 char *kw[] = {"itself", 0}; |
|
2546 |
|
2547 if (!PyArg_ParseTupleAndKeywords(_args, _kwds, "O&", kw, MenuObj_Convert, &itself)) return NULL; |
|
2548 if ((_self = type->tp_alloc(type, 0)) == NULL) return NULL; |
|
2549 ((MenuObject *)_self)->ob_itself = itself; |
|
2550 return _self; |
|
2551 } |
|
2552 |
|
2553 #define MenuObj_tp_free PyObject_Del |
|
2554 |
|
2555 |
|
2556 PyTypeObject Menu_Type = { |
|
2557 PyObject_HEAD_INIT(NULL) |
|
2558 0, /*ob_size*/ |
|
2559 "_Menu.Menu", /*tp_name*/ |
|
2560 sizeof(MenuObject), /*tp_basicsize*/ |
|
2561 0, /*tp_itemsize*/ |
|
2562 /* methods */ |
|
2563 (destructor) MenuObj_dealloc, /*tp_dealloc*/ |
|
2564 0, /*tp_print*/ |
|
2565 (getattrfunc)0, /*tp_getattr*/ |
|
2566 (setattrfunc)0, /*tp_setattr*/ |
|
2567 (cmpfunc) MenuObj_compare, /*tp_compare*/ |
|
2568 (reprfunc) MenuObj_repr, /*tp_repr*/ |
|
2569 (PyNumberMethods *)0, /* tp_as_number */ |
|
2570 (PySequenceMethods *)0, /* tp_as_sequence */ |
|
2571 (PyMappingMethods *)0, /* tp_as_mapping */ |
|
2572 (hashfunc) MenuObj_hash, /*tp_hash*/ |
|
2573 0, /*tp_call*/ |
|
2574 0, /*tp_str*/ |
|
2575 PyObject_GenericGetAttr, /*tp_getattro*/ |
|
2576 PyObject_GenericSetAttr, /*tp_setattro */ |
|
2577 0, /*tp_as_buffer*/ |
|
2578 Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE, /* tp_flags */ |
|
2579 0, /*tp_doc*/ |
|
2580 0, /*tp_traverse*/ |
|
2581 0, /*tp_clear*/ |
|
2582 0, /*tp_richcompare*/ |
|
2583 0, /*tp_weaklistoffset*/ |
|
2584 0, /*tp_iter*/ |
|
2585 0, /*tp_iternext*/ |
|
2586 MenuObj_methods, /* tp_methods */ |
|
2587 0, /*tp_members*/ |
|
2588 MenuObj_getsetlist, /*tp_getset*/ |
|
2589 0, /*tp_base*/ |
|
2590 0, /*tp_dict*/ |
|
2591 0, /*tp_descr_get*/ |
|
2592 0, /*tp_descr_set*/ |
|
2593 0, /*tp_dictoffset*/ |
|
2594 MenuObj_tp_init, /* tp_init */ |
|
2595 MenuObj_tp_alloc, /* tp_alloc */ |
|
2596 MenuObj_tp_new, /* tp_new */ |
|
2597 MenuObj_tp_free, /* tp_free */ |
|
2598 }; |
|
2599 |
|
2600 /* ---------------------- End object type Menu ---------------------- */ |
|
2601 |
|
2602 |
|
2603 static PyObject *Menu_NewMenu(PyObject *_self, PyObject *_args) |
|
2604 { |
|
2605 PyObject *_res = NULL; |
|
2606 MenuHandle _rv; |
|
2607 MenuID menuID; |
|
2608 Str255 menuTitle; |
|
2609 #ifndef NewMenu |
|
2610 PyMac_PRECHECK(NewMenu); |
|
2611 #endif |
|
2612 if (!PyArg_ParseTuple(_args, "hO&", |
|
2613 &menuID, |
|
2614 PyMac_GetStr255, menuTitle)) |
|
2615 return NULL; |
|
2616 _rv = NewMenu(menuID, |
|
2617 menuTitle); |
|
2618 _res = Py_BuildValue("O&", |
|
2619 MenuObj_New, _rv); |
|
2620 return _res; |
|
2621 } |
|
2622 |
|
2623 static PyObject *Menu_MacGetMenu(PyObject *_self, PyObject *_args) |
|
2624 { |
|
2625 PyObject *_res = NULL; |
|
2626 MenuHandle _rv; |
|
2627 short resourceID; |
|
2628 #ifndef MacGetMenu |
|
2629 PyMac_PRECHECK(MacGetMenu); |
|
2630 #endif |
|
2631 if (!PyArg_ParseTuple(_args, "h", |
|
2632 &resourceID)) |
|
2633 return NULL; |
|
2634 _rv = MacGetMenu(resourceID); |
|
2635 _res = Py_BuildValue("O&", |
|
2636 MenuObj_New, _rv); |
|
2637 return _res; |
|
2638 } |
|
2639 |
|
2640 static PyObject *Menu_CreateNewMenu(PyObject *_self, PyObject *_args) |
|
2641 { |
|
2642 PyObject *_res = NULL; |
|
2643 OSStatus _err; |
|
2644 MenuID inMenuID; |
|
2645 MenuAttributes inMenuAttributes; |
|
2646 MenuHandle outMenuRef; |
|
2647 #ifndef CreateNewMenu |
|
2648 PyMac_PRECHECK(CreateNewMenu); |
|
2649 #endif |
|
2650 if (!PyArg_ParseTuple(_args, "hl", |
|
2651 &inMenuID, |
|
2652 &inMenuAttributes)) |
|
2653 return NULL; |
|
2654 _err = CreateNewMenu(inMenuID, |
|
2655 inMenuAttributes, |
|
2656 &outMenuRef); |
|
2657 if (_err != noErr) return PyMac_Error(_err); |
|
2658 _res = Py_BuildValue("O&", |
|
2659 MenuObj_New, outMenuRef); |
|
2660 return _res; |
|
2661 } |
|
2662 |
|
2663 static PyObject *Menu_MenuKey(PyObject *_self, PyObject *_args) |
|
2664 { |
|
2665 PyObject *_res = NULL; |
|
2666 long _rv; |
|
2667 CharParameter ch; |
|
2668 #ifndef MenuKey |
|
2669 PyMac_PRECHECK(MenuKey); |
|
2670 #endif |
|
2671 if (!PyArg_ParseTuple(_args, "h", |
|
2672 &ch)) |
|
2673 return NULL; |
|
2674 _rv = MenuKey(ch); |
|
2675 _res = Py_BuildValue("l", |
|
2676 _rv); |
|
2677 return _res; |
|
2678 } |
|
2679 |
|
2680 static PyObject *Menu_MenuSelect(PyObject *_self, PyObject *_args) |
|
2681 { |
|
2682 PyObject *_res = NULL; |
|
2683 long _rv; |
|
2684 Point startPt; |
|
2685 #ifndef MenuSelect |
|
2686 PyMac_PRECHECK(MenuSelect); |
|
2687 #endif |
|
2688 if (!PyArg_ParseTuple(_args, "O&", |
|
2689 PyMac_GetPoint, &startPt)) |
|
2690 return NULL; |
|
2691 _rv = MenuSelect(startPt); |
|
2692 _res = Py_BuildValue("l", |
|
2693 _rv); |
|
2694 return _res; |
|
2695 } |
|
2696 |
|
2697 static PyObject *Menu_MenuChoice(PyObject *_self, PyObject *_args) |
|
2698 { |
|
2699 PyObject *_res = NULL; |
|
2700 long _rv; |
|
2701 #ifndef MenuChoice |
|
2702 PyMac_PRECHECK(MenuChoice); |
|
2703 #endif |
|
2704 if (!PyArg_ParseTuple(_args, "")) |
|
2705 return NULL; |
|
2706 _rv = MenuChoice(); |
|
2707 _res = Py_BuildValue("l", |
|
2708 _rv); |
|
2709 return _res; |
|
2710 } |
|
2711 |
|
2712 static PyObject *Menu_MenuEvent(PyObject *_self, PyObject *_args) |
|
2713 { |
|
2714 PyObject *_res = NULL; |
|
2715 UInt32 _rv; |
|
2716 EventRecord inEvent; |
|
2717 #ifndef MenuEvent |
|
2718 PyMac_PRECHECK(MenuEvent); |
|
2719 #endif |
|
2720 if (!PyArg_ParseTuple(_args, "O&", |
|
2721 PyMac_GetEventRecord, &inEvent)) |
|
2722 return NULL; |
|
2723 _rv = MenuEvent(&inEvent); |
|
2724 _res = Py_BuildValue("l", |
|
2725 _rv); |
|
2726 return _res; |
|
2727 } |
|
2728 |
|
2729 static PyObject *Menu_GetMBarHeight(PyObject *_self, PyObject *_args) |
|
2730 { |
|
2731 PyObject *_res = NULL; |
|
2732 short _rv; |
|
2733 #ifndef GetMBarHeight |
|
2734 PyMac_PRECHECK(GetMBarHeight); |
|
2735 #endif |
|
2736 if (!PyArg_ParseTuple(_args, "")) |
|
2737 return NULL; |
|
2738 _rv = GetMBarHeight(); |
|
2739 _res = Py_BuildValue("h", |
|
2740 _rv); |
|
2741 return _res; |
|
2742 } |
|
2743 |
|
2744 static PyObject *Menu_MacDrawMenuBar(PyObject *_self, PyObject *_args) |
|
2745 { |
|
2746 PyObject *_res = NULL; |
|
2747 #ifndef MacDrawMenuBar |
|
2748 PyMac_PRECHECK(MacDrawMenuBar); |
|
2749 #endif |
|
2750 if (!PyArg_ParseTuple(_args, "")) |
|
2751 return NULL; |
|
2752 MacDrawMenuBar(); |
|
2753 Py_INCREF(Py_None); |
|
2754 _res = Py_None; |
|
2755 return _res; |
|
2756 } |
|
2757 |
|
2758 static PyObject *Menu_InvalMenuBar(PyObject *_self, PyObject *_args) |
|
2759 { |
|
2760 PyObject *_res = NULL; |
|
2761 #ifndef InvalMenuBar |
|
2762 PyMac_PRECHECK(InvalMenuBar); |
|
2763 #endif |
|
2764 if (!PyArg_ParseTuple(_args, "")) |
|
2765 return NULL; |
|
2766 InvalMenuBar(); |
|
2767 Py_INCREF(Py_None); |
|
2768 _res = Py_None; |
|
2769 return _res; |
|
2770 } |
|
2771 |
|
2772 static PyObject *Menu_HiliteMenu(PyObject *_self, PyObject *_args) |
|
2773 { |
|
2774 PyObject *_res = NULL; |
|
2775 MenuID menuID; |
|
2776 #ifndef HiliteMenu |
|
2777 PyMac_PRECHECK(HiliteMenu); |
|
2778 #endif |
|
2779 if (!PyArg_ParseTuple(_args, "h", |
|
2780 &menuID)) |
|
2781 return NULL; |
|
2782 HiliteMenu(menuID); |
|
2783 Py_INCREF(Py_None); |
|
2784 _res = Py_None; |
|
2785 return _res; |
|
2786 } |
|
2787 |
|
2788 static PyObject *Menu_GetNewMBar(PyObject *_self, PyObject *_args) |
|
2789 { |
|
2790 PyObject *_res = NULL; |
|
2791 MenuBarHandle _rv; |
|
2792 short menuBarID; |
|
2793 #ifndef GetNewMBar |
|
2794 PyMac_PRECHECK(GetNewMBar); |
|
2795 #endif |
|
2796 if (!PyArg_ParseTuple(_args, "h", |
|
2797 &menuBarID)) |
|
2798 return NULL; |
|
2799 _rv = GetNewMBar(menuBarID); |
|
2800 _res = Py_BuildValue("O&", |
|
2801 ResObj_New, _rv); |
|
2802 return _res; |
|
2803 } |
|
2804 |
|
2805 static PyObject *Menu_GetMenuBar(PyObject *_self, PyObject *_args) |
|
2806 { |
|
2807 PyObject *_res = NULL; |
|
2808 MenuBarHandle _rv; |
|
2809 #ifndef GetMenuBar |
|
2810 PyMac_PRECHECK(GetMenuBar); |
|
2811 #endif |
|
2812 if (!PyArg_ParseTuple(_args, "")) |
|
2813 return NULL; |
|
2814 _rv = GetMenuBar(); |
|
2815 _res = Py_BuildValue("O&", |
|
2816 ResObj_New, _rv); |
|
2817 return _res; |
|
2818 } |
|
2819 |
|
2820 static PyObject *Menu_SetMenuBar(PyObject *_self, PyObject *_args) |
|
2821 { |
|
2822 PyObject *_res = NULL; |
|
2823 MenuBarHandle mbar; |
|
2824 #ifndef SetMenuBar |
|
2825 PyMac_PRECHECK(SetMenuBar); |
|
2826 #endif |
|
2827 if (!PyArg_ParseTuple(_args, "O&", |
|
2828 ResObj_Convert, &mbar)) |
|
2829 return NULL; |
|
2830 SetMenuBar(mbar); |
|
2831 Py_INCREF(Py_None); |
|
2832 _res = Py_None; |
|
2833 return _res; |
|
2834 } |
|
2835 |
|
2836 static PyObject *Menu_DuplicateMenuBar(PyObject *_self, PyObject *_args) |
|
2837 { |
|
2838 PyObject *_res = NULL; |
|
2839 OSStatus _err; |
|
2840 MenuBarHandle inMbar; |
|
2841 MenuBarHandle outMbar; |
|
2842 #ifndef DuplicateMenuBar |
|
2843 PyMac_PRECHECK(DuplicateMenuBar); |
|
2844 #endif |
|
2845 if (!PyArg_ParseTuple(_args, "O&", |
|
2846 ResObj_Convert, &inMbar)) |
|
2847 return NULL; |
|
2848 _err = DuplicateMenuBar(inMbar, |
|
2849 &outMbar); |
|
2850 if (_err != noErr) return PyMac_Error(_err); |
|
2851 _res = Py_BuildValue("O&", |
|
2852 ResObj_New, outMbar); |
|
2853 return _res; |
|
2854 } |
|
2855 |
|
2856 static PyObject *Menu_DisposeMenuBar(PyObject *_self, PyObject *_args) |
|
2857 { |
|
2858 PyObject *_res = NULL; |
|
2859 OSStatus _err; |
|
2860 MenuBarHandle inMbar; |
|
2861 #ifndef DisposeMenuBar |
|
2862 PyMac_PRECHECK(DisposeMenuBar); |
|
2863 #endif |
|
2864 if (!PyArg_ParseTuple(_args, "O&", |
|
2865 ResObj_Convert, &inMbar)) |
|
2866 return NULL; |
|
2867 _err = DisposeMenuBar(inMbar); |
|
2868 if (_err != noErr) return PyMac_Error(_err); |
|
2869 Py_INCREF(Py_None); |
|
2870 _res = Py_None; |
|
2871 return _res; |
|
2872 } |
|
2873 |
|
2874 static PyObject *Menu_GetMenuHandle(PyObject *_self, PyObject *_args) |
|
2875 { |
|
2876 PyObject *_res = NULL; |
|
2877 MenuHandle _rv; |
|
2878 MenuID menuID; |
|
2879 #ifndef GetMenuHandle |
|
2880 PyMac_PRECHECK(GetMenuHandle); |
|
2881 #endif |
|
2882 if (!PyArg_ParseTuple(_args, "h", |
|
2883 &menuID)) |
|
2884 return NULL; |
|
2885 _rv = GetMenuHandle(menuID); |
|
2886 _res = Py_BuildValue("O&", |
|
2887 MenuObj_New, _rv); |
|
2888 return _res; |
|
2889 } |
|
2890 |
|
2891 static PyObject *Menu_MacDeleteMenu(PyObject *_self, PyObject *_args) |
|
2892 { |
|
2893 PyObject *_res = NULL; |
|
2894 MenuID menuID; |
|
2895 #ifndef MacDeleteMenu |
|
2896 PyMac_PRECHECK(MacDeleteMenu); |
|
2897 #endif |
|
2898 if (!PyArg_ParseTuple(_args, "h", |
|
2899 &menuID)) |
|
2900 return NULL; |
|
2901 MacDeleteMenu(menuID); |
|
2902 Py_INCREF(Py_None); |
|
2903 _res = Py_None; |
|
2904 return _res; |
|
2905 } |
|
2906 |
|
2907 static PyObject *Menu_ClearMenuBar(PyObject *_self, PyObject *_args) |
|
2908 { |
|
2909 PyObject *_res = NULL; |
|
2910 #ifndef ClearMenuBar |
|
2911 PyMac_PRECHECK(ClearMenuBar); |
|
2912 #endif |
|
2913 if (!PyArg_ParseTuple(_args, "")) |
|
2914 return NULL; |
|
2915 ClearMenuBar(); |
|
2916 Py_INCREF(Py_None); |
|
2917 _res = Py_None; |
|
2918 return _res; |
|
2919 } |
|
2920 |
|
2921 static PyObject *Menu_SetMenuFlashCount(PyObject *_self, PyObject *_args) |
|
2922 { |
|
2923 PyObject *_res = NULL; |
|
2924 short count; |
|
2925 #ifndef SetMenuFlashCount |
|
2926 PyMac_PRECHECK(SetMenuFlashCount); |
|
2927 #endif |
|
2928 if (!PyArg_ParseTuple(_args, "h", |
|
2929 &count)) |
|
2930 return NULL; |
|
2931 SetMenuFlashCount(count); |
|
2932 Py_INCREF(Py_None); |
|
2933 _res = Py_None; |
|
2934 return _res; |
|
2935 } |
|
2936 |
|
2937 static PyObject *Menu_FlashMenuBar(PyObject *_self, PyObject *_args) |
|
2938 { |
|
2939 PyObject *_res = NULL; |
|
2940 MenuID menuID; |
|
2941 #ifndef FlashMenuBar |
|
2942 PyMac_PRECHECK(FlashMenuBar); |
|
2943 #endif |
|
2944 if (!PyArg_ParseTuple(_args, "h", |
|
2945 &menuID)) |
|
2946 return NULL; |
|
2947 FlashMenuBar(menuID); |
|
2948 Py_INCREF(Py_None); |
|
2949 _res = Py_None; |
|
2950 return _res; |
|
2951 } |
|
2952 |
|
2953 static PyObject *Menu_IsMenuBarVisible(PyObject *_self, PyObject *_args) |
|
2954 { |
|
2955 PyObject *_res = NULL; |
|
2956 Boolean _rv; |
|
2957 #ifndef IsMenuBarVisible |
|
2958 PyMac_PRECHECK(IsMenuBarVisible); |
|
2959 #endif |
|
2960 if (!PyArg_ParseTuple(_args, "")) |
|
2961 return NULL; |
|
2962 _rv = IsMenuBarVisible(); |
|
2963 _res = Py_BuildValue("b", |
|
2964 _rv); |
|
2965 return _res; |
|
2966 } |
|
2967 |
|
2968 static PyObject *Menu_ShowMenuBar(PyObject *_self, PyObject *_args) |
|
2969 { |
|
2970 PyObject *_res = NULL; |
|
2971 #ifndef ShowMenuBar |
|
2972 PyMac_PRECHECK(ShowMenuBar); |
|
2973 #endif |
|
2974 if (!PyArg_ParseTuple(_args, "")) |
|
2975 return NULL; |
|
2976 ShowMenuBar(); |
|
2977 Py_INCREF(Py_None); |
|
2978 _res = Py_None; |
|
2979 return _res; |
|
2980 } |
|
2981 |
|
2982 static PyObject *Menu_HideMenuBar(PyObject *_self, PyObject *_args) |
|
2983 { |
|
2984 PyObject *_res = NULL; |
|
2985 #ifndef HideMenuBar |
|
2986 PyMac_PRECHECK(HideMenuBar); |
|
2987 #endif |
|
2988 if (!PyArg_ParseTuple(_args, "")) |
|
2989 return NULL; |
|
2990 HideMenuBar(); |
|
2991 Py_INCREF(Py_None); |
|
2992 _res = Py_None; |
|
2993 return _res; |
|
2994 } |
|
2995 |
|
2996 static PyObject *Menu_AcquireRootMenu(PyObject *_self, PyObject *_args) |
|
2997 { |
|
2998 PyObject *_res = NULL; |
|
2999 MenuHandle _rv; |
|
3000 #ifndef AcquireRootMenu |
|
3001 PyMac_PRECHECK(AcquireRootMenu); |
|
3002 #endif |
|
3003 if (!PyArg_ParseTuple(_args, "")) |
|
3004 return NULL; |
|
3005 _rv = AcquireRootMenu(); |
|
3006 _res = Py_BuildValue("O&", |
|
3007 MenuObj_New, _rv); |
|
3008 return _res; |
|
3009 } |
|
3010 |
|
3011 static PyObject *Menu_DeleteMCEntries(PyObject *_self, PyObject *_args) |
|
3012 { |
|
3013 PyObject *_res = NULL; |
|
3014 MenuID menuID; |
|
3015 short menuItem; |
|
3016 #ifndef DeleteMCEntries |
|
3017 PyMac_PRECHECK(DeleteMCEntries); |
|
3018 #endif |
|
3019 if (!PyArg_ParseTuple(_args, "hh", |
|
3020 &menuID, |
|
3021 &menuItem)) |
|
3022 return NULL; |
|
3023 DeleteMCEntries(menuID, |
|
3024 menuItem); |
|
3025 Py_INCREF(Py_None); |
|
3026 _res = Py_None; |
|
3027 return _res; |
|
3028 } |
|
3029 |
|
3030 static PyObject *Menu_InitContextualMenus(PyObject *_self, PyObject *_args) |
|
3031 { |
|
3032 PyObject *_res = NULL; |
|
3033 OSStatus _err; |
|
3034 #ifndef InitContextualMenus |
|
3035 PyMac_PRECHECK(InitContextualMenus); |
|
3036 #endif |
|
3037 if (!PyArg_ParseTuple(_args, "")) |
|
3038 return NULL; |
|
3039 _err = InitContextualMenus(); |
|
3040 if (_err != noErr) return PyMac_Error(_err); |
|
3041 Py_INCREF(Py_None); |
|
3042 _res = Py_None; |
|
3043 return _res; |
|
3044 } |
|
3045 |
|
3046 static PyObject *Menu_IsShowContextualMenuClick(PyObject *_self, PyObject *_args) |
|
3047 { |
|
3048 PyObject *_res = NULL; |
|
3049 Boolean _rv; |
|
3050 EventRecord inEvent; |
|
3051 #ifndef IsShowContextualMenuClick |
|
3052 PyMac_PRECHECK(IsShowContextualMenuClick); |
|
3053 #endif |
|
3054 if (!PyArg_ParseTuple(_args, "O&", |
|
3055 PyMac_GetEventRecord, &inEvent)) |
|
3056 return NULL; |
|
3057 _rv = IsShowContextualMenuClick(&inEvent); |
|
3058 _res = Py_BuildValue("b", |
|
3059 _rv); |
|
3060 return _res; |
|
3061 } |
|
3062 |
|
3063 static PyObject *Menu_LMGetTheMenu(PyObject *_self, PyObject *_args) |
|
3064 { |
|
3065 PyObject *_res = NULL; |
|
3066 SInt16 _rv; |
|
3067 #ifndef LMGetTheMenu |
|
3068 PyMac_PRECHECK(LMGetTheMenu); |
|
3069 #endif |
|
3070 if (!PyArg_ParseTuple(_args, "")) |
|
3071 return NULL; |
|
3072 _rv = LMGetTheMenu(); |
|
3073 _res = Py_BuildValue("h", |
|
3074 _rv); |
|
3075 return _res; |
|
3076 } |
|
3077 |
|
3078 static PyObject *Menu_as_Menu(PyObject *_self, PyObject *_args) |
|
3079 { |
|
3080 PyObject *_res = NULL; |
|
3081 MenuHandle _rv; |
|
3082 Handle h; |
|
3083 #ifndef as_Menu |
|
3084 PyMac_PRECHECK(as_Menu); |
|
3085 #endif |
|
3086 if (!PyArg_ParseTuple(_args, "O&", |
|
3087 ResObj_Convert, &h)) |
|
3088 return NULL; |
|
3089 _rv = as_Menu(h); |
|
3090 _res = Py_BuildValue("O&", |
|
3091 MenuObj_New, _rv); |
|
3092 return _res; |
|
3093 } |
|
3094 |
|
3095 static PyObject *Menu_GetMenu(PyObject *_self, PyObject *_args) |
|
3096 { |
|
3097 PyObject *_res = NULL; |
|
3098 MenuHandle _rv; |
|
3099 short resourceID; |
|
3100 #ifndef GetMenu |
|
3101 PyMac_PRECHECK(GetMenu); |
|
3102 #endif |
|
3103 if (!PyArg_ParseTuple(_args, "h", |
|
3104 &resourceID)) |
|
3105 return NULL; |
|
3106 _rv = GetMenu(resourceID); |
|
3107 _res = Py_BuildValue("O&", |
|
3108 MenuObj_New, _rv); |
|
3109 return _res; |
|
3110 } |
|
3111 |
|
3112 static PyObject *Menu_DeleteMenu(PyObject *_self, PyObject *_args) |
|
3113 { |
|
3114 PyObject *_res = NULL; |
|
3115 short menuID; |
|
3116 #ifndef DeleteMenu |
|
3117 PyMac_PRECHECK(DeleteMenu); |
|
3118 #endif |
|
3119 if (!PyArg_ParseTuple(_args, "h", |
|
3120 &menuID)) |
|
3121 return NULL; |
|
3122 DeleteMenu(menuID); |
|
3123 Py_INCREF(Py_None); |
|
3124 _res = Py_None; |
|
3125 return _res; |
|
3126 } |
|
3127 |
|
3128 static PyObject *Menu_DrawMenuBar(PyObject *_self, PyObject *_args) |
|
3129 { |
|
3130 PyObject *_res = NULL; |
|
3131 #ifndef DrawMenuBar |
|
3132 PyMac_PRECHECK(DrawMenuBar); |
|
3133 #endif |
|
3134 if (!PyArg_ParseTuple(_args, "")) |
|
3135 return NULL; |
|
3136 DrawMenuBar(); |
|
3137 Py_INCREF(Py_None); |
|
3138 _res = Py_None; |
|
3139 return _res; |
|
3140 } |
|
3141 |
|
3142 static PyObject *Menu_CountMenuItemsWithCommandID(PyObject *_self, PyObject *_args) |
|
3143 { |
|
3144 PyObject *_res = NULL; |
|
3145 ItemCount _rv; |
|
3146 MenuHandle inMenu; |
|
3147 MenuCommand inCommandID; |
|
3148 #ifndef CountMenuItemsWithCommandID |
|
3149 PyMac_PRECHECK(CountMenuItemsWithCommandID); |
|
3150 #endif |
|
3151 if (!PyArg_ParseTuple(_args, "O&l", |
|
3152 OptMenuObj_Convert, &inMenu, |
|
3153 &inCommandID)) |
|
3154 return NULL; |
|
3155 _rv = CountMenuItemsWithCommandID(inMenu, |
|
3156 inCommandID); |
|
3157 _res = Py_BuildValue("l", |
|
3158 _rv); |
|
3159 return _res; |
|
3160 } |
|
3161 |
|
3162 static PyObject *Menu_GetIndMenuItemWithCommandID(PyObject *_self, PyObject *_args) |
|
3163 { |
|
3164 PyObject *_res = NULL; |
|
3165 OSStatus _err; |
|
3166 MenuHandle inMenu; |
|
3167 MenuCommand inCommandID; |
|
3168 UInt32 inItemIndex; |
|
3169 MenuHandle outMenu; |
|
3170 MenuItemIndex outIndex; |
|
3171 #ifndef GetIndMenuItemWithCommandID |
|
3172 PyMac_PRECHECK(GetIndMenuItemWithCommandID); |
|
3173 #endif |
|
3174 if (!PyArg_ParseTuple(_args, "O&ll", |
|
3175 OptMenuObj_Convert, &inMenu, |
|
3176 &inCommandID, |
|
3177 &inItemIndex)) |
|
3178 return NULL; |
|
3179 _err = GetIndMenuItemWithCommandID(inMenu, |
|
3180 inCommandID, |
|
3181 inItemIndex, |
|
3182 &outMenu, |
|
3183 &outIndex); |
|
3184 if (_err != noErr) return PyMac_Error(_err); |
|
3185 _res = Py_BuildValue("O&h", |
|
3186 MenuObj_New, outMenu, |
|
3187 outIndex); |
|
3188 return _res; |
|
3189 } |
|
3190 |
|
3191 static PyObject *Menu_EnableMenuCommand(PyObject *_self, PyObject *_args) |
|
3192 { |
|
3193 PyObject *_res = NULL; |
|
3194 MenuHandle inMenu; |
|
3195 MenuCommand inCommandID; |
|
3196 #ifndef EnableMenuCommand |
|
3197 PyMac_PRECHECK(EnableMenuCommand); |
|
3198 #endif |
|
3199 if (!PyArg_ParseTuple(_args, "O&l", |
|
3200 OptMenuObj_Convert, &inMenu, |
|
3201 &inCommandID)) |
|
3202 return NULL; |
|
3203 EnableMenuCommand(inMenu, |
|
3204 inCommandID); |
|
3205 Py_INCREF(Py_None); |
|
3206 _res = Py_None; |
|
3207 return _res; |
|
3208 } |
|
3209 |
|
3210 static PyObject *Menu_DisableMenuCommand(PyObject *_self, PyObject *_args) |
|
3211 { |
|
3212 PyObject *_res = NULL; |
|
3213 MenuHandle inMenu; |
|
3214 MenuCommand inCommandID; |
|
3215 #ifndef DisableMenuCommand |
|
3216 PyMac_PRECHECK(DisableMenuCommand); |
|
3217 #endif |
|
3218 if (!PyArg_ParseTuple(_args, "O&l", |
|
3219 OptMenuObj_Convert, &inMenu, |
|
3220 &inCommandID)) |
|
3221 return NULL; |
|
3222 DisableMenuCommand(inMenu, |
|
3223 inCommandID); |
|
3224 Py_INCREF(Py_None); |
|
3225 _res = Py_None; |
|
3226 return _res; |
|
3227 } |
|
3228 |
|
3229 static PyObject *Menu_IsMenuCommandEnabled(PyObject *_self, PyObject *_args) |
|
3230 { |
|
3231 PyObject *_res = NULL; |
|
3232 Boolean _rv; |
|
3233 MenuHandle inMenu; |
|
3234 MenuCommand inCommandID; |
|
3235 #ifndef IsMenuCommandEnabled |
|
3236 PyMac_PRECHECK(IsMenuCommandEnabled); |
|
3237 #endif |
|
3238 if (!PyArg_ParseTuple(_args, "O&l", |
|
3239 OptMenuObj_Convert, &inMenu, |
|
3240 &inCommandID)) |
|
3241 return NULL; |
|
3242 _rv = IsMenuCommandEnabled(inMenu, |
|
3243 inCommandID); |
|
3244 _res = Py_BuildValue("b", |
|
3245 _rv); |
|
3246 return _res; |
|
3247 } |
|
3248 |
|
3249 static PyObject *Menu_SetMenuCommandMark(PyObject *_self, PyObject *_args) |
|
3250 { |
|
3251 PyObject *_res = NULL; |
|
3252 OSStatus _err; |
|
3253 MenuHandle inMenu; |
|
3254 MenuCommand inCommandID; |
|
3255 UniChar inMark; |
|
3256 #ifndef SetMenuCommandMark |
|
3257 PyMac_PRECHECK(SetMenuCommandMark); |
|
3258 #endif |
|
3259 if (!PyArg_ParseTuple(_args, "O&lh", |
|
3260 OptMenuObj_Convert, &inMenu, |
|
3261 &inCommandID, |
|
3262 &inMark)) |
|
3263 return NULL; |
|
3264 _err = SetMenuCommandMark(inMenu, |
|
3265 inCommandID, |
|
3266 inMark); |
|
3267 if (_err != noErr) return PyMac_Error(_err); |
|
3268 Py_INCREF(Py_None); |
|
3269 _res = Py_None; |
|
3270 return _res; |
|
3271 } |
|
3272 |
|
3273 static PyObject *Menu_GetMenuCommandMark(PyObject *_self, PyObject *_args) |
|
3274 { |
|
3275 PyObject *_res = NULL; |
|
3276 OSStatus _err; |
|
3277 MenuHandle inMenu; |
|
3278 MenuCommand inCommandID; |
|
3279 UniChar outMark; |
|
3280 #ifndef GetMenuCommandMark |
|
3281 PyMac_PRECHECK(GetMenuCommandMark); |
|
3282 #endif |
|
3283 if (!PyArg_ParseTuple(_args, "O&l", |
|
3284 OptMenuObj_Convert, &inMenu, |
|
3285 &inCommandID)) |
|
3286 return NULL; |
|
3287 _err = GetMenuCommandMark(inMenu, |
|
3288 inCommandID, |
|
3289 &outMark); |
|
3290 if (_err != noErr) return PyMac_Error(_err); |
|
3291 _res = Py_BuildValue("h", |
|
3292 outMark); |
|
3293 return _res; |
|
3294 } |
|
3295 |
|
3296 static PyObject *Menu_GetMenuCommandPropertySize(PyObject *_self, PyObject *_args) |
|
3297 { |
|
3298 PyObject *_res = NULL; |
|
3299 OSStatus _err; |
|
3300 MenuHandle inMenu; |
|
3301 MenuCommand inCommandID; |
|
3302 OSType inPropertyCreator; |
|
3303 OSType inPropertyTag; |
|
3304 ByteCount outSize; |
|
3305 #ifndef GetMenuCommandPropertySize |
|
3306 PyMac_PRECHECK(GetMenuCommandPropertySize); |
|
3307 #endif |
|
3308 if (!PyArg_ParseTuple(_args, "O&lO&O&", |
|
3309 OptMenuObj_Convert, &inMenu, |
|
3310 &inCommandID, |
|
3311 PyMac_GetOSType, &inPropertyCreator, |
|
3312 PyMac_GetOSType, &inPropertyTag)) |
|
3313 return NULL; |
|
3314 _err = GetMenuCommandPropertySize(inMenu, |
|
3315 inCommandID, |
|
3316 inPropertyCreator, |
|
3317 inPropertyTag, |
|
3318 &outSize); |
|
3319 if (_err != noErr) return PyMac_Error(_err); |
|
3320 _res = Py_BuildValue("l", |
|
3321 outSize); |
|
3322 return _res; |
|
3323 } |
|
3324 |
|
3325 static PyObject *Menu_RemoveMenuCommandProperty(PyObject *_self, PyObject *_args) |
|
3326 { |
|
3327 PyObject *_res = NULL; |
|
3328 OSStatus _err; |
|
3329 MenuHandle inMenu; |
|
3330 MenuCommand inCommandID; |
|
3331 OSType inPropertyCreator; |
|
3332 OSType inPropertyTag; |
|
3333 #ifndef RemoveMenuCommandProperty |
|
3334 PyMac_PRECHECK(RemoveMenuCommandProperty); |
|
3335 #endif |
|
3336 if (!PyArg_ParseTuple(_args, "O&lO&O&", |
|
3337 OptMenuObj_Convert, &inMenu, |
|
3338 &inCommandID, |
|
3339 PyMac_GetOSType, &inPropertyCreator, |
|
3340 PyMac_GetOSType, &inPropertyTag)) |
|
3341 return NULL; |
|
3342 _err = RemoveMenuCommandProperty(inMenu, |
|
3343 inCommandID, |
|
3344 inPropertyCreator, |
|
3345 inPropertyTag); |
|
3346 if (_err != noErr) return PyMac_Error(_err); |
|
3347 Py_INCREF(Py_None); |
|
3348 _res = Py_None; |
|
3349 return _res; |
|
3350 } |
|
3351 #endif /* __LP64__ */ |
|
3352 |
|
3353 static PyMethodDef Menu_methods[] = { |
|
3354 #ifndef __LP64__ |
|
3355 {"NewMenu", (PyCFunction)Menu_NewMenu, 1, |
|
3356 PyDoc_STR("(MenuID menuID, Str255 menuTitle) -> (MenuHandle _rv)")}, |
|
3357 {"MacGetMenu", (PyCFunction)Menu_MacGetMenu, 1, |
|
3358 PyDoc_STR("(short resourceID) -> (MenuHandle _rv)")}, |
|
3359 {"CreateNewMenu", (PyCFunction)Menu_CreateNewMenu, 1, |
|
3360 PyDoc_STR("(MenuID inMenuID, MenuAttributes inMenuAttributes) -> (MenuHandle outMenuRef)")}, |
|
3361 {"MenuKey", (PyCFunction)Menu_MenuKey, 1, |
|
3362 PyDoc_STR("(CharParameter ch) -> (long _rv)")}, |
|
3363 {"MenuSelect", (PyCFunction)Menu_MenuSelect, 1, |
|
3364 PyDoc_STR("(Point startPt) -> (long _rv)")}, |
|
3365 {"MenuChoice", (PyCFunction)Menu_MenuChoice, 1, |
|
3366 PyDoc_STR("() -> (long _rv)")}, |
|
3367 {"MenuEvent", (PyCFunction)Menu_MenuEvent, 1, |
|
3368 PyDoc_STR("(EventRecord inEvent) -> (UInt32 _rv)")}, |
|
3369 {"GetMBarHeight", (PyCFunction)Menu_GetMBarHeight, 1, |
|
3370 PyDoc_STR("() -> (short _rv)")}, |
|
3371 {"MacDrawMenuBar", (PyCFunction)Menu_MacDrawMenuBar, 1, |
|
3372 PyDoc_STR("() -> None")}, |
|
3373 {"InvalMenuBar", (PyCFunction)Menu_InvalMenuBar, 1, |
|
3374 PyDoc_STR("() -> None")}, |
|
3375 {"HiliteMenu", (PyCFunction)Menu_HiliteMenu, 1, |
|
3376 PyDoc_STR("(MenuID menuID) -> None")}, |
|
3377 {"GetNewMBar", (PyCFunction)Menu_GetNewMBar, 1, |
|
3378 PyDoc_STR("(short menuBarID) -> (MenuBarHandle _rv)")}, |
|
3379 {"GetMenuBar", (PyCFunction)Menu_GetMenuBar, 1, |
|
3380 PyDoc_STR("() -> (MenuBarHandle _rv)")}, |
|
3381 {"SetMenuBar", (PyCFunction)Menu_SetMenuBar, 1, |
|
3382 PyDoc_STR("(MenuBarHandle mbar) -> None")}, |
|
3383 {"DuplicateMenuBar", (PyCFunction)Menu_DuplicateMenuBar, 1, |
|
3384 PyDoc_STR("(MenuBarHandle inMbar) -> (MenuBarHandle outMbar)")}, |
|
3385 {"DisposeMenuBar", (PyCFunction)Menu_DisposeMenuBar, 1, |
|
3386 PyDoc_STR("(MenuBarHandle inMbar) -> None")}, |
|
3387 {"GetMenuHandle", (PyCFunction)Menu_GetMenuHandle, 1, |
|
3388 PyDoc_STR("(MenuID menuID) -> (MenuHandle _rv)")}, |
|
3389 {"MacDeleteMenu", (PyCFunction)Menu_MacDeleteMenu, 1, |
|
3390 PyDoc_STR("(MenuID menuID) -> None")}, |
|
3391 {"ClearMenuBar", (PyCFunction)Menu_ClearMenuBar, 1, |
|
3392 PyDoc_STR("() -> None")}, |
|
3393 {"SetMenuFlashCount", (PyCFunction)Menu_SetMenuFlashCount, 1, |
|
3394 PyDoc_STR("(short count) -> None")}, |
|
3395 {"FlashMenuBar", (PyCFunction)Menu_FlashMenuBar, 1, |
|
3396 PyDoc_STR("(MenuID menuID) -> None")}, |
|
3397 {"IsMenuBarVisible", (PyCFunction)Menu_IsMenuBarVisible, 1, |
|
3398 PyDoc_STR("() -> (Boolean _rv)")}, |
|
3399 {"ShowMenuBar", (PyCFunction)Menu_ShowMenuBar, 1, |
|
3400 PyDoc_STR("() -> None")}, |
|
3401 {"HideMenuBar", (PyCFunction)Menu_HideMenuBar, 1, |
|
3402 PyDoc_STR("() -> None")}, |
|
3403 {"AcquireRootMenu", (PyCFunction)Menu_AcquireRootMenu, 1, |
|
3404 PyDoc_STR("() -> (MenuHandle _rv)")}, |
|
3405 {"DeleteMCEntries", (PyCFunction)Menu_DeleteMCEntries, 1, |
|
3406 PyDoc_STR("(MenuID menuID, short menuItem) -> None")}, |
|
3407 {"InitContextualMenus", (PyCFunction)Menu_InitContextualMenus, 1, |
|
3408 PyDoc_STR("() -> None")}, |
|
3409 {"IsShowContextualMenuClick", (PyCFunction)Menu_IsShowContextualMenuClick, 1, |
|
3410 PyDoc_STR("(EventRecord inEvent) -> (Boolean _rv)")}, |
|
3411 {"LMGetTheMenu", (PyCFunction)Menu_LMGetTheMenu, 1, |
|
3412 PyDoc_STR("() -> (SInt16 _rv)")}, |
|
3413 {"as_Menu", (PyCFunction)Menu_as_Menu, 1, |
|
3414 PyDoc_STR("(Handle h) -> (MenuHandle _rv)")}, |
|
3415 {"GetMenu", (PyCFunction)Menu_GetMenu, 1, |
|
3416 PyDoc_STR("(short resourceID) -> (MenuHandle _rv)")}, |
|
3417 {"DeleteMenu", (PyCFunction)Menu_DeleteMenu, 1, |
|
3418 PyDoc_STR("(short menuID) -> None")}, |
|
3419 {"DrawMenuBar", (PyCFunction)Menu_DrawMenuBar, 1, |
|
3420 PyDoc_STR("() -> None")}, |
|
3421 {"CountMenuItemsWithCommandID", (PyCFunction)Menu_CountMenuItemsWithCommandID, 1, |
|
3422 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID) -> (ItemCount _rv)")}, |
|
3423 {"GetIndMenuItemWithCommandID", (PyCFunction)Menu_GetIndMenuItemWithCommandID, 1, |
|
3424 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID, UInt32 inItemIndex) -> (MenuHandle outMenu, MenuItemIndex outIndex)")}, |
|
3425 {"EnableMenuCommand", (PyCFunction)Menu_EnableMenuCommand, 1, |
|
3426 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID) -> None")}, |
|
3427 {"DisableMenuCommand", (PyCFunction)Menu_DisableMenuCommand, 1, |
|
3428 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID) -> None")}, |
|
3429 {"IsMenuCommandEnabled", (PyCFunction)Menu_IsMenuCommandEnabled, 1, |
|
3430 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID) -> (Boolean _rv)")}, |
|
3431 {"SetMenuCommandMark", (PyCFunction)Menu_SetMenuCommandMark, 1, |
|
3432 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID, UniChar inMark) -> None")}, |
|
3433 {"GetMenuCommandMark", (PyCFunction)Menu_GetMenuCommandMark, 1, |
|
3434 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID) -> (UniChar outMark)")}, |
|
3435 {"GetMenuCommandPropertySize", (PyCFunction)Menu_GetMenuCommandPropertySize, 1, |
|
3436 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID, OSType inPropertyCreator, OSType inPropertyTag) -> (ByteCount outSize)")}, |
|
3437 {"RemoveMenuCommandProperty", (PyCFunction)Menu_RemoveMenuCommandProperty, 1, |
|
3438 PyDoc_STR("(MenuHandle inMenu, MenuCommand inCommandID, OSType inPropertyCreator, OSType inPropertyTag) -> None")}, |
|
3439 #endif /* __LP64__ */ |
|
3440 {NULL, NULL, 0} |
|
3441 }; |
|
3442 |
|
3443 |
|
3444 |
|
3445 |
|
3446 void init_Menu(void) |
|
3447 { |
|
3448 PyObject *m; |
|
3449 #ifndef __LP64__ |
|
3450 PyObject *d; |
|
3451 |
|
3452 |
|
3453 |
|
3454 PyMac_INIT_TOOLBOX_OBJECT_NEW(MenuHandle, MenuObj_New); |
|
3455 PyMac_INIT_TOOLBOX_OBJECT_CONVERT(MenuHandle, MenuObj_Convert); |
|
3456 #endif /* __LP64__ */ |
|
3457 |
|
3458 |
|
3459 m = Py_InitModule("_Menu", Menu_methods); |
|
3460 #ifndef __LP64__ |
|
3461 d = PyModule_GetDict(m); |
|
3462 Menu_Error = PyMac_GetOSErrException(); |
|
3463 if (Menu_Error == NULL || |
|
3464 PyDict_SetItemString(d, "Error", Menu_Error) != 0) |
|
3465 return; |
|
3466 Menu_Type.ob_type = &PyType_Type; |
|
3467 if (PyType_Ready(&Menu_Type) < 0) return; |
|
3468 Py_INCREF(&Menu_Type); |
|
3469 PyModule_AddObject(m, "Menu", (PyObject *)&Menu_Type); |
|
3470 /* Backward-compatible name */ |
|
3471 Py_INCREF(&Menu_Type); |
|
3472 PyModule_AddObject(m, "MenuType", (PyObject *)&Menu_Type); |
|
3473 #endif /* __LP64__ */ |
|
3474 } |
|
3475 |
|
3476 /* ======================== End module _Menu ======================== */ |
|
3477 |