예제 #1
0
void dbg( LPSTR lpFormat, ... )
/***********************************************************************/
{
LPTR lpArguments;

lpArguments = (LPTR)&lpFormat + sizeof(lpFormat);
dbgv(lpFormat, lpArguments);
}
예제 #2
0
CHEETAH_EXPORT unsigned int getEventType(void)
{
	/* skip unneeded events */
	while(SDL_PollEvent(&event))
	{
		switch(event.type)
		{
		case SDL_QUIT:
			dbg("Quit");
			return EVENT_QUIT;
		case SDL_KEYUP:
			dbgv("Key up");
			return EVENT_KEYUP;
		case SDL_KEYDOWN:
			dbgv("Key down");
			return EVENT_KEYDOWN;
		case SDL_MOUSEBUTTONUP:
			dbgv("Mouse up");
			return EVENT_MOUSEUP;
		case SDL_MOUSEBUTTONDOWN:
			dbgv("Mouse down");
			return EVENT_MOUSEDOWN;
		case SDL_MOUSEWHEEL:
			dbgv("Mouse wheel");
			return EVENT_MOUSEWHEEL;
		case SDL_JOYAXISMOTION:
		case SDL_JOYBALLMOTION:
		case SDL_JOYHATMOTION:
		case SDL_JOYBUTTONDOWN:
		case SDL_JOYBUTTONUP:
			dbgv("Joystick");
			return EVENT_JOY;
		case SDL_WINDOWEVENT:
			switch(event.window.event)
			{
				int w, h;
			case SDL_WINDOWEVENT_RESIZED:
				dbgv("Resize");
				w = event.window.data1;
				h = event.window.data2;
				if(w < 1)
				{
					w = 1;
				}
				if(h < 1)
				{
					h = 1;
				}
				recomputeScreenScale((float)w, (float)h);
				globalTimers.rescaleTime = globalTimers.time + globalTimers.resizeDelay;
				setWindowSize(w, h);
				return EVENT_RESIZED;
			case SDL_WINDOWEVENT_EXPOSED:
				dbgv("Window expose");
				return EVENT_EXPOSED;
			case SDL_WINDOWEVENT_SHOWN:
				dbgv("Window shown");
				return EVENT_SHOWN;
			case SDL_WINDOWEVENT_HIDDEN:
				dbgv("Window hidden");
				return EVENT_HIDDEN;
			case SDL_WINDOWEVENT_MOVED:
				dbgv("Window moved");
				return EVENT_MOVED;
			case SDL_WINDOWEVENT_MINIMIZED:
				dbgv("Window minimized");
				return EVENT_MINIMIZED;
			case SDL_WINDOWEVENT_MAXIMIZED:
				dbgv("Window maximized");
				return EVENT_MAXIMIZED;
			case SDL_WINDOWEVENT_RESTORED:
				dbgv("Window restored");
				return EVENT_RESTORED;
			case SDL_WINDOWEVENT_ENTER:
				dbgv("Window enter");
				return EVENT_ENTER;
			case SDL_WINDOWEVENT_LEAVE:
				dbgv("Window leave");
				return EVENT_LEAVE;
			case SDL_WINDOWEVENT_FOCUS_GAINED:
				dbgv("Window focus gained");
				return EVENT_FOCUS_GAINED;
			case SDL_WINDOWEVENT_FOCUS_LOST:
				dbgv("Window focus lost");
				return EVENT_FOCUS_LOST;
			case SDL_WINDOWEVENT_CLOSE:
				dbgv("Window closed");
				return EVENT_CLOSE;
			}
			break;
		default:
			dbgv("Some event #%d", event.type);
		}
	}
	return 0;
}