Skip to content

Commit b84960f

Browse files
rotary encoder + page-up / page-down
1 parent 74f6737 commit b84960f

File tree

1 file changed

+34
-1
lines changed

1 file changed

+34
-1
lines changed

radio/src/targets/simu/sdl_simu.cpp

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,11 @@
2626
#include <imgui_impl_sdl2.h>
2727
#include <imgui_impl_sdlrenderer2.h>
2828

29+
#include "gui_common.h"
30+
#include "hal/adc_driver.h"
31+
#include "hal/rotary_encoder.h"
32+
#include "edgetx_constants.h"
33+
2934
#ifdef __EMSCRIPTEN__
3035
#include <emscripten.h>
3136
#endif
@@ -77,6 +82,10 @@ static const unsigned char _icon_png[] = {
7782
};
7883
#endif
7984

85+
#if defined(ROTARY_ENCODER_NAVIGATION)
86+
extern volatile rotenc_t rotencValue;
87+
#endif
88+
8089
int pots[MAX_POTS] = {0};
8190

8291
static void _set_pixel(uint8_t* pixel, const SDL_Color& color)
@@ -234,17 +243,27 @@ static bool handleKeyEvents(SDL_Event& event)
234243
break;
235244

236245
case SDLK_UP:
246+
#if defined(ROTARY_ENCODER_NAVIGATION)
247+
rotencValue -= ROTARY_ENCODER_GRANULARITY;
248+
key_handled = true;
249+
#else
237250
if (keysGetSupported() & (1 << KEY_UP)) {
238251
key = KEY_UP;
239252
key_handled = true;
240253
}
254+
#endif
241255
break;
242256

243257
case SDLK_DOWN:
258+
#if defined(ROTARY_ENCODER_NAVIGATION)
259+
rotencValue += ROTARY_ENCODER_GRANULARITY;
260+
key_handled = true;
261+
#else
244262
if (keysGetSupported() & (1 << KEY_DOWN)) {
245263
key = KEY_DOWN;
246264
key_handled = true;
247265
}
266+
#endif
248267
break;
249268

250269
case SDLK_PLUS:
@@ -261,6 +280,20 @@ static bool handleKeyEvents(SDL_Event& event)
261280
}
262281
break;
263282

283+
case SDLK_PAGEUP:
284+
if (keysGetSupported() & (1 << KEY_PAGEUP)) {
285+
key = KEY_PAGEUP;
286+
key_handled = true;
287+
}
288+
break;
289+
290+
case SDLK_PAGEDOWN:
291+
if (keysGetSupported() & (1 << KEY_PAGEDN)) {
292+
key = KEY_PAGEDN;
293+
key_handled = true;
294+
}
295+
break;
296+
264297
case SDLK_m:
265298
if (keysGetSupported() & (1 << KEY_MENU)) {
266299
key = KEY_MENU;
@@ -640,7 +673,7 @@ int main(int argc, char** argv)
640673
return 0;
641674
}
642675

643-
// race condition on YAML loaded...
676+
// TODO: race condition on YAML loaded...
644677
if (g_eeGeneral.stickMode == 1) {
645678
stick_left.pos.y = 1.0f;
646679
} else if (g_eeGeneral.stickMode == 0) {

0 commit comments

Comments
 (0)