summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2002-08-07 09:17:21 +0000
committerDaniel Stenberg <daniel@haxx.se>2002-08-07 09:17:21 +0000
commit4681e09aac67947787179829ed4b048f87a21784 (patch)
tree868fe4e4bd1b49ed43ea22b0023ecace285b2adf
parenta398aa49ddad0f53e305d87336f3015667fd0636 (diff)
downloadrockbox-4681e09aac67947787179829ed4b048f87a21784.tar.gz
rockbox-4681e09aac67947787179829ed4b048f87a21784.zip
Unix coder playing win32 programmer, added button_get_w_tmo() and it what
do you know, it might just work. There was no win32 programmer in sight. How hard can it be? ;-P git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1580 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--uisimulator/win32/button.c138
1 files changed, 83 insertions, 55 deletions
diff --git a/uisimulator/win32/button.c b/uisimulator/win32/button.c
index 3ecdca2b19..4fb4bd0612 100644
--- a/uisimulator/win32/button.c
+++ b/uisimulator/win32/button.c
@@ -50,61 +50,89 @@ int button_set_release(int newmask)
50 return oldmask; 50 return oldmask;
51} 51}
52 52
53static int real_button_get(void)
54{
55 if (bActive)
56 {
57 if (KEY (VK_NUMPAD4) ||
58 KEY (VK_LEFT)) // left button
59 btn |= BUTTON_LEFT;
60
61 if (KEY (VK_NUMPAD6) ||
62 KEY (VK_RIGHT))
63 btn |= BUTTON_RIGHT; // right button
64
65 if (KEY (VK_NUMPAD8) ||
66 KEY (VK_UP))
67 btn |= BUTTON_UP; // up button
68
69 if (KEY (VK_NUMPAD2) ||
70 KEY (VK_DOWN))
71 btn |= BUTTON_DOWN; // down button
72
73 if (KEY (VK_ADD))
74 btn |= BUTTON_ON; // on button
75
76#ifdef HAVE_RECORDER_KEYPAD
77 if (KEY (VK_RETURN))
78 btn |= BUTTON_OFF; // off button
79
80 if (KEY (VK_DIVIDE) || KEY(VK_F1))
81 btn |= BUTTON_F1; // F1 button
82
83 if (KEY (VK_MULTIPLY) || KEY(VK_F2))
84 btn |= BUTTON_F2; // F2 button
85
86 if (KEY (VK_SUBTRACT) || KEY(VK_F3))
87 btn |= BUTTON_F3; // F3 button
88
89 if (KEY (VK_NUMPAD5) ||
90 KEY (VK_SPACE))
91 btn |= BUTTON_PLAY; // play button
92#else
93 if (KEY (VK_RETURN))
94 btn |= BUTTON_MENU; // menu button
95#endif
96
97 if (btn != 0) {
98 last_key = 0 ;
99 }
100 }
101
102 return btn;
103}
104
53int button_get(bool block) 105int button_get(bool block)
54{ 106{
55 int btn = 0; 107 int btn;
56 do 108 do {
57 { 109
58 if (bActive) 110 btn = real_button_get();
59 { 111
60 if (KEY (VK_NUMPAD4) || 112 if(!btn)
61 KEY (VK_LEFT)) // left button 113 /* prevent busy-looping */
62 btn |= BUTTON_LEFT; 114 Sleep (50); /* ms */
63 115 else
64 if (KEY (VK_NUMPAD6) || 116 break;
65 KEY (VK_RIGHT)) 117
66 btn |= BUTTON_RIGHT; // right button 118 } while (block);
67 119
68 if (KEY (VK_NUMPAD8) || 120 return btn;
69 KEY (VK_UP)) 121}
70 btn |= BUTTON_UP; // up button 122
71 123int button_get_w_tmo(int ticks)
72 if (KEY (VK_NUMPAD2) || 124{
73 KEY (VK_DOWN)) 125 int btn;
74 btn |= BUTTON_DOWN; // down button 126 do {
75 127 btn = real_button_get();
76 if (KEY (VK_ADD)) 128
77 btn |= BUTTON_ON; // on button 129 if(!btn)
78 130 /* prevent busy-looping */
79 #ifdef HAVE_RECORDER_KEYPAD 131 sleep(1); /* one tick! */
80 if (KEY (VK_RETURN)) 132 else
81 btn |= BUTTON_OFF; // off button 133 break;
82 134
83 if (KEY (VK_DIVIDE) || KEY(VK_F1)) 135 } while (block);
84 btn |= BUTTON_F1; // F1 button 136
85 137 return btn;
86 if (KEY (VK_MULTIPLY) || KEY(VK_F2))
87 btn |= BUTTON_F2; // F2 button
88
89 if (KEY (VK_SUBTRACT) || KEY(VK_F3))
90 btn |= BUTTON_F3; // F3 button
91
92 if (KEY (VK_NUMPAD5) ||
93 KEY (VK_SPACE))
94 btn |= BUTTON_PLAY; // play button
95 #else
96 if (KEY (VK_RETURN))
97 btn |= BUTTON_MENU; // menu button
98 #endif
99
100 if (btn != 0) {
101 last_key = 0 ;
102 }
103 }
104 }
105 while (btn == 0 && block);
106
107 Sleep (50);
108
109 return btn;
110} 138}