Commit Graph

4158 Commits

Author SHA1 Message Date
Pietro Gagliardi a8cd121003 Cleaned up resources on Windows. Now to do so for tester. 2019-06-01 10:24:32 -04:00
Pietro Gagliardi ed378d4e0b Cleaned up some easy-to-fix TODOs on Windows, including a LONGTERM that will not be relevant to libui in its current architecture (that'll be handled with a custom build step that converts resources to source code). Next: making resources.rc truly shared-only to reduce the noise further. 2019-06-01 10:18:47 -04:00
Pietro Gagliardi 48cd6e1dd8 Cleaned #include directives so C standard library headers are sorted and so each source file only includes one header file. This makes things clenaer, and alos allows us to more properly strip unneeded headers later. 2019-06-01 09:27:17 -04:00
Pietro Gagliardi a93f5c8f53 Split the strsafe strncpy() into its own header file and simplified its usage a bit. 2019-05-31 22:34:34 -04:00
Pietro Gagliardi 7d0f8403ab Fixed build errors on other platforms. This is a headache and a half :D I should split the files into strsafe_vsnprintf and strsafe_strncpy, but I want to share this file as is in one piece for now. 2019-05-31 22:07:51 -04:00
Pietro Gagliardi a17b7c8c14 Fixed build errors and simplified error handling in test/noinitwrongthread.c. Now to test this at runtime on all platforms. 2019-05-31 11:17:11 -04:00
Pietro Gagliardi 644e188e05 And rewrote strncpy(), since strncpy_s() also exists. Now to test the build. 2019-05-31 10:38:47 -04:00
Pietro Gagliardi 664cf26cdc Changed strcpy() to strncpy(). Let's build on Windows! 2019-05-31 02:58:57 -04:00
Pietro Gagliardi 1814745646 Wrote a wrapper for vsnprintf() that calls _vcsprintf()/vsnprintf_s() on Windows, because lol. I'm going to try switching from strcpy() to strncpy() for the other cases; let's see if this works. 2019-05-31 02:52:51 -04:00
Pietro Gagliardi 3ddaf3052e Fixed build issues on other platforms. That dumb msvcrt macro is next. 2019-05-31 00:24:12 -04:00
Pietro Gagliardi b5a109c063 And wrote array_impl.h. No more code duplication in this respect! Now for some more loose ends before we move on to controls. 2019-05-31 00:12:08 -04:00
Pietro Gagliardi dca2e5f038 Wrote array_header.h. Now for array_impl.h. 2019-05-30 23:47:07 -04:00
Pietro Gagliardi 2dd68fc47f Formalized the macro magic that actually works into sharedbits/{start,end}.h. Now to do arrays! 2019-05-30 23:23:02 -04:00
Pietro Gagliardi 6493faf529 Ah, figured it out. Now to separate these out into a separate header file. 2019-05-30 23:17:50 -04:00
Pietro Gagliardi 3c6cc53a0a Okay something is definitely not right. 2019-05-30 23:14:30 -04:00
Pietro Gagliardi 0f4602ee0f Moved the allocation functions to sharedbits/. Not fully working yet... 2019-05-30 23:11:08 -04:00
Pietro Gagliardi dc8620f9a8 Okay, no more ints that need to be changed. Started splitting out the common allocation and array code into a separate sharedbits/ folder. 2019-05-30 22:46:22 -04:00
Pietro Gagliardi c090dacc4a Switched the test code to use bool wherever appropriate. Will try to do this for the rest of libui, and then I'll deduplicate the allocation and array code. 2019-05-30 22:09:45 -04:00
Pietro Gagliardi b9d445554a Started changing the tests to use bool instead of int. 2019-05-30 10:33:39 -04:00
Pietro Gagliardi 9daef443b2 Moved uiQueueMain() to common/init.c to avoid having multiple initialized variables; the per-OS versions are now uiprivSysQueueMain(). Also more TODOs. 2019-05-30 01:39:43 -04:00
Pietro Gagliardi b0e890ca1d Missed a spot again 2019-05-30 01:18:20 -04:00
Pietro Gagliardi ab5b3076ed Removed uiInitError length checking and just truncated too-long messages with an ellipsis. Also removed the non-printf version of uiprivReportInitError. 2019-05-30 01:16:33 -04:00
Pietro Gagliardi 3049adbca0 Missed a spot 2019-05-29 21:12:49 -04:00
Pietro Gagliardi 19ad0d33a3 Changed uiInit() to return bool instead of int, now that we've settled on using bool. 2019-05-29 21:10:44 -04:00
Pietro Gagliardi edfd5e9157 Place a placeholder controls.md in doc/. Actually, let's do a bit more cleanup first. 2019-05-29 21:01:04 -04:00
Pietro Gagliardi 84a4fd8915 And wrote it on Windows. Okay, now we can FINALLY start working on controls!!!!! 2019-05-29 01:02:15 -04:00
Pietro Gagliardi 4815629eef Implemented the thread checks on GTK+. 2019-05-29 00:54:22 -04:00
Pietro Gagliardi fd770430a9 And properly added init and thread checks to the uiEvent functions. Now we just need to do the same on the other platforms and THEN FINALLY we can move on to controls. 2019-05-29 00:41:36 -04:00
Pietro Gagliardi a632d10701 Indented diff bodies (and all other multi-line test log prints) properly. 2019-05-29 00:35:51 -04:00
Pietro Gagliardi cceae4845e Fixed build issues and added more cases to allcalls.h. I'm going to fix the lack of idnent on the diff()s before continuing. 2019-05-28 22:53:40 -04:00
Pietro Gagliardi d0dd91d8d8 Started moving GTK+ dependency requirements away from being based on what Ubuntu packaged toward what it actually requires. This change just lists all of them in Compatibility.md for now. 2019-05-28 22:29:59 -04:00
Pietro Gagliardi b5927353e0 Started work to test that functions dislike being called before uiInit() or on a different thread; better to do it now than later. 2019-05-28 21:54:13 -04:00
Pietro Gagliardi b3f2214f3e okay what the fuck 2019-05-27 11:36:59 -04:00
Pietro Gagliardi 79ecadb909 Fuck the industry domination of C++ and its standard not forcing compliance in both C and C++ modes, if this is the case here. If not, then fuck MSVC. 2019-05-27 11:18:52 -04:00
Pietro Gagliardi a6c1e1ed17 Fixed build errors. Now to fix runtime errors. 2019-05-27 11:02:23 -04:00
Pietro Gagliardi 2e82d4aad4 Wrote uiprivReportError() on Windows. Now to fix the... lots of compiler errors :| 2019-05-27 10:45:55 -04:00
Pietro Gagliardi 3721bf0c8e Oops, we have to make the tests work on other platforms too. Done for GTK+. 2019-05-26 23:25:08 -04:00
Pietro Gagliardi afb87bda23 And filled in the remainder of the uiEvent error tests. Also more TODOs. We can now FINALLY move on to uiControl :D 2019-05-26 21:59:59 -04:00
Pietro Gagliardi 7cb4f010d4 Cleaned up programmer error testing code. 2019-05-26 20:19:02 -04:00
Pietro Gagliardi 7808b3ee94 Added the hook for checking programmer error responses, and made sure it works. Now to simplify it. 2019-05-26 15:41:22 -04:00
Pietro Gagliardi 9060ef3852 More TODOs. 2019-05-26 15:08:51 -04:00
Pietro Gagliardi e4f5b4f548 And filled in the missing gaps in the non-error cases of the uiEvent tests. Almost ready to move on! 2019-05-26 15:06:28 -04:00
Pietro Gagliardi 07c613b2e1 Stripped the path from test log filenames. 2019-05-26 13:31:55 -04:00
Pietro Gagliardi dbbf84becc Filled in the rest of TestEventBlocksHonored. 2019-05-26 13:26:58 -04:00
Pietro Gagliardi b8b1123027 And rewrote TestEventBlocksHonored. Now we can expand it. 2019-05-25 22:30:08 -04:00
Pietro Gagliardi f77f8d49d3 Restructured TestEventSendersHonored to use the new deinterleaved handler; this also makes it use baseParams and creates events per impl rather than globally. 2019-05-25 22:21:16 -04:00
Pietro Gagliardi a8ab5be01a Started deinterlacing the handler got and want parameters into struct handler. 2019-05-25 22:07:56 -04:00
Pietro Gagliardi 3cd08a5b2d Simplified the event structures. Next step is to deduplicate handlers. 2019-05-25 21:19:22 -04:00
Pietro Gagliardi c41ac17dd4 Rewrote test/events.c to localize the actual uiEventFire() testing code. 2019-05-25 21:11:03 -04:00
Pietro Gagliardi d6cde02825 More event tests. Okay, I definitely need a better way to handle these. 2019-05-23 21:42:52 -04:00