Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.
Go to file
Pietro Gagliardi e90da765e3 Fixed a simple typo. IT WORKS! Also shortened one of the debug log messages. 2016-04-24 00:54:31 -04:00
_wip Removed uthash. All its (one) uses are now using C++ instead. 2016-04-20 22:15:24 -04:00
_wiptable Began the work to list font families. This is the first of the text rendering work. 2015-12-22 19:01:56 -05:00
build Fixed some things so far. It looks like I can't have __FILE__, etc. turned into wide strings because the way to do so works *ahead of time* :| Have to restructure debug.cpp. 2016-04-23 17:31:59 -04:00
common Removed uthash. All its (one) uses are now using C++ instead. 2016-04-20 22:15:24 -04:00
darwin Added uiFontButtonFont() and uiFontButtonOnChanged(); implemented on OS X. 2016-04-20 13:40:54 -04:00
doc More Core Text stuff. 2016-01-11 19:34:42 -05:00
examples Fixed the controlgallery example. Reenabled it in make examples. Changed .travis.yml to build the test first. 2016-01-06 19:38:27 -05:00
haiku Set up saner handling of sonames at build time. 2016-01-05 11:51:36 -05:00
test Added uiFontButtonFont() and uiFontButtonOnChanged(); implemented on OS X. 2016-04-20 13:40:54 -04:00
unix Implemented the new fontbutton routines on GTK+. 2016-04-20 13:59:59 -04:00
windows Fixed a simple typo. IT WORKS! Also shortened one of the debug log messages. 2016-04-24 00:54:31 -04:00
.travis.yml Fixed the controlgallery example. Reenabled it in make examples. Changed .travis.yml to build the test first. 2016-01-06 19:38:27 -05:00
GNUmakefile Two important changes to the Windows build: 2016-01-19 16:40:00 -05:00
LICENSE Split into a new repository and added a LICENSE. 2015-04-16 20:31:11 -04:00
README.md Wrote up a utf16 with conversion and allocating-sprintf() functions. Changed the way deubgging will work. 2016-04-21 18:03:52 -04:00
TODO.md Some TODOs I will probably regret. 2016-04-16 15:41:34 -04:00
buildnotes More commit stuff. 2016-01-04 16:00:16 -05:00
ui.h More compiler error fixes. Warning fixes will come later. 2016-04-23 21:38:51 -04:00
ui_darwin.h Added C++ extern guards. 2015-11-16 10:55:44 -05:00
ui_haiku.hpp Wrote up the event handling code for Haiku. 2015-11-20 11:45:04 -05:00
ui_unix.h Entering Valhalla. 2015-11-17 10:46:58 -05:00
ui_windows.h Fixed some things so far. It looks like I can't have __FILE__, etc. turned into wide strings because the way to do so works *ahead of time* :| Have to restructure debug.cpp. 2016-04-23 17:31:59 -04:00

README.md

libui: a portable GUI library for C

This README is being written.
Build Status

Runtime Requirements

  • Windows: Windows Vista SP2 with Platform Update or newer
  • Unix: GTK+ 3.4 or newer
  • Mac OS X: OS X 10.7 or newer

Build Requirements

  • All platforms:
    • GNU make 3.81 or newer (Xcode comes with this; on Windows you will need to get it yourself)
  • Windows: Microsoft Visual Studio 2013 or newer (2013 is needed for va_copy())
    • MinGW is currently unsupported. MinGW-w64 support will be re-added once the following features come in:
      • Isolation awareness
      • Linker symbols for some functions such as TaskDialog() (which I thought I submitted...)
  • Unix: nothing specific
  • Mac OS X: nothing specific, so long as you can build Cocoa programs

(TODO write some notes on make variables and cross-compiling)

Documentation

Needs to be written. Consult ui.h and the examples for details for now.

Screenshots

From examples/controlgallery:

Windows

Unix

OS X