GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Rworld-Ravi/LVGLBuilder: GUI Builder for littlevgl.

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

23 Commits
23 Commits

Folders and files

NameName
Last commit message
Last commit date
freetype
freetype
 
 
lvgl
lvgl
 
 
properties
properties
 
 
resources
resources
 
 
widgets
widgets
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
LVGLBuilder.pro
LVGLBuilder.pro
 
 
LVGLCore.cpp
LVGLCore.cpp
 
 
LVGLCore.h
LVGLCore.h
 
 
LVGLDialog.cpp
LVGLDialog.cpp
 
 
LVGLDialog.h
LVGLDialog.h
 
 
LVGLFontData.cpp
LVGLFontData.cpp
 
 
LVGLFontData.h
LVGLFontData.h
 
 
LVGLFontDialog.cpp
LVGLFontDialog.cpp
 
 
LVGLFontDialog.h
LVGLFontDialog.h
 
 
LVGLFontDialog.ui
LVGLFontDialog.ui
 
 
LVGLImageData.cpp
LVGLImageData.cpp
 
 
LVGLImageData.h
LVGLImageData.h
 
 
LVGLItem.cpp
LVGLItem.cpp
 
 
LVGLItem.h
LVGLItem.h
 
 
LVGLNewDialog.cpp
LVGLNewDialog.cpp
 
 
LVGLNewDialog.h
LVGLNewDialog.h
 
 
LVGLNewDialog.ui
LVGLNewDialog.ui
 
 
LVGLObject.cpp
LVGLObject.cpp
 
 
LVGLObject.h
LVGLObject.h
 
 
LVGLObjectModel.cpp
LVGLObjectModel.cpp
 
 
LVGLObjectModel.h
LVGLObjectModel.h
 
 
LVGLProject.cpp
LVGLProject.cpp
 
 
LVGLProject.h
LVGLProject.h
 
 
LVGLProperty.cpp
LVGLProperty.cpp
 
 
LVGLProperty.h
LVGLProperty.h
 
 
LVGLPropertyModel.cpp
LVGLPropertyModel.cpp
 
 
LVGLPropertyModel.h
LVGLPropertyModel.h
 
 
LVGLSimulator.cpp
LVGLSimulator.cpp
 
 
LVGLSimulator.h
LVGLSimulator.h
 
 
LVGLStyle.cpp
LVGLStyle.cpp
 
 
LVGLStyle.h
LVGLStyle.h
 
 
LVGLStyleModel.cpp
LVGLStyleModel.cpp
 
 
LVGLStyleModel.h
LVGLStyleModel.h
 
 
LVGLTreeViewItem.cpp
LVGLTreeViewItem.cpp
 
 
LVGLWidgetModel.cpp
LVGLWidgetModel.cpp
 
 
LVGLWidgetModel.h
LVGLWidgetModel.h
 
 
LVGLWorker.cpp
LVGLWorker.cpp
 
 
LVGLWorker.h
LVGLWorker.h
 
 
MainWindow.cpp
MainWindow.cpp
 
 
MainWindow.h
MainWindow.h
 
 
MainWindow.ui
MainWindow.ui
 
 
README.md
README.md
 
 
main.cpp
main.cpp
 
 
preview.png
preview.png
 
 

Repository files navigation

LVGLBuilder

GUI Builder for littlevgl written in C++ and using LVGL for preview of the created GUI and Qt for the higher-level user interface for drag and drop of widgets as well as editing of properties and styles.

Preview

Prerequisites

  • Qt 5.11+ - The Qt framework
  • C++11
  • LVGL 6.1 (included in source since a few adaptions are applied)

Tested on Windows 10 with MSVC 2017 & Qt 5.13.1

Build

Building with console:

  • Move to the cloned LVGLBuild directory
  • Run qmake LVGLBuilder.pro
  • For gcc (Mac/Linux): make
  • For mingw: mingw32-make
  • For windows: jom (make sure that jom.exe is in the environment path)

Building with QtCreator:

  • Download Qt from https://www.qt.io/download-open-source
  • Install Qt with QtCreator
  • Open the LVGLBuilder.pro file with QtCreator
  • Click build project
  • There are no special requironments, therefor it should build with QtCreator out of the box.

Usage

  • Create a new project (only 320x480 resolution supported at the moment)
  • Simply drag and drop widgets from the list into the canvas
  • Widgets can be moved with the arrow keys or by dragging
  • Lock widgets to prevent editing (Unlock via right click context menu)
  • Drop a widget into another widget to set the parent
  • Save and load a project as json file using the menu or tool buttons
  • Mark widgets within the property editor as accessable via the c header
  • Export the project as c code using the menu (File -> Export -> C Project ...)

ToDo General

  • Saving GUI as JSON
  • Loading GUI as JSON
  • Export C-project
  • Change style of single widgets
  • Default values for widgets
  • Preview for widgets
  • Icons for widgets
  • Support different display formats (Default screens like ili9341 or OLED screens)
  • Support multiple screens
  • Fix object inspector (insertion and deletion of widgets)
  • Dialog for changing keyboard layout
  • Undo and redo

ToDo Widgets

  • Arc (lv_arc)
  • Bar (lv_bar)
  • Button (lv_btn)
  • Button matrix (lv_btnm)
  • Calendar (lv_calendar)
  • Canvas (lv_canvas)
  • Checkbox (lv_cb)
  • Chart (lv_chart)
  • Container (lv_cont)
  • Color picker (lv_cpicker)
  • Drop-down list (lv_ddlist)
  • Gauge (lv_gauge)
  • Image (lv_img)
  • Image button (lv_imgbtn)
  • Keyboard (lv_kb)
  • Label (lv_label)
  • LED (lv_led)
  • Line (lv_line)
  • List (lv_list)
  • Line meter (lv_lmeter)
  • Message box (lv_mbox)
  • Page (lv_page)
  • Preloader (lv_preload)
  • Roller (lv_roller)
  • Slider (lv_slider)
  • Spinbox (lv_spinbox)
  • Switch (lv_sw)
  • Table (lv_table)
  • Tabview (lv_tabview)
  • Text area (lv_ta)
  • Tile view (lv_tileview)
  • Window (lv_win)

About

GUI Builder for littlevgl.

Resources

Readme
MIT license
Activity

Stars

1 star

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.