Ejemplo n.º 1
0
/* keyboard */
static int _keyboard(KeyboardPrefs * prefs)
{
	Keyboard * keyboard;

	if((keyboard = keyboard_new(prefs)) == NULL)
		return -1;
	gtk_main();
	keyboard_delete(keyboard);
	return 0;
}
Ejemplo n.º 2
0
Archivo: app.c Proyecto: rvba/minuit
t_app *app_new(int argc,char **argv)
{
	t_app *app = (t_app *)mem_malloc(sizeof(t_app));

	app->argc=argc;
	app->argv=argv;
	set_name(app->name,"minuit");
	app->main_func = app_default_func;
	app->x_func = NULL;
	app->off_screen=0;
	app->frame=0;
	app->timer=0;
	app->timer_add = 1;
	app->timer_add_low = .1;
	app->timer_count=0;
	app->loop=APP_LOOP;
	app->buffer=APP_BUFFER;
	app->with_glut=APP_WITH_GLUT;
	app->debug_keyboard=0;
	app->load_file = 0;
	app->loaded_file = 0;

	app->client = 0;
	app->slave = 0;
	app->osc_server = 0;
	app->osc_client = 0;
	app->osc_port = 0;

	bzero( app->path_home, _PATH_);
	bzero( app->path_current, _PATH_);
	bzero( app->filename, _NAME_LONG_);
	bzero( app->path_file, _PATH_);


	app->mouse=mouse_new();
	app->window=window_new(app->with_glut);
	app->keyboard=keyboard_new();
	app->clock=clock_new( "clock");

	app->video_frames = lst_new("video");
	app->video_frames_swap = lst_new("video swap");
	app->video_offset = 0;
	app->video_build = 1;
	app->video_limit = APP_VIDEO_LIMIT;

	clock_init(app->clock);

	app->quit = 0;

	return app;
}
Ejemplo n.º 3
0
/* keyboard_init */
static KeyboardWidget * _keyboard_init(char const * name)
{
	KeyboardWidget * keyboard;
	KeyboardPrefs prefs;

	if((keyboard = object_new(sizeof(*keyboard))) == NULL)
		return NULL;
	prefs.monitor = -1;
	prefs.font = NULL;
	prefs.mode = KEYBOARD_MODE_WIDGET;
	prefs.wait = 0;
	if((keyboard->keyboard = keyboard_new(&prefs)) == NULL)
	{
		_keyboard_destroy(keyboard);
		return NULL;
	}
	return keyboard;
}
Ejemplo n.º 4
0
static struct keyboard *
get_keyboards(struct xkb_keymap *keymap)
{
    int ret, i, nents;
    struct dirent **ents;
    struct keyboard *kbds = NULL, *kbd = NULL;

    nents = scandir("/dev/input", &ents, filter_device_name, alphasort);
    if (nents < 0) {
        fprintf(stderr, "Couldn't scan /dev/input: %s\n", strerror(errno));
        return NULL;
    }

    for (i = 0; i < nents; i++) {
        ret = keyboard_new(ents[i], keymap, &kbd);
        if (ret) {
            if (ret == -EACCES) {
                fprintf(stderr, "Couldn't open /dev/input/%s: %s. "
                                "You probably need root to run this.\n",
                        ents[i]->d_name, strerror(-ret));
                break;
            }
            if (ret != -ENOTSUP) {
                fprintf(stderr, "Couldn't open /dev/input/%s: %s. Skipping.\n",
                        ents[i]->d_name, strerror(-ret));
            }
            continue;
        }

        kbd->next = kbds;
        kbds = kbd;
    }

    if (!kbds) {
        fprintf(stderr, "Couldn't find any keyboards I can use! Quitting.\n");
        goto err;
    }

err:
    for (i = 0; i < nents; i++)
        free(ents[i]);
    free(ents);
    return kbds;
}