Paul Rupe
8b3da5e3ba
Scroll the listview when doing multiple selections.
2002-10-10 18:56:50 +00:00
Dimitrie O. Paun
05b4a09357
Narrow down the items we iterate over in LIST, and REPORT mode.
...
Fix a Client --> List coordinate transformations in FindItem.
Fix bug in HitItem (in LIST and REPORT mode).
Avoid the last bit of drawing in REPORT mode.
2002-10-10 03:13:14 +00:00
Dimitrie O. Paun
9d678ff740
Draw _only_ the items that are invalidated.
...
Fix serious bug when deleting from a range.
Pass in a range to the ranges_{add,del} functions.
Tidy up the RefreshIcon function.
Assorted cleanups.
2002-10-10 03:12:05 +00:00
Dimitrie O. Paun
0295e4fceb
Reimplement FindItem (cleaner, faster, more compliant with MSDN).
2002-10-10 03:10:20 +00:00
Dimitrie O. Paun
1313431b1b
Rewrite HitTest to make it pretty, and very fast.
2002-10-10 03:08:45 +00:00
Dimitrie O. Paun
a80ced02e9
Introduce the notion of item iterators, and use them to clean up code.
2002-10-10 03:07:04 +00:00
Dimitrie O. Paun
00e3435f54
Separate range manipulation functions from selection ranges.
2002-10-10 03:05:28 +00:00
Dimitrie O. Paun
764607d931
Fix large item label calculation when not focused.
...
Fancy focus rectangle handling.
2002-10-10 03:04:34 +00:00
Dimitrie O. Paun
b2056c22b5
Fix focus handling when deleting items, or changing modes.
...
Better label rect calculation in ICON mode.
2002-10-10 03:03:39 +00:00
Dimitrie O. Paun
c95b2a0202
Fix large item handling focus in ICON mode.
2002-10-10 03:02:30 +00:00
Dimitrie O. Paun
bbf878ded6
No need to go through the heavy duty rect computation when in OWNERDRAW.
2002-10-10 03:01:10 +00:00
Dimitrie O. Paun
a625dd394d
Factor out owner draw code, so that it works for all modes.
...
Documentation updates.
2002-10-10 02:59:34 +00:00
Dimitrie O. Paun
b8d5715bc1
Factor out the computation of item position, so it can be used
...
independently of the rectangles.
2002-10-10 02:58:47 +00:00
Dimitrie O. Paun
f29d0ce05b
Unify LISTVIEW_UpdateLargeItemLabelRect, and GetItemMeasures.
...
Optimize GetItemMeasures to the max.
Centralize the DrawText's DT_* flags.
2002-10-10 02:57:50 +00:00
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