X-Git-Url: http://pileus.org/git/?p=grits;a=blobdiff_plain;f=src%2Fobjects%2Fgrits-poly.c;h=da35b36c792333b7d043a174253f8be137997c3a;hp=55d492a8f11a6892d4a1de4ab1e11a61c006eb29;hb=1d0635977583ad84faaa1978f1fd78fa3ec83052;hpb=3d5aab9907082844afa9c1f5d28ef0b44d5fa74a diff --git a/src/objects/grits-poly.c b/src/objects/grits-poly.c index 55d492a..da35b36 100644 --- a/src/objects/grits-poly.c +++ b/src/objects/grits-poly.c @@ -110,6 +110,18 @@ static void grits_poly_draw(GritsObject *_poly, GritsOpenGL *opengl) glPopAttrib(); } +static void grits_poly_pick(GritsObject *_poly, GritsOpenGL *opengl) +{ + //g_debug("GritsPoly: pick"); + GritsPoly *poly = GRITS_POLY(_poly); + if (!poly->list) + return; + glPushAttrib(GL_ENABLE_BIT); + glDisable(GL_CULL_FACE); + glCallList(poly->list+0); + glPopAttrib(); +} + /** * grits_poly_new: * @points: TODO @@ -198,4 +210,5 @@ static void grits_poly_class_init(GritsPolyClass *klass) GritsObjectClass *object_class = GRITS_OBJECT_CLASS(klass); object_class->draw = grits_poly_draw; + object_class->pick = grits_poly_pick; }