Commit Graph

4177 Commits

Author SHA1 Message Date
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
Pietro Gagliardi 50f019abef Oops 2019-04-07 23:00:50 -04:00
Pietro Gagliardi d62e767056 That didn't work; try it with template syntax instead. 2019-04-07 22:58:21 -04:00
Pietro Gagliardi 6d1e1d7f26 Try to fix Azure Pipelines. I won't be able to make a tag to test the binaries until I merge back in, but I can't figure out how to set the default branch with YAML configurations (unless I have to do it on master), so. 2019-04-07 22:55:28 -04:00
Pietro Gagliardi e8daaf659e windows/direct2d: fix ID2D1RenderTarget::GetPixelFormat() and ID2D1RenderTarget::GetSize() typedefs in MinGW-w64 ABI workaround
MinGW-w64 recently added manual workarounds directly into the class via overloads that make existing Direct2D code source-compatible. However, that exposed an error in my definition of the typedefs I was using in my own workaround: both of these methods are const, even in MSVC, but I neglected to include the const qualifier. I'm not sure how this code compiled in the past, but now the overload resolution engine finds no match.

I want to remain compatible with versions of MinGW-w64 old enough to not have their fix, so our fix remains.

Fixes #446.
2019-04-07 21:56:35 -04:00
Pietro Gagliardi 9c164a2c5c Okay, at this point I'm betting pushd/popd just don't work on AppVeyor's cmd.exe. I'm betting it has to do with popd /? showing me the output of call /? instead. Just use cd. 2019-04-07 21:03:20 -04:00
Pietro Gagliardi 73e4e58c80 Okay, let's see if it's because of the multiline scripts. 2019-04-07 20:53:32 -04:00