Commit Graph

271 Commits

Author SHA1 Message Date
Pietro Gagliardi 2bc7926aba Don't maintain the metaphor. The real listview doesn't, so we won't either. (Remember that we want to be as behavior-compatible with the real listview as possible.) 2015-01-06 03:11:46 -05:00
Pietro Gagliardi bf4b590b55 More TODOs. 2015-01-04 02:58:13 -05:00
Pietro Gagliardi 9a27b8a90e Fixed get_accName(). 2015-01-04 01:26:48 -05:00
Pietro Gagliardi 085fc00f81 Added the standard accessible object, added it to a few navigation-related places to make Inspect.exe's life easier, and added some more get_accName() debug stuff. 2015-01-04 01:13:35 -05:00
Pietro Gagliardi 3a9842e86c Removed refcount/WM_GETOBJECT debug spew. More TODOs. 2015-01-04 00:58:28 -05:00
Pietro Gagliardi 7453385923 Forgot to call AddRef() in QueryInterface(). Thanks to Jonathan Potter. 2015-01-04 00:54:38 -05:00
Pietro Gagliardi 7487dbb27c Even more accessibility debugging. 2014-12-25 15:56:06 -05:00
Pietro Gagliardi 3e2275af43 More accessibility debugging work. 2014-12-25 14:32:49 -05:00
Pietro Gagliardi 4d4f889f6f More TODOs. 2014-12-25 09:55:07 -05:00
Pietro Gagliardi 9551bbe4f0 Added a testing implementation of IAccessible::get_accName(). 2014-12-25 09:53:45 -05:00
Pietro Gagliardi 45a2b6b731 Fixed other accessibility errors (partially thanks to Raymond Chen) 2014-12-24 21:53:30 -05:00
Pietro Gagliardi f6f2fba34e More accessibility.h changes. 2014-12-24 21:27:39 -05:00
Pietro Gagliardi f00ba1deb9 More accessibility stubs. 2014-12-24 20:55:13 -05:00
Pietro Gagliardi 6720fa7bc2 Started actually writing the accessibility code. Does not work yet. 2014-12-24 20:15:45 -05:00
Pietro Gagliardi 9aff3fd792 More notes on accessibility. 2014-12-24 14:59:15 -05:00
Pietro Gagliardi 9e07f271aa Draw whole selected row properly this time (full background on row, focus rect on cell). More TODOs. 2014-12-23 14:43:33 -05:00
Pietro Gagliardi 3bd6ccb02b More TODOs. 2014-12-23 14:23:28 -05:00
Pietro Gagliardi 663e9e99a7 Optimized Table drawing by only drawing visible rows. 2014-12-23 14:21:27 -05:00
Pietro Gagliardi c016143d80 Changed the memory allocator used in util.h so that code will work on real Windowss because LocalAlloc() doesn't want to. 2014-12-22 21:51:01 -05:00
Pietro Gagliardi 733254586b Converted the checkbox code to actually use drawCheckbox(). 2014-12-22 21:28:17 -05:00
Pietro Gagliardi d28b05c5b7 Fixed up the rest of the checkbox event handlers. Now to convert to using the drawing functions. 2014-12-22 21:16:42 -05:00
Pietro Gagliardi 7ba7222976 Mostly done with the implementation of checkboxes! 2014-12-22 20:15:10 -05:00
Pietro Gagliardi cc165b48ff More checkbox mouse movement code. 2014-12-22 00:42:24 -05:00
Pietro Gagliardi 2cf1168830 Started writing the code for handling mouse moves and checkbox hovers. 2014-12-21 18:45:37 -05:00
Pietro Gagliardi 9e66dc006e Added mouse tracking code. Not used yet. 2014-12-21 10:38:52 -05:00
Pietro Gagliardi 0c21608853 Made toCheckboxRect() take the xoff parameter too. 2014-12-21 02:09:09 -05:00
Pietro Gagliardi 89fb2e8c6c toItemContentRect() -> toCellContentRect() (consistency) 2014-12-20 21:10:44 -05:00
Pietro Gagliardi 3cb96de162 Wrote up toItemContentRect() and used that in drawCell(). More TODOs. 2014-12-20 21:09:01 -05:00
Pietro Gagliardi 7713c91387 Started writing the checkbox drawing code. Just a red box again for now. 2014-12-20 20:12:54 -05:00
Pietro Gagliardi 34d3771f77 Added code for distinguishing column types to drawCell(). 2014-12-19 20:48:02 -05:00
Pietro Gagliardi ee9b958171 Removed unnecessary HTHEME parameter in getFrameControlCheckboxSize(). 2014-12-19 00:49:27 -05:00
Pietro Gagliardi 866793995d Still more TODOs. 2014-12-18 19:49:42 -05:00
Pietro Gagliardi f2dc77e9a1 More TODOs. 2014-12-18 19:48:48 -05:00
Pietro Gagliardi 422b2f183a Added images and checkboxes to rowHeight(). Split out the text part into textHeight(); we'll be needing it later (when implementing vertical centering). 2014-12-18 19:46:56 -05:00
Pietro Gagliardi 22d82f6bd0 More TODOs. 2014-12-18 19:28:12 -05:00
Pietro Gagliardi 28b20d1039 Moved around checkboxes.h pendig plans for that code. 2014-12-18 19:27:03 -05:00
Pietro Gagliardi d7cf4fa7c5 New checkbox plan: because DrawThemeBackground() /might/ do AlphaBlend(), we'll just draw checkboxes on the fly. 2014-12-18 19:26:13 -05:00
Pietro Gagliardi 07c599ad1b More critical TODOs. 2014-12-18 13:05:20 -05:00
Pietro Gagliardi f22812ff0e Brought back the code to build checkbox images. 2014-12-17 21:56:37 -05:00
Pietro Gagliardi b6340bd349 Fixed Page Down behavior. More TODOs. 2014-12-17 14:58:39 -05:00
Pietro Gagliardi 041c99df07 Fixed deselection redraw. 2014-12-16 20:19:06 -05:00
Pietro Gagliardi 060b062045 More TODOs. 2014-12-16 18:48:14 -05:00
Pietro Gagliardi e31fd24a99 Actually return no selection in clientCoordToRowColumn() correctly. Part 2 of previous commit. 2014-12-16 18:46:19 -05:00
Pietro Gagliardi b9c46d4cdf Don't try to scroll if we're deselecting. First part of mouse deselect fix. 2014-12-16 18:40:58 -05:00
Pietro Gagliardi 54a359d260 Changed abort() in deftablePanic() to DebugBreak() for convenience (especially in wine where abort() is NOT caught by winedbg --gdb and for whatever reason I can't set a breakpoint with the same). 2014-12-16 15:07:55 -05:00
Pietro Gagliardi a0a6c2b112 Fixed some punctuation errors. 2014-12-16 11:50:53 -05:00
Pietro Gagliardi 03fce2feab Added debugging checks for doselect() to spot illegal selections. Rewrote some expressions for consistency. 2014-12-16 11:47:52 -05:00
Pietro Gagliardi 152f446ce8 Revert "Attempted to fix broken coordinate calculations for out-of-cell clicks..."
That didn't do it; will need to use a debugger.

This reverts commit 25e5100360.
2014-12-16 11:38:04 -05:00
Pietro Gagliardi 25e5100360 Attempted to fix broken coordinate calculations for out-of-cell clicks... 2014-12-16 11:34:26 -05:00
Pietro Gagliardi 3f42acb475 Implemented keyboard selection. Now I need to fix /mouse/ selections that select nothing, because apparently /that/ was broken... 2014-12-16 11:28:08 -05:00
Pietro Gagliardi 5db1b0f1c4 Added some links. 2014-12-16 03:10:52 -05:00
Pietro Gagliardi 175f94fe3f Punctuation fix. 2014-12-16 02:58:31 -05:00
Pietro Gagliardi d082d0ebab Finished keyboard selection notes. Will implement later. 2014-12-16 02:57:31 -05:00
Pietro Gagliardi 5389e3c2d6 More keyboard selection notes. 2014-12-15 23:48:09 -05:00
Pietro Gagliardi e08988a887 More keyboard selection notes. 2014-12-15 20:03:46 -05:00
Pietro Gagliardi ec725e3f1b Wrote up some notes on how to do keyboard selection. 2014-12-15 15:06:07 -05:00
Pietro Gagliardi f458700579 Fixed selection scrolling. 2014-12-14 18:06:08 -05:00
Pietro Gagliardi e246a9bd5f More TODOs. 2014-12-14 17:29:32 -05:00
Pietro Gagliardi 8fba540a1c Mostly fixed up the horizontal scrolling implementation in doselect(). 2014-12-14 17:24:30 -05:00
Pietro Gagliardi c58920dadd Implemented horizontal scroll on the left in doselect(). Horizontal scroll on the right is mostly written, but nonworking. 2014-12-14 17:10:08 -05:00
Pietro Gagliardi 33f7ac1142 Unified all column width accesses to a columnWidth() function. 2014-12-14 16:23:32 -05:00
Pietro Gagliardi f56ae488f0 Implemented vertical scrolling on selection changes. 2014-12-14 11:09:59 -05:00
Pietro Gagliardi cb7404cf8b Optimized the redrawing of selected rows in doselect(). 2014-12-14 10:22:15 -05:00
Pietro Gagliardi ad12b8b1af Implemented rowColumnToClientRect() (was rowColumnToClientCoord() but decided that the full RECT would be more useful); not sure if I'm going to actually use it now though since full-on redrawing the old and new rows would probably be more correct in doselect()... 2014-12-14 02:52:31 -05:00
Pietro Gagliardi fa89a497ed More TODOs. 2014-12-13 16:23:48 -05:00
Pietro Gagliardi cecfa82994 Implemented mouse click selection. 2014-12-13 13:56:31 -05:00
Pietro Gagliardi 516173916e Implemented clientCoordToRowColumn(). 2014-12-13 12:17:18 -05:00
Pietro Gagliardi e966a9b725 Resolved some TODOs. 2014-12-13 11:53:03 -05:00
Pietro Gagliardi df4fbb12ed Fixed up some TODOs 2014-12-13 11:51:12 -05:00
Pietro Gagliardi 7b9b41d6cc Started to lay down the groundwork for handling selection. 2014-12-13 11:49:36 -05:00
Pietro Gagliardi 980868ef0d Cleared some TODOs. 2014-12-12 22:48:19 -05:00
Pietro Gagliardi 5080e84398 Added wheel scrolling. 2014-12-12 22:17:20 -05:00
Pietro Gagliardi d5b4d06cb4 More reminders/TODOs. 2014-12-12 16:45:14 -05:00
Pietro Gagliardi d1bd082b2e ok fixed that bug 2014-12-12 16:43:17 -05:00
Pietro Gagliardi 7f7ea0044e Added vscroll to the drawing code. Now to figure out why it stops early... 2014-12-12 16:37:48 -05:00
Pietro Gagliardi 2da55f35a6 Added vertical scroll. The drawing code will now need updating... 2014-12-12 15:20:34 -05:00
Pietro Gagliardi 2013a3a753 Isolated the scrolling code to avoid code duplication in something so sensitive. 2014-12-12 14:53:58 -05:00
Pietro Gagliardi a565469260 Got rid of a bogus assignment to t->hpagesize. 2014-12-12 14:16:55 -05:00
Pietro Gagliardi 35519ab61c More TODOs. 2014-12-12 10:57:37 -05:00
Pietro Gagliardi ddb4533aff Defined tableFree(NULL). 2014-12-12 10:55:57 -05:00
Pietro Gagliardi 9e11c36f63 Started tying all the threads together in the drawing loop for real. 2014-12-12 10:47:23 -05:00
Pietro Gagliardi 6173857ee7 Fixed twitchy text. 2014-12-11 20:41:35 -05:00
Pietro Gagliardi 6690876c07 More TODOs. 2014-12-11 20:37:38 -05:00
Pietro Gagliardi 38b7126449 Fixed up the whole horizontal scroll glitching mess. Now to tackle the twitchy text... 2014-12-11 20:35:46 -05:00
Pietro Gagliardi b73b5b2ed0 Removed a call to repositionHeader() in the resize handler; we already do this in hscrollto(), which is called by updateTableWidth(). 2014-12-11 20:27:29 -05:00
Pietro Gagliardi 6286a3319f More TODOs... 2014-12-11 20:10:11 -05:00
Pietro Gagliardi ccb68b6fc8 Started the work for reimplementing rows. 2014-12-11 18:58:37 -05:00
Pietro Gagliardi 8ea320220a Mostly finisshed up horizontal scrolling by hooking it up to everything else. The sample text draw doesn't seem to be working correctly, but I'm not sure /when/ it breaks right now... 2014-12-11 16:43:56 -05:00
Pietro Gagliardi 9edf273ba7 Removed error check in ScrollWindowEx() call for now pending a wine bug (https://bugs.winehq.org/show_bug.cgi?id=37706). 2014-12-11 16:29:43 -05:00
Pietro Gagliardi 3788cb730c Added a cast to a tableRealloc() call. 2014-12-10 20:43:28 -05:00
Pietro Gagliardi a7cbacb522 More TODOs. 2014-12-10 18:32:28 -05:00
Pietro Gagliardi 62a1db4756 Wrote up the hscroll code. Not sure why it doesn't work yet. Not yet applied to headers or drawing. 2014-12-10 15:37:52 -05:00
Pietro Gagliardi 4e21ee8b11 Added headerHeight to the new Table. 2014-12-10 14:07:14 -05:00
Pietro Gagliardi 395521b832 Moved Table width calculation out of recomputeHScroll() and into updateTableWidth(); also stored width in the Table itself. 2014-12-10 10:07:08 -05:00
Pietro Gagliardi a8fed6c28d Changed from recomputeHScroll() to updateTableWidth() as we will store the table width separately and just use one call to SetScrollInfo() for everything to avoid weirdness. 2014-12-10 10:01:16 -05:00
Pietro Gagliardi cb199cca77 Started readding hscroll code; just recomputeHScroll() for now. 2014-12-09 20:47:03 -05:00
Pietro Gagliardi dd37255fa1 Reimplemented tableAddColumn for real. 2014-12-09 20:32:49 -05:00
Pietro Gagliardi d6ff23dacb More TODOs. 2014-12-09 19:31:05 -05:00
Pietro Gagliardi bad29faf1a Added a list of scrollbar series articles for convenience. 2014-12-09 15:57:09 -05:00
Pietro Gagliardi 0e6c48a45c More TODOs. 2014-12-08 21:43:07 -05:00