4#include "colorspaces.hpp" 
    5#include <unordered_map> 
    7#if defined(_3DS) || defined(_3DS_MOCK) 
   13#define SCREEN_WIDTH RootDisplay::screenWidth 
   14#define SCREEN_HEIGHT RootDisplay::screenHeight 
   31    void setScreenResolution(
int width, 
int height);
 
   33    static CST_Renderer* renderer;
 
   34    static CST_Window* window;
 
   37    static void switchSubscreen(
Element* next);
 
   42    static int screenWidth;
 
   43    static int screenHeight;
 
   44    static float dpiScale;
 
   49    static bool idleCursorPulsing;
 
   52    bool canUseSelectToExit = 
false;
 
   54    int lastFrameTime = 99;
 
   55    SDL_Event needsRender;
 
   60    std::function<void()> windowResizeCallback = NULL; 
 
   62    std::vector<Element*> trash;
 
   67#if !defined(SIMPLE_SDL2) 
   68    Mix_Music* music = NULL;
 
   74    bool hasRequestedQuit = 
false;
 
   75    bool isAppRunning = 
true;
 
int width
width and height of this element (must be manually set, isn't usually calculated (but is in some case...
 
Element * parent
the parent element (can sometimes be null if it isn't set)
 
bool process(InputEvents *event)
process any input that is received for this element
 
void render(Element *parent)
display the current state of the display