Commit Graph

3983 Commits

Author SHA1 Message Date
Pietro Gagliardi f548f6d4d2 Readded the manifest to libui.dll. The test suite passes! 2019-04-21 17:46:50 -04:00
Pietro Gagliardi b8b3b3df39 Fixed the rest of the build errors and warnings. Woo! Now for the manifests. 2019-04-21 17:28:47 -04:00
Pietro Gagliardi f7867f3427 ALMOST fixed the build on Windows with MSVC. (For the change to test/testing.h: Even in VS2019 inline isn't available in C, ugh. That function doesn't need to be inline anyway, so eh.) 2019-04-21 15:08:09 -04:00
Pietro Gagliardi c6aa8c3324 Pruned windows/init.cpp to a minimal initialization that we can test things with, which includes adding a function to load err->Message with a formatted string.
Also added a better error for if InitCommonControlsEx() returns 0 without setting the last error; this usually means that v5 is loaded.
Fixes #451.
Updates #337.
2019-04-21 14:49:16 -04:00
Pietro Gagliardi b89a18f3dd Don't define DllMain() in a static build. Fixes #433. 2019-04-21 13:58:19 -04:00
Pietro Gagliardi 29c51b6348 Started readding the Windows code; added the Windows version headers to the docs as well now since I'm cleaning up winapi.hpp as well. 2019-04-21 13:54:39 -04:00
Pietro Gagliardi 469484415d Implemented uiInit() on Unix. 2019-04-21 12:24:19 -04:00
Pietro Gagliardi 2652772891 Wrapped the init example in a main() for maximum clarity. 2019-04-20 21:56:50 -04:00
Pietro Gagliardi 484989e925 Implemented uiInit() on macOS. The tests work so far! 2019-04-20 21:38:26 -04:00
Pietro Gagliardi 74b1e2780d Implemented the cross-platform bits of uiInit(). 2019-04-19 12:32:13 -04:00
Pietro Gagliardi 5e45afd0a2 More TODOs. 2019-04-19 12:13:08 -04:00
Pietro Gagliardi 6f3d45b107 Made it so that normal and after tests don't run if before tests failed. 2019-04-19 12:12:13 -04:00
Pietro Gagliardi da36b304f8 Wrote the uiInit() test. 2019-04-19 12:10:45 -04:00
Pietro Gagliardi 668a908e76 Fleshed out init-main.md some more. 2019-04-19 00:56:52 -04:00
Pietro Gagliardi 3001e5dfaf Merge branch 'master' into remodel 2019-04-17 23:17:22 -04:00
Pietro Gagliardi 28755bdbc0 Make the AppVeyor badge always reflect master.
Let's stop sending mixed signals about the build status in the CI environment; Travis and AppVeyor both used "the latest build" by default, and not "master", and apparently this confused people. See https://news.ycombinator.com/item?id=16331432 for an example.
2019-04-17 23:16:05 -04:00
Pietro Gagliardi e5e60284fb More desirable sorting of tests: by line number per file, specifically. Also per-file, but that can remain unguaranteed if I ever spin this out into its own library. 2019-04-17 22:58:44 -04:00
Pietro Gagliardi 16c6425200 Reorganized test sets into growing arrays. We can sort them next. 2019-04-17 22:12:32 -04:00
Pietro Gagliardi dcf34e6dab Set up the necessary work for having the list of tests sort by filename/line number instead of init order. 2019-04-17 21:49:47 -04:00
Pietro Gagliardi 2f58c2059e Oops 2019-04-12 22:06:23 -04:00
Pietro Gagliardi 745f2da3b8 Forgot something 2019-04-12 22:05:21 -04:00
Pietro Gagliardi 541f9d892d More documentation of initialization. 2019-04-12 22:02:01 -04:00
Pietro Gagliardi 4c46a25154 Started re-adding the uiInit functions, with a new method of returning errors. 2019-04-12 21:44:39 -04:00
Pietro Gagliardi db9be102e6 Properly defined uiprivExtern in static cases. 2019-04-12 10:56:09 -04:00
Pietro Gagliardi 59b449b920 Added rudimentary test ordering, for the Init and Uninit tests. 2019-04-10 20:17:40 -04:00
Pietro Gagliardi 1b046e763b Fixed the test suite. 2019-04-10 20:11:44 -04:00
Pietro Gagliardi 4f381d04a1 Added some test cases and the build script. 2019-04-10 14:42:17 -04:00
Pietro Gagliardi 759d6d1e46 Allowed deferred functions to access the testingT. If they call FailNow, we act as if nothing happens and the defers keep running. 2019-04-10 14:27:21 -04:00
Pietro Gagliardi 0149639edc Cleaned things up a bit for libui's test suite. 2019-04-10 14:19:17 -04:00
Pietro Gagliardi b26e0677af Okay, I'm not satisfied with the other testing frameworks, so strip testing.h down to just what libui needs. 2019-04-10 13:23:25 -04:00
Pietro Gagliardi ced0820e39 Undo that; this is probably overkill for libui's unit tests... 2019-04-10 12:55:37 -04:00
Pietro Gagliardi 5a0477d46d Moved the testing files back here since we're actually going to start writing proper unit tests now. 2019-04-10 12:18:08 -04:00
Pietro Gagliardi d861de85f6 Fleshed out using-libui.md. 2019-04-09 11:23:39 -04:00
Pietro Gagliardi 7387f08ee9 Added OS-specific header guidance. 2019-04-09 10:56:21 -04:00
Pietro Gagliardi b2cee470ca Oops, I accidentally swapped these two files. 2019-04-09 10:47:36 -04:00
Pietro Gagliardi de3fd3f546 Executive decision: remove menus and dialogs in the rebuild. We'll add them back later. 2019-04-09 10:46:00 -04:00
Pietro Gagliardi d5eb06327d And started the README on the subject. 2019-04-08 23:41:14 -04:00
Pietro Gagliardi 9f4b6507b1 Changed everything to use uiStatic instead of _UI_STATIC. 2019-04-08 23:39:27 -04:00
Pietro Gagliardi c5db824918 Started writing the documentation. Also decided that uiStatic must be defined in order to use libui as a static library. I'll change libui itself next. 2019-04-08 21:23:22 -04:00
Pietro Gagliardi c9643ea5a6 Gutted the existing header files, started trimming things that remain in the backups, and renamed _UI_EXTERN and _UI_ENUM and the include guards and libui_EXPORTS to start with uipriv instead. 2019-04-08 20:55:06 -04:00
Pietro Gagliardi 12d52be921 Oops; missed a spot. 2019-04-08 20:38:17 -04:00
Pietro Gagliardi 9bcb6d0af0 And made copies of the old files so we can properly rebuild them. 2019-04-08 20:37:31 -04:00
Pietro Gagliardi 992d8694a9 Let's start the remodel. Move almost everything out of the way. 2019-04-08 20:36:21 -04:00
Pietro Gagliardi 6247f94a74 Fixed the only-on-tags check. This documentation is unclear. 2019-04-07 23:38:28 -04:00
Pietro Gagliardi ab58d0053c Oh, I had to make the connectiona vailable to use on all pipelines. 2019-04-07 23:31:08 -04:00
Pietro Gagliardi 88a3267cdd Merge branch 'meson'
This switches the build system from CMake to Meson. This also switches from Travis CI to Azure Pipelines.

Fixes #450.
Fixes #449.
2019-04-07 23:24:01 -04:00
Pietro Gagliardi 425c920952 And updated the README with both the Azure Pipelines badge and Meson merge date. We're good to go! 2019-04-07 23:22:09 -04:00
Pietro Gagliardi c9ae167d90 I'm a dumb 2019-04-07 23:08:08 -04:00
Pietro Gagliardi 1761f99e81 Triple oops, maybe?? 2019-04-07 23:03:43 -04:00
Pietro Gagliardi 7fb9cfae21 Double oops 2019-04-07 23:01:50 -04:00