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 45dd9416d3 Moved some stuff out of the way. 2016-05-05 17:59:33 -04:00
_wip Moved some stuff out of the way. 2016-05-05 17:59:33 -04: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 Started the migration. Got rid of a bunch of cruft, including the old delayed resize logic (except for timers; will have to get that back out). 2016-04-26 19:57:13 -04:00
darwin Separated the presence of a no-stretchy view from the presence of a stretchy control. This will make experimenting easier. 2016-05-02 15:47:48 -04:00
doc More Core Text stuff. 2016-01-11 19:34:42 -05:00
examples Integrated the GTK+ date/time picker. FINALLY! 2016-05-04 23:35:11 -04:00
test Added uiFontButtonFont() and uiFontButtonOnChanged(); implemented on OS X. 2016-04-20 13:40:54 -04:00
unix Some TODO resolution/stale TODO elimination. 2016-05-05 17:58:26 -04:00
windows A few more positioning bugs fixed and TODOs. I guess we can merge this now! (The redraw bugs will have to wait.) 2016-04-29 17:41:17 -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 A few more positioning bugs fixed and TODOs. I guess we can merge this now! (The redraw bugs will have to wait.) 2016-04-29 17:41:17 -04:00
buildnotes More commit stuff. 2016-01-04 16:00:16 -05:00
oldhaiku.tgz Discontinued the Haiku port for now. 2016-04-24 14:18:56 -04:00
ui.h Made SyncEnableState() a uiDarwinControl method instead of a uiControl method since it's not needed on GTK+. 2016-04-25 17:52:16 -04:00
ui_darwin.h Fixed the SyncEnableState() machinery not quite working properly. 2016-04-25 18:07:29 -04:00
ui_unix.h More ui_unix.h and unix/control.c work. NOW we're ready to migrate the controls. 2016-04-25 19:45:05 -04:00
ui_windows.h Fixed all compiiler errors. Now for runtime errors! 2016-04-29 17:08:31 -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