static void timer(int value) { if (cmdopts.verbose) { jas_eprintf("timer(%d)\n", value); } if (value == gs.activetmid) { nextimage(); } }
static void keyboard(unsigned char key, int x, int y) { if (cmdopts.verbose) { jas_eprintf("keyboard(%d, %d, %d)\n", key, x, y); } switch (key) { case ' ': nextimage(); break; case '\b': previmage(); break; case '>': gs.sx /= BIGZOOM; gs.sy /= BIGZOOM; gs.dirty = 1; glutPostRedisplay(); break; case '.': gs.sx /= SMALLZOOM; gs.sy /= SMALLZOOM; gs.dirty = 1; glutPostRedisplay(); break; case '<': gs.sx *= BIGZOOM; gs.sy *= BIGZOOM; adjust(); gs.dirty = 1; glutPostRedisplay(); break; case ',': gs.sx *= SMALLZOOM; gs.sy *= SMALLZOOM; gs.dirty = 1; adjust(); glutPostRedisplay(); break; case 'c': nextcmpt(); break; case 'C': prevcmpt(); break; case 'q': cleanupandexit(EXIT_SUCCESS); break; } }
void pwan::imageviewer_frontend_qt_widget::keyPressEvent(QKeyEvent *keyevent) { int keycodefound = keyevent->key(); p_img_keyevent pkey = programKeys.find(keycodefound)->second; switch (pkey) { case QUIT: emit exitprogram(); break; case FULLSCREEN: setWindowState(windowState() ^ Qt::WindowFullScreen); update(); break; case NEXTIMAGE: emit nextimage(); break; case PREVIMAGE: emit previmage(); default: break; } }
int main(int argc, char **argv) { int c; init(); /* Determine the base name of this command. */ if ((cmdname = strrchr(argv[0], '/'))) { ++cmdname; } else { cmdname = argv[0]; } /* Initialize the JasPer library. */ if (jas_init()) { errprint(0, "error: cannot initialize jasper library\n"); abort(); } /* set our error callback */ jas_set_error_cb(errprint); glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_SINGLE); glutCreateWindow(cmdname); glutReshapeFunc(reshape); glutDisplayFunc(display); glutSpecialFunc(special); glutKeyboardFunc(keyboard); cmdopts.numfiles = 0; cmdopts.filenames = 0; cmdopts.title = 0; cmdopts.tmout = 0; cmdopts.loop = 0; cmdopts.verbose = 0; while ((c = jas_getopt(argc, argv, opts)) != EOF) { switch (c) { case 'w': cmdopts.tmout = atof(jas_optarg) * 1000; break; case 'l': cmdopts.loop = 1; break; case 't': cmdopts.title = jas_optarg; break; case 'v': cmdopts.verbose = 1; break; case 'V': jas_eprintf("%s\n", JAS_VERSION); jas_eprintf("libjasper %s\n", jas_getversion()); cleanupandexit(EXIT_SUCCESS); break; default: case 'h': usage(); break; } } if (jas_optind < argc) { /* The images are to be read from one or more explicitly named files. */ cmdopts.numfiles = argc - jas_optind; cmdopts.filenames = &argv[jas_optind]; } else { /* The images are to be read from standard input. */ static char *null = 0; cmdopts.filenames = &null; cmdopts.numfiles = 1; } streamin = jas_stream_fdopen(0, "rb"); /* Load the next image. */ nextimage(); /* Start the GLUT main event handler loop. */ glutMainLoop(); return EXIT_SUCCESS; }