Commit Graph

886 Commits

Author SHA1 Message Date
Dimitrie O. Paun
1fc91d2d65 Get rid of 'goto's in GetItemMeasures.
Move LISTVIEW_UpdateLargeItemLabelRect close to where it's used.
2002-10-10 02:56:57 +00:00
Dimitrie O. Paun
cf4670cba2 Fix braino in calculation of LVS_LIST origin.
Invalidate the entire window when we are invalidating the list.
2002-10-10 02:56:13 +00:00
Dimitrie O. Paun
74e43dd023 Fixed bug that caused item texts to be empty. 2002-10-08 01:55:32 +00:00
Dimitrie O. Paun
783bab61de Fix nasty bug generated by UINT vs. INT (resulted in bogus
comparisons).
Fix LVIR_SELECTBOUNDS computation, for REPORT mode.
Fix dependency generation in GetItemMeasures.
Fix rectangle computation for REPORT mode (corner case problems).
Better debug messages.
Assorted cleanups.
2002-10-07 22:43:42 +00:00
Dimitrie O. Paun
97ffbfad72 Cleaned up the rectangle handling, and fixed numerous bugs in
rectangle calculations.
2002-10-07 22:42:44 +00:00
Paul Rupe
1446a06ce9 Fix inaccurate listview scrolling with PgUp/Down and Home/End keys. 2002-10-07 21:44:01 +00:00
Dimitrie O. Paun
3ac601d52b Fix silly bug in SetItemPosition (we should set it, not create a new
one).
2002-10-07 18:51:52 +00:00
Dimitrie O. Paun
b9cacc438a Maintain the item position in {,SMALL}ICON mode separataly from the
item, so that we have it even in LVS_OWNERDATA.
2002-10-07 18:50:21 +00:00
Dimitrie O. Paun
6cfd83b985 Cleanup the SetItemPosition interface. 2002-10-07 18:48:47 +00:00
Dimitrie O. Paun
7f77992091 Remove the COUNT_OF macro.
Indentation fixes, and minor cleanups to notify_dispinfoT.
2002-10-07 18:44:55 +00:00
Dimitrie O. Paun
6a6310d099 Fixes bug which rendered virtual listboxes always empty.
Smarter focus rectangle drawing.
Fix focus handling when we add/delete a column.
Fix silly bug in GetSubItemRect.
Elimiante flicker in Report mode.
2002-10-07 18:43:49 +00:00
Dimitrie O. Paun
95f2799537 Cleanup, and clarify the handling of the various rectangles.
Fix handling of large items in ICON mode.
Fix calculation of LVIR_SELECTBOUNDS.
Various cleanups, and simplifications.
2002-10-07 18:42:52 +00:00
Dimitrie O. Paun
914aac36b5 Cleanup of the way we maintain/lookup the item count.
Rename GetItemWidth to CalculateMaxWidth.
Misc trivial changes.
2002-10-07 18:41:00 +00:00
Dimitrie O. Paun
1c7bf6229f Fix focus handling for owner draw listviews. 2002-10-07 18:38:17 +00:00
Dimitrie O. Paun
d308a8d4fe Fix potential bug in RemoveAllItems.
Fix report-mode ONWERDRAW bug (with help from Alexandre Julliard).
Fix multiple selection bug (in report and list mode).
Remove code duplication for removing selections.
2002-10-07 18:36:34 +00:00
Dimitrie O. Paun
769f6a8c0f Reimplement GetSubItemRect, subitem setting optimizations. 2002-10-05 18:05:27 +00:00
Dimitrie O. Paun
76f397e3a1 Fix bug in OWNERDATA selection handling.
Fix critical performance bug in GetSelectedCount.
Fix critical performance bug in SetGroupSelection.
Fix problems for OWNERDRAW report.
Fix hidden/latent bugs in state handling.
Better debug messages.
2002-10-05 18:04:30 +00:00
Dimitrie O. Paun
f645727afe Fix onwer-draw REPORT for broken apps. 2002-10-05 18:02:54 +00:00
Dimitrie O. Paun
d2b526ed33 Streamline the GetItem usage.
Fix fatal bug for ICON mode in LVS_ONWERDATA.
Documentation updates, marking places which need work.
2002-10-05 17:46:30 +00:00
Dimitrie O. Paun
86e92428fb Fix condition so we actually store the state in virtual listviews.
Assorted code cleanups.
2002-10-05 17:44:51 +00:00
Dimitrie O. Paun
3547087c70 - Effective optimization in GetNextItem (speeds up Xnews).
- Misc cleanups.
2002-10-05 17:43:26 +00:00
Dimitrie O. Paun
a656944875 Rewrite the begin/end label edit procedures.
Better support of OWNERDRAW.
Cleaner, simpler code.
2002-10-05 17:42:14 +00:00
Dimitrie O. Paun
530793ff4d Fixed large item focus handling for virtual listviews. Since at most
_one_ item can have the focus at any time, we can maintain one such
rectangle per list, rather than per item. This is both more efficient,
and works for LVS_OWNERDATA listviews as well.
2002-10-04 17:54:22 +00:00
Dimitrie O. Paun
c1b1a296ff Do not blindly trust GetItem to succeed -- check the return value, and
fail gracefully.
2002-10-04 17:51:42 +00:00
Dimitrie O. Paun
45387e3a6c Do not send uninitialized data in notification to application. 2002-10-04 17:49:29 +00:00
Dimitrie O. Paun
dd0c4c16ae - Fix nasty bug in REPORT mode, when calculating the label rect.
- Lots of cleanups, and simplifications.
2002-10-04 00:25:55 +00:00
György 'Nog' Jeney
748425e999 Abort with error if the app uses our api to subclass and then theirs
then ours again.
2002-10-03 23:01:01 +00:00
Dimitrie O. Paun
df6bcfbe57 - Reorganize DrawItem.
- Unify text attribute selection between Draw{Sub,}Item.
- Usual cleanups, and simplifications.
2002-10-02 23:53:04 +00:00
György 'Nog' Jeney
0d3b4906e4 Use the new Subclassing API. 2002-10-02 23:46:20 +00:00
Dimitrie O. Paun
91d41c7fe3 Fancy/optimized EnsureVisible method that eliminates flicker.
Minor cleanups.
2002-10-02 23:45:50 +00:00
György 'Nog' Jeney
f9c011193e Implemented {G|S}etWindowSubClass, DefSubclassProc,
RemoveWindowSubclass.
2002-10-02 20:01:01 +00:00
Dimitrie O. Paun
fc01fcd25a - Fix the subitem drawing code.
- A lot faster drawing in report mode.
- A great deal of cleanup, and simplifications.
2002-10-02 19:59:55 +00:00
Dimitrie O. Paun
feae6c3ea4 - Fix the state icon handling.
- Fix handling of new image lists.
- Small cleanups.
2002-10-02 18:38:11 +00:00
Dimitrie O. Paun
25bf08267a - Rework the {Insert,Delete}Column functions.
- Drawing optimizations when adding/removing columns.
- More cleanups, and simplifications.
2002-10-02 18:32:08 +00:00
Dimitrie O. Paun
e7c82c2711 - Fix LIST mode, broken by previous changes.
- Implement GetItemRect in terms of GetItemMeasurements.
- Improvements in debug traces.
- Many bug fixes, compelete implementation for GetItemMeasurements.
- Lots of code cleanups, simplifications.
- Documentation updates.
2002-10-01 18:06:15 +00:00
Paul Rupe
4ee2e9e989 Prevent crash when listview trace logging is on. 2002-09-30 18:52:33 +00:00
Guy Albertelli
7e1e62de1c - Eliminate extra background fills.
- Eliminate bogus error messages.
2002-09-29 18:34:51 +00:00
Dimitrie O. Paun
a4f580b74b - Cache GWL_STYLE, to avoid fetching in virtually every function.
- Separate GetOrigin from GetAllMeasures as it is item independent,
  and rename function to reflect the change.
- Small cleanups.
2002-09-29 18:02:21 +00:00
Dimitrie O. Paun
81beb955c8 Remove item from the list, if we fail to initialize it at insert
time.
2002-09-27 22:47:00 +00:00
Dimitrie O. Paun
e65eb61419 - Fix crashes in debug mode.
- Fix some focus rectangle problems.
- Better debugging output.
- More cleanups.
2002-09-27 22:02:16 +00:00
Paul Rupe
7f32a8d176 - Initialize memory to prevent crashes when -debugmsg +listview is on.
- Fix various array bounds related errors.
2002-09-25 03:20:01 +00:00
Paul Rupe
2fbe9cf2b7 Resize dynamic pointer array more carefully when adding new entries. 2002-09-25 03:19:24 +00:00
Guy L. Albertelli
e2e5097648 - Localize origin, location, and rectangle computation.
- Support state icons in LVS_ICON style.
- Draw only items that are in the clip box.
- Draw non-selected items first then the selected ones because large
  icons may overlap each other.
- Correct invalidation rectangles for items.
- Correct drawing of large icons.
- Eliminate divide by zero cases in scrolling.
- Invalidate selected items prior to setting window losing focus.
2002-09-24 18:27:21 +00:00
Dimitrie O. Paun
326021bd98 Small cleanups, updated documentation. 2002-09-24 18:26:42 +00:00
Dimitrie O. Paun
70c6cecef9 Remove some more superfluous ZeroMemory calls, small cleanups. 2002-09-23 20:59:42 +00:00
Dimitrie O. Paun
e3e404296e - Fix outputting of a text pointer in debug mode (by Rein Klazes).
- Remove a large bunch of superfluous ZeroMemory calls.
- Fix a couple of bugs.
2002-09-23 20:55:22 +00:00
Patrik Stridvall
1a4db3e72a Cleaned up the code so it would be easier to parse with the new C
parser.
2002-09-23 20:45:57 +00:00
Dimitrie O. Paun
df28ddf309 - Better implementation for GetTopindex/GetOrigin/SetIconSpacing.
- Drawing optimizations, better scrolling.
- A few more bugs squashed without mercy.
- Many cleanups, simplifications, doc updates.
2002-09-18 18:29:28 +00:00
Gyorgy 'Nog' Jeney
c2c03b022d - Unicodeify control.
- use void instead of VOID.
- Pass infoPtr around instead of HWND.
- Implement most of the control.
2002-09-17 18:30:07 +00:00
Dimitrie O. Paun
1edcfe1fa9 - Optimize the heck out of Report drawing.
- A bit of organization, for sanity's sake.
- Many simplifications, cleanups, etc.
2002-09-17 18:29:17 +00:00