]> granicus.if.org Git - python/commitdiff
Added support for GDHandle, CTabHandle, ITabHandle and CCrsrHandle: no
authorJack Jansen <jack.jansen@cwi.nl>
Fri, 15 Aug 1997 14:35:54 +0000 (14:35 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Fri, 15 Aug 1997 14:35:54 +0000 (14:35 +0000)
reason they were blacklisted, we can handle them as generic Handles.

Mac/Modules/qd/Qdmodule.c
Mac/Modules/qd/qdscan.py
Mac/Modules/qd/qdsupport.py

index 843e301d7f01c8391eb8a21fb963154341df1043..ee69274595bde2fb7f5827b3200f2691f0560950 100644 (file)
@@ -2969,6 +2969,68 @@ static PyObject *Qd_HiliteColor(_self, _args)
        return _res;
 }
 
+static PyObject *Qd_DisposeCTable(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       CTabHandle cTable;
+       if (!PyArg_ParseTuple(_args, "O&",
+                             ResObj_Convert, &cTable))
+               return NULL;
+       DisposeCTable(cTable);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
+static PyObject *Qd_GetCTable(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       CTabHandle _rv;
+       short ctID;
+       if (!PyArg_ParseTuple(_args, "h",
+                             &ctID))
+               return NULL;
+       _rv = GetCTable(ctID);
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
+static PyObject *Qd_GetCCursor(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       CCrsrHandle _rv;
+       short crsrID;
+       if (!PyArg_ParseTuple(_args, "h",
+                             &crsrID))
+               return NULL;
+       _rv = GetCCursor(crsrID);
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
+static PyObject *Qd_SetCCursor(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       CCrsrHandle cCrsr;
+       if (!PyArg_ParseTuple(_args, "O&",
+                             ResObj_Convert, &cCrsr))
+               return NULL;
+       SetCCursor(cCrsr);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
 static PyObject *Qd_AllocCursor(_self, _args)
        PyObject *_self;
        PyObject *_args;
@@ -2982,6 +3044,37 @@ static PyObject *Qd_AllocCursor(_self, _args)
        return _res;
 }
 
+static PyObject *Qd_DisposeCCursor(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       CCrsrHandle cCrsr;
+       if (!PyArg_ParseTuple(_args, "O&",
+                             ResObj_Convert, &cCrsr))
+               return NULL;
+       DisposeCCursor(cCrsr);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
+static PyObject *Qd_GetMaxDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle _rv;
+       Rect globalRect;
+       if (!PyArg_ParseTuple(_args, "O&",
+                             PyMac_GetRect, &globalRect))
+               return NULL;
+       _rv = GetMaxDevice(&globalRect);
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
 static PyObject *Qd_GetCTSeed(_self, _args)
        PyObject *_self;
        PyObject *_args;
@@ -2996,6 +3089,174 @@ static PyObject *Qd_GetCTSeed(_self, _args)
        return _res;
 }
 
+static PyObject *Qd_GetDeviceList(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle _rv;
+       if (!PyArg_ParseTuple(_args, ""))
+               return NULL;
+       _rv = GetDeviceList();
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
+static PyObject *Qd_GetMainDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle _rv;
+       if (!PyArg_ParseTuple(_args, ""))
+               return NULL;
+       _rv = GetMainDevice();
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
+static PyObject *Qd_GetNextDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle _rv;
+       GDHandle curDevice;
+       if (!PyArg_ParseTuple(_args, "O&",
+                             ResObj_Convert, &curDevice))
+               return NULL;
+       _rv = GetNextDevice(curDevice);
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
+static PyObject *Qd_TestDeviceAttribute(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       Boolean _rv;
+       GDHandle gdh;
+       short attribute;
+       if (!PyArg_ParseTuple(_args, "O&h",
+                             ResObj_Convert, &gdh,
+                             &attribute))
+               return NULL;
+       _rv = TestDeviceAttribute(gdh,
+                                 attribute);
+       _res = Py_BuildValue("b",
+                            _rv);
+       return _res;
+}
+
+static PyObject *Qd_SetDeviceAttribute(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle gdh;
+       short attribute;
+       Boolean value;
+       if (!PyArg_ParseTuple(_args, "O&hb",
+                             ResObj_Convert, &gdh,
+                             &attribute,
+                             &value))
+               return NULL;
+       SetDeviceAttribute(gdh,
+                          attribute,
+                          value);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
+static PyObject *Qd_InitGDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       short qdRefNum;
+       long mode;
+       GDHandle gdh;
+       if (!PyArg_ParseTuple(_args, "hlO&",
+                             &qdRefNum,
+                             &mode,
+                             ResObj_Convert, &gdh))
+               return NULL;
+       InitGDevice(qdRefNum,
+                   mode,
+                   gdh);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
+static PyObject *Qd_NewGDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle _rv;
+       short refNum;
+       long mode;
+       if (!PyArg_ParseTuple(_args, "hl",
+                             &refNum,
+                             &mode))
+               return NULL;
+       _rv = NewGDevice(refNum,
+                        mode);
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
+static PyObject *Qd_DisposeGDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle gdh;
+       if (!PyArg_ParseTuple(_args, "O&",
+                             ResObj_Convert, &gdh))
+               return NULL;
+       DisposeGDevice(gdh);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
+static PyObject *Qd_SetGDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle gd;
+       if (!PyArg_ParseTuple(_args, "O&",
+                             ResObj_Convert, &gd))
+               return NULL;
+       SetGDevice(gd);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
+static PyObject *Qd_GetGDevice(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       GDHandle _rv;
+       if (!PyArg_ParseTuple(_args, ""))
+               return NULL;
+       _rv = GetGDevice();
+       _res = Py_BuildValue("O&",
+                            ResObj_New, _rv);
+       return _res;
+}
+
 static PyObject *Qd_Color2Index(_self, _args)
        PyObject *_self;
        PyObject *_args;
@@ -3059,6 +3320,48 @@ static PyObject *Qd_RealColor(_self, _args)
        return _res;
 }
 
+static PyObject *Qd_GetSubTable(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       CTabHandle myColors;
+       short iTabRes;
+       CTabHandle targetTbl;
+       if (!PyArg_ParseTuple(_args, "O&hO&",
+                             ResObj_Convert, &myColors,
+                             &iTabRes,
+                             ResObj_Convert, &targetTbl))
+               return NULL;
+       GetSubTable(myColors,
+                   iTabRes,
+                   targetTbl);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
+static PyObject *Qd_MakeITable(_self, _args)
+       PyObject *_self;
+       PyObject *_args;
+{
+       PyObject *_res = NULL;
+       CTabHandle cTabH;
+       ITabHandle iTabH;
+       short res;
+       if (!PyArg_ParseTuple(_args, "O&O&h",
+                             ResObj_Convert, &cTabH,
+                             ResObj_Convert, &iTabH,
+                             &res))
+               return NULL;
+       MakeITable(cTabH,
+                  iTabH,
+                  res);
+       Py_INCREF(Py_None);
+       _res = Py_None;
+       return _res;
+}
+
 static PyObject *Qd_SetClientID(_self, _args)
        PyObject *_self;
        PyObject *_args;
@@ -3840,10 +4143,42 @@ static PyMethodDef Qd_methods[] = {
         "(RGBColor color) -> None"},
        {"HiliteColor", (PyCFunction)Qd_HiliteColor, 1,
         "(RGBColor color) -> None"},
+       {"DisposeCTable", (PyCFunction)Qd_DisposeCTable, 1,
+        "(CTabHandle cTable) -> None"},
+       {"GetCTable", (PyCFunction)Qd_GetCTable, 1,
+        "(short ctID) -> (CTabHandle _rv)"},
+       {"GetCCursor", (PyCFunction)Qd_GetCCursor, 1,
+        "(short crsrID) -> (CCrsrHandle _rv)"},
+       {"SetCCursor", (PyCFunction)Qd_SetCCursor, 1,
+        "(CCrsrHandle cCrsr) -> None"},
        {"AllocCursor", (PyCFunction)Qd_AllocCursor, 1,
         "() -> None"},
+       {"DisposeCCursor", (PyCFunction)Qd_DisposeCCursor, 1,
+        "(CCrsrHandle cCrsr) -> None"},
+       {"GetMaxDevice", (PyCFunction)Qd_GetMaxDevice, 1,
+        "(Rect globalRect) -> (GDHandle _rv)"},
        {"GetCTSeed", (PyCFunction)Qd_GetCTSeed, 1,
         "() -> (long _rv)"},
+       {"GetDeviceList", (PyCFunction)Qd_GetDeviceList, 1,
+        "() -> (GDHandle _rv)"},
+       {"GetMainDevice", (PyCFunction)Qd_GetMainDevice, 1,
+        "() -> (GDHandle _rv)"},
+       {"GetNextDevice", (PyCFunction)Qd_GetNextDevice, 1,
+        "(GDHandle curDevice) -> (GDHandle _rv)"},
+       {"TestDeviceAttribute", (PyCFunction)Qd_TestDeviceAttribute, 1,
+        "(GDHandle gdh, short attribute) -> (Boolean _rv)"},
+       {"SetDeviceAttribute", (PyCFunction)Qd_SetDeviceAttribute, 1,
+        "(GDHandle gdh, short attribute, Boolean value) -> None"},
+       {"InitGDevice", (PyCFunction)Qd_InitGDevice, 1,
+        "(short qdRefNum, long mode, GDHandle gdh) -> None"},
+       {"NewGDevice", (PyCFunction)Qd_NewGDevice, 1,
+        "(short refNum, long mode) -> (GDHandle _rv)"},
+       {"DisposeGDevice", (PyCFunction)Qd_DisposeGDevice, 1,
+        "(GDHandle gdh) -> None"},
+       {"SetGDevice", (PyCFunction)Qd_SetGDevice, 1,
+        "(GDHandle gd) -> None"},
+       {"GetGDevice", (PyCFunction)Qd_GetGDevice, 1,
+        "() -> (GDHandle _rv)"},
        {"Color2Index", (PyCFunction)Qd_Color2Index, 1,
         "(RGBColor myColor) -> (long _rv)"},
        {"Index2Color", (PyCFunction)Qd_Index2Color, 1,
@@ -3852,6 +4187,10 @@ static PyMethodDef Qd_methods[] = {
         "() -> (RGBColor myColor)"},
        {"RealColor", (PyCFunction)Qd_RealColor, 1,
         "(RGBColor color) -> (Boolean _rv)"},
+       {"GetSubTable", (PyCFunction)Qd_GetSubTable, 1,
+        "(CTabHandle myColors, short iTabRes, CTabHandle targetTbl) -> None"},
+       {"MakeITable", (PyCFunction)Qd_MakeITable, 1,
+        "(CTabHandle cTabH, ITabHandle iTabH, short res) -> None"},
        {"SetClientID", (PyCFunction)Qd_SetClientID, 1,
         "(short id) -> None"},
        {"ProtectEntry", (PyCFunction)Qd_ProtectEntry, 1,
index 4155df01308d60b6726eedfd1559d23aab585792..cd5409eeba5734b6584495913d9b72c4f56bf1d1 100644 (file)
@@ -76,11 +76,11 @@ class MyScanner(Scanner):
 
        def makeblacklisttypes(self):
                return [
-                       'CCrsrHandle',
-                       'CIconHandle',
+##                     'CCrsrHandle',
+                       'CIconHandle', # Obsolete
                        'CQDProcs',
                        'CSpecArray',
-                       'CTabHandle',
+##                     'CTabHandle',
                        'ColorComplementProcPtr',
                        'ColorComplementUPP',
                        'ColorSearchProcPtr',
@@ -89,7 +89,7 @@ class MyScanner(Scanner):
                        'DeviceLoopDrawingProcPtr',
                        'DeviceLoopFlags',
 ##                     'FontInfo',
-                       'GDHandle',
+##                     'GDHandle',
                        'GrafVerb',
                        'OpenCPicParams_ptr',
                        'Ptr',
index 13689ff40a265bab4f43a922506af1b188a0016b..461d27f0ff469dab64261db4d0eb1269b49f8985 100644 (file)
@@ -40,6 +40,11 @@ PixMapHandle = OpaqueByValueType("PixMapHandle", "ResObj")
 PixPatHandle = OpaqueByValueType("PixPatHandle", "ResObj")
 PatHandle = OpaqueByValueType("PatHandle", "ResObj")
 CursHandle = OpaqueByValueType("CursHandle", "ResObj")
+CCrsrHandle = OpaqueByValueType("CCrsrHandle", "ResObj")
+CIconHandle = OpaqueByValueType("CIconHandle", "ResObj")
+CTabHandle = OpaqueByValueType("CTabHandle", "ResObj")
+ITabHandle = OpaqueByValueType("ITabHandle", "ResObj")
+GDHandle = OpaqueByValueType("GDHandle", "ResObj")
 CGrafPtr = OpaqueByValueType("CGrafPtr", "GrafObj")
 GrafPtr = OpaqueByValueType("GrafPtr", "GrafObj")
 BitMap_ptr = OpaqueByValueType("BitMapPtr", "BMObj")