Some changes, mostly from John. Mostly style changes.

One bug fix from John: Execution state bug-fix in glutMainLoop(), per his
post yesterday.

One fix from me: Changed "if( ButtonPress )" to "if( pressed )".
{ButtonPress} is a constant.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@299 7f0cb862-5218-0410-a997-914c9d46530a
This commit is contained in:
rkrolib 2003-11-04 18:16:52 +00:00
parent d5d4789b6b
commit 585433d174

View File

@ -653,10 +653,14 @@ void FGAPIENTRY glutMainLoopEvent( void )
event.xmotion.y );
}
}
else if( window->Callbacks.Passive )
else
{
fgSetWindow ( window ) ;
window->Callbacks.Passive( event.xmotion.x, event.xmotion.y );
if( window->Callbacks.Passive )
{
fgSetWindow( window );
window->Callbacks.Passive( event.xmotion.x,
event.xmotion.y );
}
}
}
break;
@ -790,43 +794,40 @@ void FGAPIENTRY glutMainLoopEvent( void )
if( window->Callbacks.Mouse )
fgStructure.Window->Callbacks.Mouse(
button,
event.type == ButtonPress ? GLUT_DOWN : GLUT_UP,
pressed ? GLUT_DOWN : GLUT_UP,
event.xbutton.x,
event.xbutton.y
);
}
else
{
if( ( button >= 4 ) && window->Callbacks.MouseWheel )
{
/*
* Map 4 and 5 to wheel zero; EVEN to +1, ODD to -1
* " 6 and 7 " " one; ...
*
* XXX This *should* be behind some variables/macros,
* XXX since the order and numbering isn't certain
* XXX See XFree86 configuration docs (even back in the
* XXX 3.x days, and especially with 4.x).
*/
int wheel_number = (button - 4) / 2;
int direction = (button & 1)*2 - 1;
if( ButtonPress )
fgStructure.Window->Callbacks.MouseWheel(
wheel_number,
direction,
event.xbutton.x,
event.xbutton.y
);
}
/*
* Map 4 and 5 to wheel zero; EVEN to +1, ODD to -1
* " 6 and 7 " " one; ...
*
* XXX This *should* be behind some variables/macros,
* XXX since the order and numbering isn't certain
* XXX See XFree86 configuration docs (even back in the
* XXX 3.x days, and especially with 4.x).
*/
int wheel_number = (button - 4) / 2;
int direction = (button & 1)*2 - 1;
if( pressed )
fgStructure.Window->Callbacks.MouseWheel(
wheel_number,
direction,
event.xbutton.x,
event.xbutton.y
);
}
/*
* Trash the modifiers state
*/
fgStructure.Window->State.Modifiers = 0xffffffff;
break;
}
break;
case KeyRelease:
case KeyPress:
@ -1018,7 +1019,7 @@ void FGAPIENTRY glutMainLoop( void )
}
{
fgExecutionState execState = fgState.ActionOnWindowClose;
fgExecutionState execState = fgState.ExecState;
/*
* When this loop terminates, destroy the display, state and structure
@ -1381,7 +1382,7 @@ LRESULT CALLBACK fgWindowProc( HWND hWnd, UINT uMsg, WPARAM wParam,
break;
}
if ( ( window->Menu[ button ] != NULL ) && ( pressed == TRUE ) )
if ( ( window->Menu[ button ] ) && ( pressed == TRUE ) )
{
window->State.Redisplay = TRUE;
fgSetWindow( window );