Thanks :)
On Sun, Jan 20, 2013 at 10:13 AM, Piotr Borkowski <[email protected]> wrote:
>
> diff -r 4a4611239021 src/gfxdraw.c
> --- a/src/gfxdraw.c Thu Jan 10 14:18:39 2013 +0000
> +++ b/src/gfxdraw.c Sun Jan 13 22:30:53 2013 +0100
> @@ -237,6 +237,7 @@
> PyErr_SetString (PyExc_TypeError, "surface must be a Surface");
> return NULL;
> }
> +
> sdlrect = GameRect_FromObject (rect, &temprect);
> if (sdlrect == NULL) {
> return NULL;
> @@ -274,9 +275,8 @@
> if (!PyArg_ParseTuple (args, "OOO:box", &surface, &rect, &color)) {
> return NULL;
> }
> -
> - if (!PySurface_Check (surface)) {
> - PyErr_SetString (PyExc_TypeError, "surface must be a Surface");
> + if (!PyType_IsSubtype(surface->**ob_type, &PySurface_Type)) {
> + PyErr_SetString (PyExc_TypeError, "surface must be a subclass
> of Surface");
> return NULL;
> }
> sdlrect = GameRect_FromObject (rect, &temprect);
> diff -r 4a4611239021 test/gfxdraw_test.py
> --- a/test/gfxdraw_test.py Thu Jan 10 14:18:39 2013 +0000
> +++ b/test/gfxdraw_test.py Sun Jan 13 22:30:53 2013 +0100
> @@ -21,6 +21,12 @@
> import pygame.gfxdraw
> from pygame.locals import *
>
> +
> +class Frame(pygame.Surface,object):
> + def __init__(self,x,y,w,h):
> + pygame.Surface.__init__(self,(**w,h), SRCALPHA)
> +
> +
> def intensity(c, i):
> """Return color c changed by intensity i
>
> @@ -707,6 +713,11 @@
> self.check_at(surf, posn, bg_adjusted)
>
>
> + def test_my(self):
> + """ """
> + pygame.display.set_mode((500,**500))
> + fr = Frame(50,50,300,300)
> + pygame.gfxdraw.box(fr,pygame.**Rect(0,0,50,50),pygame.Color('**red'))
>
> if __name__ == '__main__':
> unittest.main()
>
>
>
>