forked from LeenkxTeam/LNXSDK
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #include "kinc/input/keyboard.h"
 | |
| #include "kinc/log.h"
 | |
| #include <kinc/graphics4/graphics.h>
 | |
| #include <kinc/input/mouse.h>
 | |
| #include <kinc/system.h>
 | |
| 
 | |
| #include <assert.h>
 | |
| #include <stdlib.h>
 | |
| 
 | |
| static void update(void *data) {
 | |
| 	kinc_g4_begin(0);
 | |
| 	kinc_g4_clear(KINC_G4_CLEAR_COLOR, 0, 0.0f, 0);
 | |
| 	kinc_g4_end(0);
 | |
| 	kinc_g4_swap_buffers();
 | |
| }
 | |
| 
 | |
| static void mouse_enter_window(int window, void* data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "mouse_enter_window -- window: %i", window);
 | |
| }
 | |
| static void mouse_leave_window(int window, void *data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "mouse_leave_window -- window: %i", window);
 | |
| }
 | |
| static void mouse_press(int window, int button, int x, int y, void *data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "mouse_press -- window: %i, button: %i, x: %i, y: %i", window, button, x, y);
 | |
| }
 | |
| static void mouse_release(int window, int button, int x, int y, void *data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "mouse_release -- window: %i, button: %i, x: %i, y: %i", window, button, x, y);
 | |
| }
 | |
| static void mouse_move(int window, int x, int y, int mov_x, int mov_y, void *data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "mouse_move -- window: %i, x: %i, y: %i, movement_x: %i, movement_y: %i", window, x, y, mov_x, mov_y);
 | |
| }
 | |
| static void mouse_scroll(int window, int delta, void *data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "mouse_scroll -- window: %i, delta: %i", window, delta);
 | |
| }
 | |
| static void key_down(int key, void *data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "key_down -- key: %i", key);
 | |
| }
 | |
| static void key_up(int key, void *data) {
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "key_up -- key: %i", key);
 | |
| }
 | |
| static void key_press(unsigned character, void *data) {
 | |
| 	char str[5] = {0};
 | |
| 	wctomb(str, character);
 | |
| 	kinc_log(KINC_LOG_LEVEL_INFO, "key_press -- char: %s", str);
 | |
| }
 | |
| 
 | |
| int kickstart(int argc, char **argv) {
 | |
| 	kinc_init("Shader", 1024, 768, NULL, NULL);
 | |
| 	kinc_set_update_callback(update, NULL);
 | |
| 
 | |
| 	kinc_mouse_set_enter_window_callback(mouse_enter_window, NULL);
 | |
| 	kinc_mouse_set_leave_window_callback(mouse_leave_window, NULL);
 | |
| 	kinc_mouse_set_press_callback(mouse_press, NULL);
 | |
| 	kinc_mouse_set_release_callback(mouse_release, NULL);
 | |
| 	kinc_mouse_set_move_callback(mouse_move, NULL);
 | |
| 	kinc_mouse_set_scroll_callback(mouse_scroll, NULL);
 | |
| 
 | |
| 	kinc_keyboard_set_key_down_callback(key_down, NULL);
 | |
| 	kinc_keyboard_set_key_up_callback(key_up, NULL);
 | |
| 	kinc_keyboard_set_key_press_callback(key_press, NULL);
 | |
| 
 | |
| 	kinc_start();
 | |
| 
 | |
| 	return 0;
 | |
| }
 |