1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-30 14:48:11 +00:00

LibGL: Implement glIsList

This commit is contained in:
Jelle Raaijmakers 2021-12-01 16:27:08 +01:00 committed by Andreas Kling
parent 17c109f5d7
commit 506abf2a61
5 changed files with 15 additions and 0 deletions

View file

@ -414,6 +414,7 @@ GLAPI void glDeleteLists(GLuint list, GLsizei range);
GLAPI void glListBase(GLuint base);
GLAPI void glEndList(void);
GLAPI void glNewList(GLuint list, GLenum mode);
GLAPI GLboolean glIsList(GLuint list);
GLAPI void glFlush();
GLAPI void glFinish();
GLAPI void glBlendFunc(GLenum sfactor, GLenum dfactor);

View file

@ -54,6 +54,7 @@ public:
virtual void gl_list_base(GLuint base) = 0;
virtual void gl_end_list(void) = 0;
virtual void gl_new_list(GLuint list, GLenum mode) = 0;
virtual GLboolean gl_is_list(GLuint list) = 0;
virtual void gl_flush() = 0;
virtual void gl_finish() = 0;
virtual void gl_blend_func(GLenum src_factor, GLenum dst_factor) = 0;

View file

@ -43,3 +43,8 @@ void glNewList(GLuint list, GLenum mode)
{
return g_gl_context->gl_new_list(list, mode);
}
GLboolean glIsList(GLuint list)
{
return g_gl_context->gl_is_list(list);
}

View file

@ -1023,6 +1023,13 @@ void SoftwareGLContext::gl_new_list(GLuint list, GLenum mode)
m_current_listing_index = CurrentListing { {}, static_cast<size_t>(list - 1), mode };
}
GLboolean SoftwareGLContext::gl_is_list(GLuint list)
{
RETURN_VALUE_WITH_ERROR_IF(m_in_draw_state, GL_INVALID_OPERATION, GL_FALSE);
return list < m_listings.size() ? GL_TRUE : GL_FALSE;
}
void SoftwareGLContext::gl_flush()
{
RETURN_WITH_ERROR_IF(m_in_draw_state, GL_INVALID_OPERATION);

View file

@ -65,6 +65,7 @@ public:
virtual void gl_list_base(GLuint base) override;
virtual void gl_end_list(void) override;
virtual void gl_new_list(GLuint list, GLenum mode) override;
virtual GLboolean gl_is_list(GLuint list) override;
virtual void gl_flush() override;
virtual void gl_finish() override;
virtual void gl_blend_func(GLenum src_factor, GLenum dst_factor) override;