]> git.saurik.com Git - wxWidgets.git/blame - include/wx/msw/joystick.h
Add a SetDoubleBuffered method for wxMSW (XP+)
[wxWidgets.git] / include / wx / msw / joystick.h
CommitLineData
2bda0e17
KB
1/////////////////////////////////////////////////////////////////////////////
2// Name: joystick.h
3// Purpose: wxJoystick class
4// Author: Julian Smart
5// Modified by:
6// Created: 01/02/97
7// RCS-ID: $Id$
bbcdf8bc 8// Copyright: (c) Julian Smart
598ddd96 9// Licence: wxWindows licence
2bda0e17
KB
10/////////////////////////////////////////////////////////////////////////////
11
bbcdf8bc
JS
12#ifndef _WX_JOYSTICK_H_
13#define _WX_JOYSTICK_H_
2bda0e17 14
2bda0e17
KB
15#include "wx/event.h"
16
131f235d 17class WXDLLIMPEXP_ADV wxJoystick: public wxObject
2bda0e17
KB
18{
19 DECLARE_DYNAMIC_CLASS(wxJoystick)
20 public:
21 /*
22 * Public interface
23 */
24
131f9d9b 25 wxJoystick(int joystick = wxJOYSTICK1);
2bda0e17
KB
26
27 // Attributes
28 ////////////////////////////////////////////////////////////////////////////
29
30 wxPoint GetPosition(void) const;
e6733873
VZ
31 int GetPosition(unsigned axis) const;
32 bool GetButtonState(unsigned button) const;
2bda0e17
KB
33 int GetZPosition(void) const;
34 int GetButtonState(void) const;
35 int GetPOVPosition(void) const;
36 int GetPOVCTSPosition(void) const;
37 int GetRudderPosition(void) const;
38 int GetUPosition(void) const;
39 int GetVPosition(void) const;
40 int GetMovementThreshold(void) const;
41 void SetMovementThreshold(int threshold) ;
42
43 // Capabilities
44 ////////////////////////////////////////////////////////////////////////////
45
131f9d9b
JS
46 static int GetNumberJoysticks(void);
47
2bda0e17 48 bool IsOk(void) const; // Checks that the joystick is functioning
2bda0e17
KB
49 int GetManufacturerId(void) const ;
50 int GetProductId(void) const ;
51 wxString GetProductName(void) const ;
52 int GetXMin(void) const;
53 int GetYMin(void) const;
54 int GetZMin(void) const;
55 int GetXMax(void) const;
56 int GetYMax(void) const;
57 int GetZMax(void) const;
58 int GetNumberButtons(void) const;
59 int GetNumberAxes(void) const;
60 int GetMaxButtons(void) const;
61 int GetMaxAxes(void) const;
62 int GetPollingMin(void) const;
63 int GetPollingMax(void) const;
64 int GetRudderMin(void) const;
65 int GetRudderMax(void) const;
66 int GetUMin(void) const;
67 int GetUMax(void) const;
68 int GetVMin(void) const;
69 int GetVMax(void) const;
70
71 bool HasRudder(void) const;
72 bool HasZ(void) const;
73 bool HasU(void) const;
74 bool HasV(void) const;
75 bool HasPOV(void) const;
76 bool HasPOV4Dir(void) const;
77 bool HasPOVCTS(void) const;
78
79 // Operations
80 ////////////////////////////////////////////////////////////////////////////
81
82 // pollingFreq = 0 means that movement events are sent when above the threshold.
83 // If pollingFreq > 0, events are received every this many milliseconds.
84 bool SetCapture(wxWindow* win, int pollingFreq = 0);
85 bool ReleaseCapture(void);
86
87protected:
88 int m_joystick;
89};
90
91#endif
bbcdf8bc 92 // _WX_JOYSTICK_H_