Changeset 548 for libcaca/trunk/caca/driver_gl.c
- Timestamp:
- Mar 8, 2006, 10:28:41 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcaca/trunk/caca/driver_gl.c
r540 r548 293 293 } 294 294 295 static unsigned int gl_get_event(caca_t *kk) 296 { 297 unsigned int event = 0; 298 299 glutMainLoopEvent(); 300 301 if(kk->gl.resized && !kk->resize) 302 { 303 kk->resize = 1; 304 kk->gl.resized = 0; 305 return CACA_EVENT_RESIZE; 306 } 307 308 if(kk->gl.mouse_changed) 309 { 310 if(kk->gl.mouse_clicked) 311 { 312 event |= CACA_EVENT_MOUSE_PRESS | kk->gl.mouse_button; 313 kk->gl.mouse_clicked = 0; 314 } 315 kk->mouse_x = kk->gl.mouse_x; 316 kk->mouse_y = kk->gl.mouse_y; 317 event |= CACA_EVENT_MOUSE_MOTION | (kk->mouse_x << 12) | kk->mouse_y; 318 kk->gl.mouse_changed = 0; 319 } 320 321 if(kk->gl.key != 0) 322 { 323 event |= CACA_EVENT_KEY_PRESS; 324 event |= kk->gl.key; 325 kk->gl.key = 0; 326 return event; 327 } 328 329 if(kk->gl.special_key != 0) 330 { 331 event |= CACA_EVENT_KEY_PRESS; 332 333 switch(kk->gl.special_key) 334 { 335 case GLUT_KEY_F1 : kk->gl.special_key = 0; return event | CACA_KEY_F1; 336 case GLUT_KEY_F2 : kk->gl.special_key = 0; return event | CACA_KEY_F2; 337 case GLUT_KEY_F3 : kk->gl.special_key = 0; return event | CACA_KEY_F3; 338 case GLUT_KEY_F4 : kk->gl.special_key = 0; return event | CACA_KEY_F4; 339 case GLUT_KEY_F5 : kk->gl.special_key = 0; return event | CACA_KEY_F5; 340 case GLUT_KEY_F6 : kk->gl.special_key = 0; return event | CACA_KEY_F6; 341 case GLUT_KEY_F7 : kk->gl.special_key = 0; return event | CACA_KEY_F7; 342 case GLUT_KEY_F8 : kk->gl.special_key = 0; return event | CACA_KEY_F8; 343 case GLUT_KEY_F9 : kk->gl.special_key = 0; return event | CACA_KEY_F9; 344 case GLUT_KEY_F10: kk->gl.special_key = 0; return event | CACA_KEY_F10; 345 case GLUT_KEY_F11: kk->gl.special_key = 0; return event | CACA_KEY_F11; 346 case GLUT_KEY_F12: kk->gl.special_key = 0; return event | CACA_KEY_F12; 347 case GLUT_KEY_LEFT : kk->gl.special_key = 0; return event | CACA_KEY_LEFT; 348 case GLUT_KEY_RIGHT: kk->gl.special_key = 0; return event | CACA_KEY_RIGHT; 349 case GLUT_KEY_UP : kk->gl.special_key = 0; return event | CACA_KEY_UP; 350 case GLUT_KEY_DOWN : kk->gl.special_key = 0; return event | CACA_KEY_DOWN; 351 default: return CACA_EVENT_NONE; 352 } 353 } 354 return CACA_EVENT_NONE; 355 } 356 295 357 /* 296 358 * XXX: following functions are local … … 362 424 kk->driver.display = gl_display; 363 425 kk->driver.handle_resize = gl_handle_resize; 426 kk->driver.get_event = gl_get_event; 364 427 } 365 428
Note: See TracChangeset
for help on using the changeset viewer.