Applied patch [ 597700 ] Fix proposal for wxJoystick under MSW

Proposed fixes for the wxWindows joystick code under
MSW.
Some of these would be valid for other platforms, too.

Events for buttons are named wrong, docs say different.
Docs say EVT_JOY_BUTTON_DOWN and
EVT_JOY_BUTTON_UP,
but the code says EVT_JOY_DOWN and EVT_JOY_UP. I
suggest
changing the code to match the docs.

wxJoystick::GetNumberJoysticks() should be a static
member
function. Having to create a joystick object to see if there
are joysticks is silly.

Docs for GetNumberJoysticks() must be changed; it returns
the
number of potentially connected joysticks, not the number of
actually connected. Alternatively, GetNumberJoysticks() and
others must be rewritten to conform with documentation,
including
remapping of wxWindows sequential joystick ID's to match
MSW non-sequential joystick ID's.

dwSize is not set when joyGetPosEx() is called. SEVERE
ERROR.

Error return value from functions should not be a legal
return,
for instance, wxJoystick::GetPOVCTSPosition() returns 0
for error,
but this is a legal return value.

GetButtonState() supports only four (out of 32) buttons.
Also, should return as bitmap (LSB = button 1). (Win32
does this,
although not documented as such).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2002-08-20 17:16:05 +00:00
parent b5c702530e
commit 131f9d9b19
5 changed files with 105 additions and 22 deletions

View File

@@ -33,8 +33,11 @@ Destroys the wxJoystick object.
\constfunc{int}{GetButtonState}{\void}
Returns the state of the joystick buttons. A bitlist of wxJOY\_BUTTONn identifiers,
where n is 1, 2, 3 or 4.
Returns the state of the joystick buttons. Every button is mapped to a single
bit in the returned integer, with the first button being mapped to the least
significant bit, and so on.
A bitlist of wxJOY\_BUTTONn identifiers, where n is 1, 2, 3 or 4
is available for historical reasons.
\membersection{wxJoystick::GetManufacturerId}\label{wxjoystickgetmanufacturerid}
@@ -101,13 +104,16 @@ Returns the x, y position of the joystick.
\constfunc{int}{GetPOVPosition}{\void}
Returns the point-of-view position, expressed in discrete units.
Returns the point-of-view position, expressed in continuous, one-hundredth of a degree units,
but limited to return 0, 9000, 18000 or 27000.
Returns -1 on error.
\membersection{wxJoystick::GetPOVCTSPosition}\label{wxjoystickgetpovctsposition}
\constfunc{int}{GetPOVCTSPosition}{\void}
Returns the point-of-view position, expressed in continuous, one-hundredth of a degree units.
Returns -1 on error.
\membersection{wxJoystick::GetRudderMax}\label{wxjoystickgetruddermax}