Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/petabyt/libui-dev
Native UI library for C - with some extras
https://github.com/petabyt/libui-dev
cocoa gtk libui windows
Last synced: about 24 hours ago
JSON representation
Native UI library for C - with some extras
- Host: GitHub
- URL: https://github.com/petabyt/libui-dev
- Owner: petabyt
- License: mit
- Created: 2023-11-12T18:09:21.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-01-03T19:44:36.000Z (15 days ago)
- Last Synced: 2025-01-12T22:15:03.602Z (6 days ago)
- Topics: cocoa, gtk, libui, windows
- Language: C
- Homepage: https://libui.dev/
- Size: 6.29 MB
- Stars: 7
- Watchers: 2
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Authors: AUTHORS.md
Awesome Lists containing this project
README
# libui-dev
A fork of [libui-ng](https://github.com/libui-ng/libui-ng) - a portable UI library written in C, which uses the native UI of the operating system it runs on.
Like wxWidgets, but in C. And much more bare-bones.This adds a bunch of experimental features and fixes:
- [x] uiWindowSetIcon
- [x] Windows DPI scaling (4k)
- [x] `uiTabOnSelected`/`uiTabSetSelected` ([289](https://github.com/libui-ng/libui-ng/pull/289))
- [x] Tooltips ([266](https://github.com/libui-ng/libui-ng/pull/266)/[256](https://github.com/libui-ng/libui-ng/pull/256))
- [x] Placeholders ([224](https://github.com/libui-ng/libui-ng/pull/224))
- [x] Fix `uiWindowSetContentSize` ([261](https://github.com/libui-ng/libui-ng/pull/261))
- [x] Fix darwin menu + modal window issues ([295](https://github.com/libui-ng/libui-ng/pull/295))
- [ ] uiScroll (WIP)
- [ ] uiImage control ([209](https://github.com/andlabs/libui/pull/209))
- [ ] uiEntry and uiEditableCombobox placeholders ([224](https://github.com/libui-ng/libui-ng/pull/224))
- [ ] uiEntryOnFinished ([290](https://github.com/andlabs/libui/pull/290))
- [ ] uiImageButton
- [ ] uiVersion API ([143](https://github.com/libui-ng/libui-ng/pull/143))
- [ ] uiDrawBitmap ([386](https://github.com/andlabs/libui/pull/386))
- [ ] OpenGLArea ([405](https://github.com/andlabs/libui/pull/405))
- [ ] Type safety with C11 generics (https://github.com/petabyt/libui-dev/issues/1)
- [ ] Expose more system functions to make adding controls easier
- [ ] Code editing control `uiScintilla`
- [ ] Get Qt5 backend working (https://github.com/mischnic/libui/tree/qt5)Significant changes:
- [x] Moved include files to include/
- [ ] Make `uiControl` macro type-safe
- [ ] Change `uiImage` API# Build system
Meson build system is preserved, but a make-based system is added for cross-compilation.
```
# Compile for MinGW from Linux
make TARGET=w libui_win64.a install# Compile for linux from linux
make TARGET=l libui.so install# Compile for Mac from Darling/Mac
make TARGET=m libui.dylib
```- [x] X86_64 Linux (.so, .AppImage)
- [x] X86_64 Windows (.a, .exe)
- [x] X86_64 MacOS (.dylib, .app)
- [ ] ARM64 Linux
- [ ] ARM64 MacOS# Credits:
- https://github.com/libui-ng/libui-ng
- https://github.com/andlabs/libuiIf any libui developer wants to work on this repo let me know and I'll add you as a maintainer.