Author: phoudoin Date: 2010-07-28 15:55:25 +0200 (Wed, 28 Jul 2010) New Revision: 37786 Changeset: http://dev.haiku-os.org/changeset/37786 Modified: haiku/trunk/src/libs/mesa/glut/Jamfile haiku/trunk/src/libs/mesa/glut/glutGet.cpp Log: Expanded glutDeviceGet() support. Now reports the key repeat settings I added a few days ago. Modified: haiku/trunk/src/libs/mesa/glut/Jamfile =================================================================== --- haiku/trunk/src/libs/mesa/glut/Jamfile 2010-07-28 13:36:25 UTC (rev 37785) +++ haiku/trunk/src/libs/mesa/glut/Jamfile 2010-07-28 13:55:25 UTC (rev 37786) @@ -9,36 +9,37 @@ MergeObject <opengl>glut.o : # C++ sources - glutBlocker.cpp - glutInit.cpp - glutWindow.cpp - glutEvent.cpp - glutCallback.cpp - glutOverlay.cpp - glutGet.cpp - glutColor.cpp - glutCursor.cpp - glutMenu.cpp - glutDstr.cpp + glutBlocker.cpp + glutInit.cpp + glutWindow.cpp + glutEvent.cpp + glutCallback.cpp + glutOverlay.cpp + glutGet.cpp + glutColor.cpp + glutCursor.cpp + glutMenu.cpp + glutDstr.cpp + glutGameMode.cpp beos_x11.cpp # C sources - glut_8x13.c - glut_9x15.c - glut_bitmap.c - glut_bwidth.c - glut_hel10.c - glut_hel12.c - glut_hel18.c - glut_tr10.c - glut_tr24.c - glut_mroman.c - glut_roman.c - glut_stroke.c - glut_swidth.c - glut_shapes.c - glut_teapot.c - glut_vidresize.c - glut_util.c + glut_8x13.c + glut_9x15.c + glut_bitmap.c + glut_bwidth.c + glut_hel10.c + glut_hel12.c + glut_hel18.c + glut_tr10.c + glut_tr24.c + glut_mroman.c + glut_roman.c + glut_stroke.c + glut_swidth.c + glut_shapes.c + glut_teapot.c + glut_vidresize.c + glut_util.c glut_ext.c ; Modified: haiku/trunk/src/libs/mesa/glut/glutGet.cpp =================================================================== --- haiku/trunk/src/libs/mesa/glut/glutGet.cpp 2010-07-28 13:36:25 UTC (rev 37785) +++ haiku/trunk/src/libs/mesa/glut/glutGet.cpp 2010-07-28 13:55:25 UTC (rev 37786) @@ -72,7 +72,7 @@ num++; children = children->siblings; } - return num; + return num; } case GLUT_WINDOW_BUFFER_SIZE: // best guesses case GLUT_WINDOW_DEPTH_SIZE: @@ -97,7 +97,7 @@ case GLUT_WINDOW_NUM_SAMPLES: case GLUT_WINDOW_STEREO: return 0; - + case GLUT_WINDOW_CURSOR: return gState.currentWindow->cursor; // don't need to lock window since it won't change @@ -172,14 +172,18 @@ return 1; case GLUT_HAS_SPACEBALL: + case GLUT_NUM_SPACEBALL_BUTTONS: case GLUT_HAS_DIAL_AND_BUTTON_BOX: + case GLUT_NUM_DIALS: + case GLUT_NUM_BUTTON_BOX_BUTTONS: case GLUT_HAS_TABLET: - case GLUT_NUM_SPACEBALL_BUTTONS: - case GLUT_NUM_BUTTON_BOX_BUTTONS: - case GLUT_NUM_DIALS: case GLUT_NUM_TABLET_BUTTONS: + case GLUT_HAS_JOYSTICK: + case GLUT_JOYSTICK_POLL_RATE: + case GLUT_JOYSTICK_BUTTONS: + case GLUT_JOYSTICK_AXES: return 0; - + case GLUT_NUM_MOUSE_BUTTONS: { int32 mouseButtons = 3; // good guess @@ -189,6 +193,14 @@ return mouseButtons; } + case GLUT_DEVICE_IGNORE_KEY_REPEAT: + if (gState.currentWindow) + return gState.currentWindow->ignoreKeyRepeat; + return 0; + + case GLUT_DEVICE_KEY_REPEAT: + return GLUT_KEY_REPEAT_DEFAULT; + default: __glutWarning("invalid glutDeviceGet parameter: %d", info); return -1;