cash2ecash

cash2ecash: cash acceptor that issues digital cash (experimental)
Log | Files | Refs | Submodules | README | LICENSE

gui.hpp (992B)


      1 #ifndef GUI_H
      2 #define GUI_H
      3 #include "lvgl.h"
      4 #include <cstdint>
      5 #include <src/drivers/display/drm/lv_linux_drm.h>
      6 #include <src/drivers/evdev/lv_evdev.h>
      7 #include <src/indev/lv_indev.h>
      8 #include "screen.hpp"
      9 
     10 class Gui {
     11   private:
     12   uint16_t window_width = 480;
     13   uint16_t window_height = 800;
     14   bool fullscreen = 0;
     15   bool maximize = 0;
     16 
     17   void displayInit(){
     18     //display
     19     const char *device = "/dev/dri/card1";
     20     lv_display_t *disp = lv_linux_drm_create();
     21     lv_linux_drm_set_file(disp, device, -1);
     22 
     23     //touch input device
     24     const char *inputDevice = "/dev/input/by-path/platform-fe205000.i2c-event";
     25     lv_indev_t *touch = lv_evdev_create(LV_INDEV_TYPE_POINTER, inputDevice);
     26     lv_indev_set_display(touch, disp);
     27     
     28   }
     29 
     30   protected:
     31   public:
     32   Gui()
     33   {
     34     lv_init();
     35     displayInit();
     36   }
     37 
     38   uint32_t timerHandler(){
     39     return lv_timer_handler();
     40   }
     41 
     42 
     43   int setActiveScreen(Screen *screen){
     44     lv_screen_load(screen->getScreen());
     45     return 0;
     46   }
     47 };
     48 
     49 #endif