lecui user interface library
The lecui user interface library is designed for the rapid development of modern, efficient and easy to maintain C++ applications with a graphical user interface (gui). It is part of the liblec libraries. It enables you to make a simple gui app with minimal code but also gives you the power to build a marvel if you need to.
The library has a wiki available here. The wiki has details about how to use the library, examples, guidelines and more.
The library uses embedded XML-style documentation. An HTML version of this documentation is available here.
The lecui user interface library is designed to be a successor to the older cui framework. But why? It features newer technologies, greater flexibility and a more robust architecture. Below are some of the most important differences between the two:
- Accelerated graphics - while the former uses raw winapi, lecui uses accelerated graphics.
- Transparency channels - while all the widgets of the former are inherently opaque, lecui supports transparent widgets due to the more modern technologies that it harnesses.
- Containers - the former only has a single type of container (page) while the latter features a myriad of containers for a much more flexible design (pages, panes, tab panes, etc.). All containers support recursion; they can have not only widgets but also other containers, and the containers in them can also contain containers and so forth. This makes it possible to design advanced, compact modular user interfaces with layers. Every container supports transparency as well through the use of an alpha channel.
- Scroll bars - the way the former was designed from the word go does not support the overlap of widgets beyond the page or form; lecui supports this and vertical and/or horizontal scrollbars are automatically triggered to permit the user to scroll. These scroll bars are supported for all containers.
The library is used in the pc_info, spotlight_images and collab apps and various useful usage examples are available in the lecui demo repository. These range from minimalist hello world examples all the way up to advanced multi-page and multi-layer apps.
Below is a screenshot showing the interface of the collab app, built using lecui:
Below is a screenshot showing the interface of the spotlight_images app, built using lecui:
Below is a screenshot showing part of the interface of the pc_info app, also built using lecui:
Other screenshots are available in the following places:
Summary Description | Location |
---|---|
lecui_show | https://github.com/alecmus/files/tree/master/liblec/lecui/screenshots/lecui_show |
lecui_minimal | https://github.com/alecmus/files/tree/master/liblec/lecui/screenshots/lecui_minimal |
Prebuilt binaries of the library can be found under releases.
Refer to the wiki.
Refer to the wiki.
If it's the 32 bit build you will need to deploy it with lecui32.dll in the same folder. If it's a 64 bit build use the lecui64.dll.