Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 2168e9d

Browse files
committed
Adapted for Universal Headers 3.4
1 parent b519638 commit 2168e9d

19 files changed

Lines changed: 1818 additions & 418 deletions

Mac/Modules/ae/_AEmodule.c

Lines changed: 0 additions & 180 deletions
Original file line numberDiff line numberDiff line change
@@ -552,105 +552,6 @@ static PyObject *AEDesc_AEGetDescDataSize(AEDescObject *_self, PyObject *_args)
552552
}
553553
#endif
554554

555-
static PyObject *AEDesc_AESend(AEDescObject *_self, PyObject *_args)
556-
{
557-
PyObject *_res = NULL;
558-
OSErr _err;
559-
AppleEvent reply;
560-
AESendMode sendMode;
561-
AESendPriority sendPriority;
562-
long timeOutInTicks;
563-
if (!PyArg_ParseTuple(_args, "lhl",
564-
&sendMode,
565-
&sendPriority,
566-
&timeOutInTicks))
567-
return NULL;
568-
_err = AESend(&_self->ob_itself,
569-
&reply,
570-
sendMode,
571-
sendPriority,
572-
timeOutInTicks,
573-
upp_AEIdleProc,
574-
(AEFilterUPP)0);
575-
if (_err != noErr) return PyMac_Error(_err);
576-
_res = Py_BuildValue("O&",
577-
AEDesc_New, &reply);
578-
return _res;
579-
}
580-
581-
static PyObject *AEDesc_AEResetTimer(AEDescObject *_self, PyObject *_args)
582-
{
583-
PyObject *_res = NULL;
584-
OSErr _err;
585-
if (!PyArg_ParseTuple(_args, ""))
586-
return NULL;
587-
_err = AEResetTimer(&_self->ob_itself);
588-
if (_err != noErr) return PyMac_Error(_err);
589-
Py_INCREF(Py_None);
590-
_res = Py_None;
591-
return _res;
592-
}
593-
594-
static PyObject *AEDesc_AESuspendTheCurrentEvent(AEDescObject *_self, PyObject *_args)
595-
{
596-
PyObject *_res = NULL;
597-
OSErr _err;
598-
if (!PyArg_ParseTuple(_args, ""))
599-
return NULL;
600-
_err = AESuspendTheCurrentEvent(&_self->ob_itself);
601-
if (_err != noErr) return PyMac_Error(_err);
602-
Py_INCREF(Py_None);
603-
_res = Py_None;
604-
return _res;
605-
}
606-
607-
static PyObject *AEDesc_AEResumeTheCurrentEvent(AEDescObject *_self, PyObject *_args)
608-
{
609-
PyObject *_res = NULL;
610-
OSErr _err;
611-
AppleEvent reply;
612-
AEEventHandlerUPP dispatcher__proc__ = upp_GenericEventHandler;
613-
PyObject *dispatcher;
614-
if (!PyArg_ParseTuple(_args, "O&O",
615-
AEDesc_Convert, &reply,
616-
&dispatcher))
617-
return NULL;
618-
_err = AEResumeTheCurrentEvent(&_self->ob_itself,
619-
&reply,
620-
dispatcher__proc__, (long)dispatcher);
621-
if (_err != noErr) return PyMac_Error(_err);
622-
Py_INCREF(Py_None);
623-
_res = Py_None;
624-
Py_INCREF(dispatcher); /* XXX leak, but needed */
625-
return _res;
626-
}
627-
628-
static PyObject *AEDesc_AEGetTheCurrentEvent(AEDescObject *_self, PyObject *_args)
629-
{
630-
PyObject *_res = NULL;
631-
OSErr _err;
632-
if (!PyArg_ParseTuple(_args, ""))
633-
return NULL;
634-
_err = AEGetTheCurrentEvent(&_self->ob_itself);
635-
if (_err != noErr) return PyMac_Error(_err);
636-
Py_INCREF(Py_None);
637-
_res = Py_None;
638-
return _res;
639-
}
640-
641-
static PyObject *AEDesc_AESetTheCurrentEvent(AEDescObject *_self, PyObject *_args)
642-
{
643-
PyObject *_res = NULL;
644-
OSErr _err;
645-
if (!PyArg_ParseTuple(_args, ""))
646-
return NULL;
647-
_err = AESetTheCurrentEvent(&_self->ob_itself);
648-
if (_err != noErr) return PyMac_Error(_err);
649-
Py_INCREF(Py_None);
650-
_res = Py_None;
651-
return _res;
652-
}
653-
654555
static PyObject *AEDesc_AEResolve(AEDescObject *_self, PyObject *_args)
655556
{
656557
PyObject *_res = NULL;
@@ -715,18 +616,6 @@ static PyMethodDef AEDesc_methods[] = {
715616
{"AEGetDescDataSize", (PyCFunction)AEDesc_AEGetDescDataSize, 1,
716617
"() -> (Size _rv)"},
717618
#endif
718-
{"AESend", (PyCFunction)AEDesc_AESend, 1,
719-
"(AESendMode sendMode, AESendPriority sendPriority, long timeOutInTicks) -> (AppleEvent reply)"},
720-
{"AEResetTimer", (PyCFunction)AEDesc_AEResetTimer, 1,
721-
"() -> None"},
722-
{"AESuspendTheCurrentEvent", (PyCFunction)AEDesc_AESuspendTheCurrentEvent, 1,
723-
"() -> None"},
724-
{"AEResumeTheCurrentEvent", (PyCFunction)AEDesc_AEResumeTheCurrentEvent, 1,
725-
"(AppleEvent reply, EventHandler dispatcher) -> None"},
726-
{"AEGetTheCurrentEvent", (PyCFunction)AEDesc_AEGetTheCurrentEvent, 1,
727-
"() -> None"},
728-
{"AESetTheCurrentEvent", (PyCFunction)AEDesc_AESetTheCurrentEvent, 1,
729-
"() -> None"},
730619
{"AEResolve", (PyCFunction)AEDesc_AEResolve, 1,
731620
"(short callbackFlags) -> (AEDesc theToken)"},
732621
{NULL, NULL, 0}
@@ -928,67 +817,6 @@ static PyObject *AE_AEReplaceDescData(PyObject *_self, PyObject *_args)
928817
}
929818
#endif
930819

931-
static PyObject *AE_AEProcessAppleEvent(PyObject *_self, PyObject *_args)
932-
{
933-
PyObject *_res = NULL;
934-
OSErr _err;
935-
EventRecord theEventRecord;
936-
if (!PyArg_ParseTuple(_args, "O&",
937-
PyMac_GetEventRecord, &theEventRecord))
938-
return NULL;
939-
_err = AEProcessAppleEvent(&theEventRecord);
940-
if (_err != noErr) return PyMac_Error(_err);
941-
Py_INCREF(Py_None);
942-
_res = Py_None;
943-
return _res;
944-
}
945-
946-
static PyObject *AE_AEGetInteractionAllowed(PyObject *_self, PyObject *_args)
947-
{
948-
PyObject *_res = NULL;
949-
OSErr _err;
950-
AEInteractAllowed level;
951-
if (!PyArg_ParseTuple(_args, ""))
952-
return NULL;
953-
_err = AEGetInteractionAllowed(&level);
954-
if (_err != noErr) return PyMac_Error(_err);
955-
_res = Py_BuildValue("b",
956-
level);
957-
return _res;
958-
}
959-
960-
static PyObject *AE_AESetInteractionAllowed(PyObject *_self, PyObject *_args)
961-
{
962-
PyObject *_res = NULL;
963-
OSErr _err;
964-
AEInteractAllowed level;
965-
if (!PyArg_ParseTuple(_args, "b",
966-
&level))
967-
return NULL;
968-
_err = AESetInteractionAllowed(level);
969-
if (_err != noErr) return PyMac_Error(_err);
970-
Py_INCREF(Py_None);
971-
_res = Py_None;
972-
return _res;
973-
}
974-
975-
static PyObject *AE_AEInteractWithUser(PyObject *_self, PyObject *_args)
976-
{
977-
PyObject *_res = NULL;
978-
OSErr _err;
979-
long timeOutInTicks;
980-
if (!PyArg_ParseTuple(_args, "l",
981-
&timeOutInTicks))
982-
return NULL;
983-
_err = AEInteractWithUser(timeOutInTicks,
984-
(NMRecPtr)0,
985-
upp_AEIdleProc);
986-
if (_err != noErr) return PyMac_Error(_err);
987-
Py_INCREF(Py_None);
988-
_res = Py_None;
989-
return _res;
990-
}
991-
992820
static PyObject *AE_AEInstallEventHandler(PyObject *_self, PyObject *_args)
993821
{
994822
PyObject *_res = NULL;
@@ -1177,14 +1005,6 @@ static PyMethodDef AE_methods[] = {
11771005
{"AEReplaceDescData", (PyCFunction)AE_AEReplaceDescData, 1,
11781006
"(DescType typeCode, Buffer dataPtr) -> (AEDesc theAEDesc)"},
11791007
#endif
1180-
{"AEProcessAppleEvent", (PyCFunction)AE_AEProcessAppleEvent, 1,
1181-
"(EventRecord theEventRecord) -> None"},
1182-
{"AEGetInteractionAllowed", (PyCFunction)AE_AEGetInteractionAllowed, 1,
1183-
"() -> (AEInteractAllowed level)"},
1184-
{"AESetInteractionAllowed", (PyCFunction)AE_AESetInteractionAllowed, 1,
1185-
"(AEInteractAllowed level) -> None"},
1186-
{"AEInteractWithUser", (PyCFunction)AE_AEInteractWithUser, 1,
1187-
"(long timeOutInTicks) -> None"},
11881008
{"AEInstallEventHandler", (PyCFunction)AE_AEInstallEventHandler, 1,
11891009
"(AEEventClass theAEEventClass, AEEventID theAEEventID, EventHandler handler) -> None"},
11901010
{"AERemoveEventHandler", (PyCFunction)AE_AERemoveEventHandler, 1,

Mac/Modules/app/_Appmodule.c

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -654,6 +654,93 @@ static PyObject *App_UseThemeFont(PyObject *_self, PyObject *_args)
654654
return _res;
655655
}
656656

657+
#if TARGET_API_MAC_CARBON
658+
659+
static PyObject *App_TruncateThemeText(PyObject *_self, PyObject *_args)
660+
{
661+
PyObject *_res = NULL;
662+
OSStatus _err;
663+
CFMutableStringRef inString;
664+
ThemeFontID inFontID;
665+
ThemeDrawState inState;
666+
SInt16 inPixelWidthLimit;
667+
TruncCode inTruncWhere;
668+
Boolean outTruncated;
669+
if (!PyArg_ParseTuple(_args, "O&Hlhh",
670+
CFMutableStringRefObj_Convert, &inString,
671+
&inFontID,
672+
&inState,
673+
&inPixelWidthLimit,
674+
&inTruncWhere))
675+
return NULL;
676+
_err = TruncateThemeText(inString,
677+
inFontID,
678+
inState,
679+
inPixelWidthLimit,
680+
inTruncWhere,
681+
&outTruncated);
682+
if (_err != noErr) return PyMac_Error(_err);
683+
_res = Py_BuildValue("b",
684+
outTruncated);
685+
return _res;
686+
}
687+
#endif
688+
689+
#if TARGET_API_MAC_CARBON
690+
691+
static PyObject *App_GetThemeTextDimensions(PyObject *_self, PyObject *_args)
692+
{
693+
PyObject *_res = NULL;
694+
OSStatus _err;
695+
CFStringRef inString;
696+
ThemeFontID inFontID;
697+
ThemeDrawState inState;
698+
Boolean inWrapToWidth;
699+
Point ioBounds;
700+
SInt16 outBaseline;
701+
if (!PyArg_ParseTuple(_args, "O&Hlb",
702+
CFStringRefObj_Convert, &inString,
703+
&inFontID,
704+
&inState,
705+
&inWrapToWidth))
706+
return NULL;
707+
_err = GetThemeTextDimensions(inString,
708+
inFontID,
709+
inState,
710+
inWrapToWidth,
711+
&ioBounds,
712+
&outBaseline);
713+
if (_err != noErr) return PyMac_Error(_err);
714+
_res = Py_BuildValue("O&h",
715+
PyMac_BuildPoint, ioBounds,
716+
outBaseline);
717+
return _res;
718+
}
719+
#endif
720+
721+
#if TARGET_API_MAC_CARBON
722+
723+
static PyObject *App_GetThemeTextShadowOutset(PyObject *_self, PyObject *_args)
724+
{
725+
PyObject *_res = NULL;
726+
OSStatus _err;
727+
ThemeFontID inFontID;
728+
ThemeDrawState inState;
729+
Rect outOutset;
730+
if (!PyArg_ParseTuple(_args, "Hl",
731+
&inFontID,
732+
&inState))
733+
return NULL;
734+
_err = GetThemeTextShadowOutset(inFontID,
735+
inState,
736+
&outOutset);
737+
if (_err != noErr) return PyMac_Error(_err);
738+
_res = Py_BuildValue("O&",
739+
PyMac_BuildRect, &outOutset);
740+
return _res;
741+
}
742+
#endif
743+
657744
static PyObject *App_DrawThemeScrollBarArrows(PyObject *_self, PyObject *_args)
658745
{
659746
PyObject *_res = NULL;
@@ -1111,6 +1198,21 @@ static PyMethodDef App_methods[] = {
11111198
"() -> (ThemeCheckBoxStyle outStyle)"},
11121199
{"UseThemeFont", (PyCFunction)App_UseThemeFont, 1,
11131200
"(ThemeFontID inFontID, ScriptCode inScript) -> None"},
1201+
1202+
#if TARGET_API_MAC_CARBON
1203+
{"TruncateThemeText", (PyCFunction)App_TruncateThemeText, 1,
1204+
"(CFMutableStringRef inString, ThemeFontID inFontID, ThemeDrawState inState, SInt16 inPixelWidthLimit, TruncCode inTruncWhere) -> (Boolean outTruncated)"},
1205+
#endif
1206+
1207+
#if TARGET_API_MAC_CARBON
1208+
{"GetThemeTextDimensions", (PyCFunction)App_GetThemeTextDimensions, 1,
1209+
"(CFStringRef inString, ThemeFontID inFontID, ThemeDrawState inState, Boolean inWrapToWidth) -> (Point ioBounds, SInt16 outBaseline)"},
1210+
#endif
1211+
1212+
#if TARGET_API_MAC_CARBON
1213+
{"GetThemeTextShadowOutset", (PyCFunction)App_GetThemeTextShadowOutset, 1,
1214+
"(ThemeFontID inFontID, ThemeDrawState inState) -> (Rect outOutset)"},
1215+
#endif
11141216
{"DrawThemeScrollBarArrows", (PyCFunction)App_DrawThemeScrollBarArrows, 1,
11151217
"(Rect bounds, ThemeTrackEnableState enableState, ThemeTrackPressState pressState, Boolean isHoriz) -> (Rect trackBounds)"},
11161218
{"GetThemeScrollBarTrackRect", (PyCFunction)App_GetThemeScrollBarTrackRect, 1,

Mac/Modules/app/appscan.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,16 @@ def makeblacklistnames(self):
4848
"appearanceBadTextColorIndexErr",
4949
"appearanceThemeHasNoAccents",
5050
"appearanceBadCursorIndexErr",
51+
"DrawThemeTextBox", # Funny void* out param
5152
]
5253

5354
def makegreylist(self):
5455
return [
5556
('#if TARGET_API_MAC_CARBON', [
5657
'GetThemeMetric',
58+
'GetThemeTextShadowOutset',
59+
'GetThemeTextDimensions',
60+
'TruncateThemeText',
5761
])]
5862

5963
def makeblacklisttypes(self):
@@ -71,6 +75,7 @@ def makeblacklisttypes(self):
7175
"ThemeWindowMetrics_ptr", # ditto
7276
"ThemeDrawingState", # This is an opaque pointer, so it should be simple. Later.
7377
"Collection", # No interface to collection mgr yet.
78+
"BytePtr", # Not yet.
7479
]
7580

7681
def makerepairinstructions(self):

Mac/Modules/app/appsupport.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,9 @@
6767
ThemeBackgroundKind = Type("ThemeBackgroundKind", "l")
6868
ThemeMetric = Type("ThemeMetric", "l")
6969
RGBColor = OpaqueType("RGBColor", "QdRGB")
70+
CFStringRef = OpaqueByValueType("CFStringRef", "CFStringRefObj")
71+
CFMutableStringRef = OpaqueByValueType("CFMutableStringRef", "CFMutableStringRefObj")
72+
TruncCode = Type("TruncCode", "h")
7073

7174
includestuff = includestuff + """
7275
#ifdef WITHOUT_FRAMEWORKS

0 commit comments

Comments
 (0)