Problema em C - Janela [Resolvido]

1 resposta
C

Fala pessoal! Estou fazendo um exemplo de um livro sobre openGl aqui,mas estão aparecendo alguns erros e eu não estou conseguindo entender o porquê.
O código é o seguinte:

#include<stdio.h>
#include<GL/glut.h>

void Desenha(void)
{
	printf("*** Callback de desenho na tela\n");
	

	glClearColor(0.0f,0.0f,1.0f,1.0f);
	glClear(GL_COLOR_BUFFER_BIT);
	glutSwapBuffers();
}

void AlteraTamanhoJanela(GLsizei w,GLsizei h)
{
	printf("*** Callback de redimensionamento de janela\n");
	printf("Novo tamanho da janela: %d x %d \n\n",w,h);
}

void Teclado(unsigned char tecla, int x, int y)
{
	int modificadores;
	printf("**Tratamento de teclas comuns\n");
	printf(">>>> Tecla: %c\n",tecla);

	if(tecla == 27)
		exit(0);

	if(tecla == 'a')
		glutFullScreen();
	if(tecla == 'A')
		glutReshapeWindow(500,400);
		glutPositionWindow(100,100);

		modificadores = glutGetModifiers();
		if(modificadores & GLUT_ACTIVE_SHIFT)
			printf("(SHIFT pressionado)\n");
		if(modificadores & GLUT_ACTIVE_CTRL)
			printf("(CTRL pressionado)\n");
		if(modificadores & GLUT_ACTIVE_ALT)
			printf("(ALT pressionado)\n");
}

void TeclasEspeciais(int tecla, int x, int y)
{
	printf("***Tratamento de teclas especiais\n");
	switch(tecla)
	{
	case GLUT_KEY_F1:
		printf(">>> Tecla F1 pressionada\n");
		break;
	case GLUT_KEY_F2:
		printf("Tecla F2 pressionada\n");
		break;
	case GLUT_KEY_F3:
		printf(">>>Tecla F3 pressionada\n");
		break;
	}
}

void GerenciaMouse(int button, int state, int x, int y)
{
	printf("***Tratamento de cliques de mouse\n");
	if(state == GLUT_DOWN)
		printf(">>>Botão %d pressionado\n",button);
	if(state == GLUT_UP)
		printf(">>>Botão %d liberado\n",button);
}

void CriaMenu()
{
	int menu,submenu1,submenu2;

	submenu1 = glutCreateMenu(MenuCor);
	glutAddMenuEntry("Vermelho",0);
	glutAddMenuEntry("Verde",1);
	glutAddMenuEntry("Azul",2);

	submenu2 = glutCreateMenu(MenuPrimitiva);
	glutAddMenuEntry("Quadrado",0);
	glutAddMenuEntry("Triangulo",1);
	glutAddMenuEntry("Losango",2);

	menu = glutCreateMenu(MenuPrincipal);
	glutAddSubMenu("Cor",submenu1);
	glutAddSubMenu("Primitivas",submenu2);

	glutAttachMenu(GLUT_RIGHT_BUTTON);
}



int janela()
{
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH | GLUT_RGB);

	glutInitWindowPosition(0,0);

	glutInitWindowSize(500,400);

	glutCreateWindow("Teste da GLUT");

	glutDisplayFunc(Desenha);

	glutReshapeFunc(AlteraTamanhoJanela);

	glutKeyboardFunc(Teclado);

	glutMouseFunc(GerenciaMouse);

	glutSpecialFunc(TeclasEspeciais);

	CriaMenu();

	glutMainLoop();

	return 0;
}

Os erros que o compilador encontra são os seguintes:

error C2065: 'MenuCor' : undeclared identifier
error C2065: 'MenuPrimitiva' : undeclared identifier
error C2065: 'MenuPrincipal' : undeclared identifier

Alguem sabe o que pode ser? Já tentei resolver aqui, tentei achar algo sobre isso no google mesmo e nada.

1 Resposta

C

Já descobri o problema aqui, falou pessoal !!!

Criado 3 de setembro de 2008
Ultima resposta 3 de set. de 2008
Respostas 1
Participantes 1