changing fill color of ogl-shape (again)

hello,

I've an ogl-shape:
    Shape=ogl.CircleShape(80)

Now if want to change the color
    Shape.SetBrush(wx.WHITE_BRUSH)

But nothing happens,
It does work, if after the SetBrush, I write:
    Shape.Flash()

But I've the feeling that this is not the correct way,
I'ld expect something like a " Redraw" method.

thanks,
Stef Mientki

Stef Mientki <s.mientki <at> ru.nl> writes:

But I've the feeling that this is not the correct way,
I'ld expect something like a " Redraw" method.

There actually is a redraw method. Do this:

dc = wx.ClientDC(<the parent>)
<the parent>.PrepareDC(dc)

shape.SetBrush(wx.WHITE_BRUSH)

shape.GetCanvas().Redraw(dc)#or use canvas name instead of shape.GetCanvas()

simon kagwe wrote:

Stef Mientki <s.mientki <at> ru.nl> writes:

But I've the feeling that this is not the correct way,
I'ld expect something like a " Redraw" method.
    
There actually is a redraw method. Do this:

dc = wx.ClientDC(<the parent>)
<the parent>.PrepareDC(dc)

shape.SetBrush(wx.WHITE_BRUSH)

shape.GetCanvas().Redraw(dc)#or use canvas name instead of shape.GetCanvas()

thanks Simon,
that does the job.

cheers,
Stef