コード例 #1
0
ファイル: event.cpp プロジェクト: dopsi/openage
Event sdl_key(SDL_Keycode code, SDL_Keymod mod) {

	// sdl values for non printable keys
	if (code & (1 << 30)) {
		return Event(event_class::OTHER, code, sdl_mod(mod));
	}
	else {
		event_class ec;
		char c = (code & 0xff);
		if (isdigit(c)) {
			ec = event_class::DIGIT;
		}
		else if (isalpha(c)) {
			ec = event_class::ALPHA;
		}
		else if (isprint(c)) {
			ec = event_class::PRINT;
		}
		else {
			ec = event_class::NONPRINT;
		}
		return Event(ec, code, sdl_mod(mod));
	}
}
コード例 #2
0
ファイル: input_manager.cpp プロジェクト: Arroon/openage
modset_t InputManager::get_mod() const {
	SDL_Keymod mod = SDL_GetModState();
	return sdl_mod(mod);
}