4 // Graphical User Interface support
18 // Everything else is a class method...
19 static void Init(SDL_Renderer *);
20 static SDL_Texture * CreateTexture(SDL_Renderer *, const void *);
21 static void MouseDown(int32_t, int32_t, uint32_t);
22 static void MouseUp(int32_t, int32_t, uint32_t);
23 static void MouseMove(int32_t, int32_t, uint32_t);
24 static void HandleIconSelection(SDL_Renderer *);
25 static void AssembleDriveIcon(SDL_Renderer *, int);
26 static void DrawEjectButton(SDL_Renderer *, int);
27 static void DrawDriveLight(SDL_Renderer *, int);
28 static void DrawCharArray(SDL_Renderer *, const char *, int x,
29 int y, int w, int h, int r, int g, int b);
30 static void HandleGUIState(void);
31 static void DrawSidebarIcons(SDL_Renderer *);
32 static void Render(SDL_Renderer *);
35 static SDL_Texture * overlay;
36 static SDL_Rect olDst;
37 static int sidebarState;
39 static int32_t iconSelected;
40 static bool hasKeyboardFocus;