Pietro Gagliardi
0f4602ee0f
Moved the allocation functions to sharedbits/. Not fully working yet...
2019-05-30 23:11:08 -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
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
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
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
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
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
9f0bb3aacb
Fixed uiprivArray/testingprivArray bugs that led to the crash. Now to fix up the rest of the code.
2019-05-20 11:12:16 -04:00
Pietro Gagliardi
9bec2005a1
Added smprintf() and outbuf to the testingpriv.h functions, introducing a simpler outbuf API along the way. Changing the test suite to actually use this comes next.
2019-05-19 23:15:35 -04:00
Pietro Gagliardi
40508a457c
Changed testingSet to use testingprivArray.
2019-05-19 18:06:58 -04:00
Pietro Gagliardi
8e5a12b869
And changed unusedIDs to use uiprivArray. Now we can transplant this into testing.
2019-05-19 15:46:09 -04:00
Pietro Gagliardi
02b61c0156
Changed uiEvent.handlers into a uiprivArray; also fixed the buggy implementations of InsertAt and Delete.
2019-05-19 14:37:32 -04:00
Pietro Gagliardi
745440b1e7
Wrote array manipulation functions. Now to convert events.c to use them.
2019-05-19 12:52:06 -04:00
Pietro Gagliardi
a81ea6e3fb
Fixed events not being deleted properly.
2019-05-19 01:00:25 -04:00
Pietro Gagliardi
66247ce73d
Fixed building events.c.
2019-05-18 10:00:07 -04:00
Pietro Gagliardi
25afc9b13f
And finished writing events.c. Now to write the tests.
2019-05-17 22:40:29 -04:00
Pietro Gagliardi
56156f549b
Bah C99
2019-05-16 23:34:33 -04:00
Pietro Gagliardi
96c346c2dd
Added uiprivAlloc() and friends and implemented uiNewEvent().
2019-05-16 23:02:03 -04:00
Pietro Gagliardi
bd84da7179
More implementation of uiEvent. Now we'll need to deal with memory allocation.
2019-05-16 12:27:04 -04:00
Pietro Gagliardi
caa926feeb
Started implementing and deduplicating the error handling in events.c.
2019-05-15 23:11:21 -04:00
Pietro Gagliardi
55a7e3e56e
Started implementing events.
2019-05-15 22:40:06 -04:00
Pietro Gagliardi
101df7a469
Added uiEvent-specific programmer errors. Next up: actually implementing uiEvent.
2019-05-14 11:03:03 -04:00
Pietro Gagliardi
7c128e7bcd
Added internal errors and refined the error handling somewhat.
2019-05-13 21:30:18 -04:00
Pietro Gagliardi
45f69cf058
Renamed programmererror.c to errors.c so we can add internal errors (which used to be called implementation bugs).
2019-05-13 10:46:42 -04:00
Pietro Gagliardi
7022e6f268
More programmer error refinement.
2019-05-13 06:37:19 -04:00
Pietro Gagliardi
b3049b0a1e
Started reintegrating what used to be called user bugs; they're now called programmer errors. We'll create a much more systematic approach to them. Implemented on macOS.
2019-05-12 22:17:24 -04:00
Pietro Gagliardi
f97383f66c
Rearranged things so that uiInit() itself is in common/init.c and the OS-specific initialization code is its own standalone internal function. This'll make testing a bit easier, especially after the next few commits, and will allow me to test pre-initialization and cross-thread stuff a bit more easily.
2019-05-09 12:07:28 -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
469484415d
Implemented uiInit() on Unix.
2019-04-21 12:24:19 -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
992d8694a9
Let's start the remodel. Move almost everything out of the way.
2019-04-08 20:36:21 -04:00
Pietro Gagliardi
f6ef61cdee
And settled common/CMakeLists.txt (it also had nothing that needed to be moved).
2019-03-27 01:05:57 -04:00
Pietro Gagliardi
1b9250e41e
Removed include_directories hackery, as suggested by various people in freenode #mesonbuild.
2019-03-25 20:07:22 -04:00
Pietro Gagliardi
1deacb55aa
And massaged things into a buildable state. Woo. NOW things are starting to get annoying, but at least it's not so much *voodoo* anymore?
2019-03-23 16:18:13 -04:00
Pietro Gagliardi
253ce9a3cc
Decided to just use add_project_(link_)arguments() for now, and set up the macOS build for testing.
2019-03-23 15:42:42 -04:00
Pietro Gagliardi
419c584523
Merge pull request #379 from mischnic/attrstr-delete
...
Fix uiAttributedStringDelete
2018-08-09 05:16:52 -04:00
Pietro Gagliardi
f3882d6124
Cleaned up color access across platforms.
2018-06-24 14:22:05 -04:00
Pietro Gagliardi
acb40964f3
Deduplicated editable logic across platforms.
2018-06-24 11:41:19 -04:00
Pietro Gagliardi
4dbf1994a6
Deduplicated the default text column parameters across platforms.
2018-06-24 00:45:54 -04:00
Pietro Gagliardi
74ec21f4c7
Turned the direct method calls on uiTableModel into functions to make the call sites look a bit cleaner. More stuff will go into common/tablemodel.c...
2018-06-23 23:35:42 -04:00
Pietro Gagliardi
9a79eed2ac
Final cleanup, first part: renamed uiTableData to uiTableValue.
2018-06-23 20:19:30 -04:00
Pietro Gagliardi
2b428d50f6
And fixed build errors. Now I just need to rewrite the tester and try this out...
2018-06-03 23:06:44 -04:00
Pietro Gagliardi
54ca41afb6
Moved common/table.c out of the way for now; it's not relevant with the proposed colum changes and definite data changes.
2018-06-03 17:57:17 -04:00
Pietro Gagliardi
43b1a46669
Wrote the common table data functions.
2018-06-03 17:28:54 -04:00