CTest::CTest(HINSTANCE hPrevInstance, int nShowCmd)
{
m_hPrevInstance = hPrevInstance;
m_nShowCmd = nShowCmd;
CApplication::m_Draw = bind(&CTest::Draw, this);
CApplication::m_Create = bind(&CTest::CreateInit, this);
setMouseTracking(true);
connect(m_pTimer, SIGNAL(timeout()), this , SLOT(OnIdleOpenGl()) );
makeCurrent();
context.create();
vert = NULL;
if (!vert) {
vert = new QGLBuffer(QGLBuffer::VertexBuffer);
vert->setUsagePattern(QGLBuffer::DynamicDraw);
if (!vert->create()) {
delete vert;
vert = 0;
}
}
if (vert) {
vert->bind();
vert->allocate(sizeof(GLfloat) * 4 * 4);
if (!vert->map(QGLBuffer::WriteOnly)) {
// No point using a vertex buffer if we cannot map it.
vert->unmap();
vert->release();
delete vert;
vert = 0;
} else {
vert->unmap();
vert->release();
}
}
QCLBuffer BBB;
if (context.supportsObjectSharing()) {
BBB = context.createGLBuffer(vert,QCLMemoryObject::WriteOnly);
}
m_pTimer->setInterval( 3 );
m_pTimer->start();
}