Skip to content

Commit

Permalink
Update Gles.getParameter() switch statement to match WebGL spec.
Browse files Browse the repository at this point in the history
Added a few missing cases, and used 'unsigned' return types where WebGL
wants us to.
  • Loading branch information
cscott committed Dec 8, 2011
1 parent 622041e commit db87cac
Showing 1 changed file with 43 additions and 10 deletions.
53 changes: 43 additions & 10 deletions glesbindings/glesbind.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -597,7 +597,6 @@ Handle<Value> GLESglGetParameterCallback(const Arguments& args) {
case GL_BLEND_SRC:
#endif
case GL_BLUE_BITS:
case GL_SUBPIXEL_BITS:
#ifdef DESKTOP_GL
case GL_CLIENT_ATTRIB_STACK_DEPTH:
case GL_COLOR_ARRAY_SIZE:
Expand All @@ -606,16 +605,13 @@ Handle<Value> GLESglGetParameterCallback(const Arguments& args) {
case GL_COLOR_MATERIAL_FACE:
case GL_COLOR_MATERIAL_PARAMETER:
#endif
case GL_CULL_FACE_MODE:
case GL_DEPTH_BITS:
case GL_DEPTH_FUNC:
#ifdef DESKTOP_GL
case GL_DRAW_BUFFER:
case GL_EDGE_FLAG_ARRAY_STRIDE:
case GL_FOG_HINT:
case GL_FOG_MODE:
#endif
case GL_FRONT_FACE:
case GL_GREEN_BITS:
#ifdef DESKTOP_GL
case GL_INDEX_ARRAY_STRIDE:
Expand All @@ -642,14 +638,24 @@ Handle<Value> GLESglGetParameterCallback(const Arguments& args) {
case GL_MAX_PIXEL_MAP_TABLE:
case GL_MAX_PROJECTION_STACK_DEPTH:
#endif
case GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS:
case GL_MAX_CUBE_MAP_TEXTURE_SIZE:
case GL_MAX_FRAGMENT_UNIFORM_VECTORS:
case GL_MAX_RENDERBUFFER_SIZE:
case GL_MAX_TEXTURE_IMAGE_UNITS:
case GL_MAX_TEXTURE_SIZE:
case GL_MAX_VARYING_VECTORS:
case GL_MAX_VERTEX_ATTRIBS:
case GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS:
case GL_MAX_VERTEX_UNIFORM_VECTORS:
#ifdef DESKTOP_GL
case GL_MAX_TEXTURE_STACK_DEPTH:
case GL_MODELVIEW_STACK_DEPTH:
case GL_NAME_STACK_DEPTH:
case GL_NORMAL_ARRAY_STRIDE:
case GL_NORMAL_ARRAY_TYPE:
#endif
case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
case GL_PACK_ALIGNMENT:
#ifdef DESKTOP_GL
case GL_PACK_ROW_LENGTH:
Expand All @@ -675,15 +681,13 @@ Handle<Value> GLESglGetParameterCallback(const Arguments& args) {
case GL_RENDER_MODE:
case GL_SHADE_MODEL:
#endif
case GL_SAMPLE_BUFFERS:
case GL_SAMPLES:
case GL_STENCIL_BACK_REF:
case GL_STENCIL_BITS:
case GL_STENCIL_CLEAR_VALUE:
case GL_STENCIL_FAIL:
case GL_STENCIL_FUNC:
case GL_STENCIL_PASS_DEPTH_FAIL:
case GL_STENCIL_PASS_DEPTH_PASS:
case GL_STENCIL_REF:
case GL_STENCIL_VALUE_MASK:
case GL_STENCIL_WRITEMASK:
case GL_SUBPIXEL_BITS:
// case GL_TEXTURE_1D_BINDING:
// case GL_TEXTURE_2D_BINDING:
#ifdef DESKTOP_GL
Expand All @@ -706,6 +710,35 @@ Handle<Value> GLESglGetParameterCallback(const Arguments& args) {
glGetIntegerv((GLenum)pname, (GLint*)&ans);
return Integer::New(ans);
}
//1 unsigned int
case GL_ACTIVE_TEXTURE:
case GL_BLEND_DST_ALPHA:
case GL_BLEND_DST_RGB:
case GL_BLEND_EQUATION_ALPHA:
case GL_BLEND_EQUATION_RGB:
case GL_BLEND_SRC_ALPHA:
case GL_BLEND_SRC_RGB:
case GL_CULL_FACE_MODE:
case GL_DEPTH_FUNC:
case GL_FRONT_FACE:
case GL_GENERATE_MIPMAP_HINT:
case GL_STENCIL_BACK_FAIL:
case GL_STENCIL_BACK_FUNC:
case GL_STENCIL_BACK_PASS_DEPTH_FAIL:
case GL_STENCIL_BACK_PASS_DEPTH_PASS:
case GL_STENCIL_BACK_VALUE_MASK:
case GL_STENCIL_BACK_WRITEMASK:
case GL_STENCIL_FAIL:
case GL_STENCIL_FUNC:
case GL_STENCIL_PASS_DEPTH_FAIL:
case GL_STENCIL_PASS_DEPTH_PASS:
case GL_STENCIL_VALUE_MASK:
case GL_STENCIL_WRITEMASK:
{
unsigned int ans = 0;
glGetIntegerv((GLenum)pname, (GLint*)&ans);
return Integer::NewFromUnsigned(ans);
}
//2 values int
#ifdef DESKTOP_GL
case GL_LINE_WIDTH_RANGE:
Expand Down

0 comments on commit db87cac

Please sign in to comment.