BGE Py API
[blender.git] / source / gameengine / PyDoc / SCA_KeyboardSensor.py
1 # $Id$
2 # Documentation for SCA_KeyboardSensor
3 from SCA_ISensor import *
4
5 class SCA_KeyboardSensor(SCA_ISensor):
6         """
7         A keyboard sensor detects player key presses.
8         
9         See module L{GameKeys} for keycode values.
10         
11         @ivar key: The key code this sensor is looking for.
12         @type key: keycode from L{GameKeys} module
13         @ivar hold1: The key code for the first modifier this sensor is looking for.
14         @type hold1: keycode from L{GameKeys} module
15         @ivar hold2: The key code for the second modifier this sensor is looking for.
16         @type hold2: keycode from L{GameKeys} module
17         @ivar toggleProperty: The name of the property that indicates whether or not to log keystrokes as a string.
18         @type toggleProperty: string
19         @ivar targetProperty: The name of the property that receives keystrokes in case in case a string is logged.
20         @type targetProperty: string
21         @ivar useAllKeys: Flag to determine whether or not to accept all keys.
22         @type useAllKeys: boolean
23         @ivar events: a list of pressed keys that have either been pressed, or just released, or are active this frame. (read only).
24
25                         - 'keycode' matches the values in L{GameKeys}.
26                         - 'status' uses...
27                                 - L{GameLogic.KX_INPUT_NONE}
28                                 - L{GameLogic.KX_INPUT_JUST_ACTIVATED}
29                                 - L{GameLogic.KX_INPUT_ACTIVE}
30                                 - L{GameLogic.KX_INPUT_JUST_RELEASED}
31                         
32         @type events: list [[keycode, status], ...]
33         """
34         def getEventList():
35                 """
36                 Get a list of pressed keys that have either been pressed, or just released, or are active this frame.
37                 
38                 B{DEPRECATED: Use the "events" property instead}.
39                 
40                 @rtype: list of key status. [[keycode, status]]
41                 @return: A list of keyboard events
42                 """
43         
44         def getKeyStatus(keycode):
45                 """
46                 Get the status of a key.
47                 
48                 @rtype: key state L{GameLogic} members (KX_INPUT_NONE, KX_INPUT_JUST_ACTIVATED, KX_INPUT_ACTIVE, KX_INPUT_JUST_RELEASED)
49                 @return: The state of the given key
50                 @type keycode: integer
51                 @param keycode: The code that represents the key you want to get the state of
52                 """
53         
54         #--The following methods are DEPRECATED--
55         def getKey():
56                 """
57                 Returns the key code this sensor is looking for.
58                 
59                 B{DEPRECATED: Use the "key" property instead}.
60                 
61                 @rtype: keycode from L{GameKeys} module
62                 """
63         
64         def setKey(keycode):
65                 """
66                 Set the key this sensor should listen for.
67                 
68                 B{DEPRECATED: Use the "key" property instead}.
69                 
70                 @type keycode: keycode from L{GameKeys} module
71                 """
72         
73         def getHold1():
74                 """
75                 Returns the key code for the first modifier this sensor is looking for.
76                 
77                 B{DEPRECATED: Use the "hold1" property instead}.
78                 
79                 @rtype: keycode from L{GameKeys} module
80                 """
81         
82         def setHold1(keycode):
83                 """
84                 Sets the key code for the first modifier this sensor should look for.
85                 
86                 B{DEPRECATED: Use the "hold1" property instead}.
87                 
88                 @type keycode: keycode from L{GameKeys} module
89                 """
90         
91         def getHold2():
92                 """
93                 Returns the key code for the second modifier this sensor is looking for.
94                 
95                 B{DEPRECATED: Use the "hold2" property instead}.
96                 
97                 @rtype: keycode from L{GameKeys} module
98                 """
99         
100         def setHold2(keycode):
101                 """
102                 Sets the key code for the second modifier this sensor should look for.
103                 
104                 B{DEPRECATED: Use the "hold2" property instead.}
105                 
106                 @type keycode: keycode from L{GameKeys} module
107                 """
108         
109         def getPressedKeys():
110                 """
111                 Get a list of keys that have either been pressed, or just released this frame.
112                 
113                 B{DEPRECATED: Use "events" instead.}
114                 
115                 @rtype: list of key status. [[keycode, status]]
116                 """
117         
118         def getCurrentlyPressedKeys():
119                 """
120                 Get a list of currently pressed keys that have either been pressed, or just released
121                 
122                 B{DEPRECATED: Use "events" instead.}
123                 
124                 @rtype: list of key status. [[keycode, status]]
125                 """