Commit Graph

4111 Commits

Author SHA1 Message Date
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
Pietro Gagliardi 0b319032b6 Other way 2019-04-07 20:44:19 -04:00
Pietro Gagliardi fbdd84ac86 Not sure why popd is exiting with status 1... 2019-04-07 20:43:49 -04:00
Pietro Gagliardi d08ab7d260 Double oops. But this should work now! 2019-04-07 20:35:56 -04:00
Pietro Gagliardi 6e915321cc Oops 2019-04-07 20:29:46 -04:00
Pietro Gagliardi 52f07b0533 No reason pip shouldn't work... 2019-04-07 20:23:07 -04:00
Pietro Gagliardi acc0586fd6 Okay so .appveyor.yml cmd scripts must not have multiline commands, ugh. 2019-04-07 20:16:04 -04:00
Pietro Gagliardi 3f815718b1 Oops 2019-04-07 18:17:10 -04:00
Pietro Gagliardi 3037d7b87f Completely update the AppVeyor proejct. It now only handles MinGW and VS2013 builds, and uses YAML better. Partially based on guidance in the meson documentation. 2019-04-07 18:15:45 -04:00
Pietro Gagliardi 69bfbbf19c And set up tagging and GitHub releases. That'll be all for the Azure Pipelines configuration; now we just need the AppVeyor configuration. 2019-04-07 17:47:30 -04:00
Pietro Gagliardi 102693e1be Wrong backup 2019-04-07 17:22:10 -04:00
Pietro Gagliardi 36594e3759 Okay, so it seems I can't insert template names as matrix fields, and I'd rather not have a bunch of tiny jobs for all these different templates. So forget it for now. 2019-04-07 17:20:52 -04:00
Pietro Gagliardi 5492d34bce Do I need to use variables.? 2019-04-07 17:13:59 -04:00
Pietro Gagliardi a0ef6f6ca7 Okay, I guess I need to use the full pathname for templates? 2019-04-07 17:09:45 -04:00
Pietro Gagliardi c0c9a3ae92 Ah 2019-04-07 17:06:23 -04:00
Pietro Gagliardi 9af82be7f7 Oops again 2019-04-07 17:03:50 -04:00
Pietro Gagliardi ac26cf7521 Oops 2019-04-07 17:02:32 -04:00