Commit Graph

4027 Commits

Author SHA1 Message Date
Pietro Gagliardi e0ca00e55b Resolved confusion about the terminology of strides in uiImageAppend(). Also prevents overallocation on some platforms. Thanks to @mischnic and @msink for spotting this. Update #402. 2018-08-05 18:39:29 -04:00
Pietro Gagliardi e7305349f3 Documented uiImage functions. 2018-08-05 17:52:15 -04:00
Pietro Gagliardi 4eaf01f840 Fix double-free spotted by @mischnic in #402. 2018-07-29 13:25:53 -04:00
Pietro Gagliardi b60953ed1c More TODOs. 2018-07-28 13:57:20 -04:00
Pietro Gagliardi 3c44d332da More notes. 2018-07-22 21:41:03 -04:00
Pietro Gagliardi 6812cab625 Implemented uiControlDestroy() for uiTable on GTK+. 2018-07-08 21:50:16 -04:00
Pietro Gagliardi a37fdadbd7 Implemented uiControlDestroy() for uiTable on OS X. 2018-07-08 21:22:55 -04:00
Pietro Gagliardi 095e63d522 Fixed memory leaks in the tester and a symbol name flub in OS X's image.m. 2018-07-08 21:20:42 -04:00
Pietro Gagliardi 1700c0ccea Reworded a TODO. 2018-07-08 21:13:19 -04:00
Pietro Gagliardi 5e2b8cb6ae Removed nowintable.diff; we don't need it anymore. 2018-07-08 21:04:23 -04:00
Pietro Gagliardi ce0168e1a5 I give up 2018-07-01 17:35:34 -04:00
Pietro Gagliardi 37bd4fc5a1 Added a test program to demonstrate the GTK+ progress bar cell renderer timer issues. 2018-06-25 21:25:23 -04:00
Pietro Gagliardi bd197684aa Added internationalization notes in the meantime. 2018-06-25 09:11:07 -04:00
Pietro Gagliardi 5d9928028f Wrote the initial version of the indeterminate progressbar in tables code on GTK+. VirtualBox is giving me issues when any indeterminate progressbar (real or table-based) is up; I wonder what's going on. 2018-06-24 18:23:25 -04:00
Pietro Gagliardi bd685f24f9 Removed a stale TODO; added more TODOs. 2018-06-24 14:48:09 -04:00
Pietro Gagliardi 4ed6e3ec8a Minor TODO resolution. 2018-06-24 14:46:24 -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 fb67c429d8 Made background color columns only settable at creation time; added a uiTableParams struct for the purpose. This should end edits to uitable.h for now (until we're ready to document it). Now to just clean up all the implementations. 2018-06-24 10:28:41 -04:00
Pietro Gagliardi 72c7c05f04 Fixed up AddColumn parameter and private fields names; made them consistent. 2018-06-24 09:52:01 -04:00
Pietro Gagliardi 4dbf1994a6 Deduplicated the default text column parameters across platforms. 2018-06-24 00:45:54 -04:00
Pietro Gagliardi 9b340ed40c Fixed checkboxes on Mac OS X. 2018-06-23 23:48:47 -04:00
Pietro Gagliardi 8f4598f641 Finally removed the extra uiImage declarations that were there for long-irrelevant compiler errors. 2018-06-23 23:45:58 -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 ac27e24add And even more still. I'm just gonna clean everything up for a merge at this point. 2018-06-23 11:27:02 -04:00
Pietro Gagliardi 888bb450b3 More TODOs. 2018-06-23 11:26:14 -04:00
Pietro Gagliardi 7d17df7121 HRESULT-chained the drawing functions together and fixed bugs in the focus drawing code. 2018-06-22 21:50:04 -04:00
Pietro Gagliardi d0f7cf81c5 And rewired the focus rect. 2018-06-21 23:47:24 -04:00
Pietro Gagliardi c2000ea54d Gave up with CDDS_SUBITEM; it just refuses to play nice with focus rects. Will try drawing focus rects again next commit. 2018-06-21 21:56:24 -04:00
Pietro Gagliardi 4dc7f4c2de Wrote the initial code to draw the focus rect. 2018-06-20 21:11:15 -04:00
Pietro Gagliardi 5854b0f638 Loose ends for editing: drew the proper background for text and committing text works now. 2018-06-20 19:31:21 -04:00
Pietro Gagliardi ccb7005dc6 Properly clipped the edit within the listview. 2018-06-20 18:56:03 -04:00
Pietro Gagliardi f180423096 Integrated tablemetrics.cpp into tableediting.cpp and added resize-on-type. 2018-06-20 18:47:55 -04:00
Pietro Gagliardi 5ae45a1fcb Integrated tablemetrics.cpp with tabledraw.cpp. 2018-06-20 18:03:56 -04:00
Pietro Gagliardi ec07b12295 Split table cell metrics into its own file. We still need to actually integrate this with everything. 2018-06-20 11:05:34 -04:00
Pietro Gagliardi df59eee783 Renamed tableevents.cpp to the more accurate tableediting.cpp. 2018-06-20 10:45:14 -04:00
Pietro Gagliardi bff9d0e311 More work on table edit controls, including: subclassing the edit control to actually handle escape and enter, setting focus on the eidt control, selecting all text in the edit control, and splitting the sizing stuff into a separate function. We'll have to split the rect-gathering code into a separate file before we can add live resize to the edit control... which will probably be useful because then I could just write a function to enumerate focus rects later. 2018-06-20 10:39:27 -04:00
Pietro Gagliardi 25a443f4f2 Handled the finished-editing cases I can right now. It is... mostly good???????????? IListView is very tantalizing now... 2018-06-19 23:07:24 -04:00
Pietro Gagliardi ff4b424ab0 Added WS_CLIPCHILDREN to uiTable to prevent drawing over children. 2018-06-19 07:51:34 -04:00
Pietro Gagliardi 4c107997d2 Round two: fully custom edit sizing code. We're getting somewhere now. Now we'll need to actually manage this thing =P 2018-06-18 23:51:58 -04:00
Pietro Gagliardi 1edb406045 Let's start over with this edit control sizing stuff. 2018-06-18 09:39:14 -04:00
Pietro Gagliardi d81b365396 More edit control stuff. We've almost got it, but it's too wide and the text is still aligned wrong. 2018-06-17 21:22:57 -04:00
Pietro Gagliardi 51f98d1f7b Started implementing the edit control for our table view. 2018-06-17 17:56:45 -04:00
Pietro Gagliardi 799c613a6f Added code for detecting that text is to be edited. Now for actually implementing editing text. 2018-06-17 15:06:45 -04:00
Pietro Gagliardi 6d0b276d6d Started handling table events. This covers checkboxes and buttons. 2018-06-17 11:48:39 -04:00
Pietro Gagliardi 2fb3676a8f More TODOs. 2018-06-17 10:50:24 -04:00
Pietro Gagliardi db2f3352c4 Added dummy code to evaluate LVM_SUBITEMHITTEST. The code will remain, but will be #if'd out. 2018-06-17 09:29:51 -04:00
Pietro Gagliardi 7bc121b1ec And drew buttons. Woo! Now for the harder part: editing. 2018-06-17 09:01:24 -04:00
Pietro Gagliardi 9fba903c4a Started button columns. LVN_GETDISPINFO handled. Also filled in the rest of the new column functions. 2018-06-16 22:12:54 -04:00