Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
216ca479
Commit
216ca479
authored
Jul 02, 2009
by
Nikolay Sivov
Committed by
Alexandre Julliard
Jul 02, 2009
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
comctl32/listview: Fix select rectangle calculation for empty text items.
parent
05c4d0a8
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
4 deletions
+12
-4
listview.c
dlls/comctl32/listview.c
+10
-2
listview.c
dlls/comctl32/tests/listview.c
+2
-2
No files found.
dlls/comctl32/listview.c
View file @
216ca479
...
...
@@ -360,6 +360,8 @@ typedef struct tagLISTVIEW_INFO
/* default label width for items in list and small icon display modes */
#define DEFAULT_LABEL_WIDTH 40
/* maximum select rectangle width for empty text item in LV_VIEW_DETAILS */
#define MAX_EMPTYTEXT_SELECT_WIDTH 80
/* default column width for items in list display mode */
#define DEFAULT_COLUMN_WIDTH 128
...
...
@@ -2235,7 +2237,9 @@ static void LISTVIEW_GetItemMetrics(const LISTVIEW_INFO *infoPtr, const LVITEMW
DrawTextW
(
hdc
,
lpLVItem
->
pszText
,
-
1
,
&
rcText
,
uFormat
|
DT_CALCRECT
);
labelSize
.
cx
=
min
(
rcText
.
right
-
rcText
.
left
+
TRAILING_LABEL_PADDING
,
infoPtr
->
nItemWidth
);
if
(
rcText
.
right
!=
rcText
.
left
)
labelSize
.
cx
=
min
(
rcText
.
right
-
rcText
.
left
+
TRAILING_LABEL_PADDING
,
infoPtr
->
nItemWidth
);
labelSize
.
cy
=
rcText
.
bottom
-
rcText
.
top
;
SelectObject
(
hdc
,
hOldFont
);
...
...
@@ -2288,7 +2292,11 @@ calc_label:
SelectBox
.
left
=
Icon
.
left
;
SelectBox
.
top
=
Box
.
top
;
SelectBox
.
bottom
=
Box
.
bottom
;
SelectBox
.
right
=
min
(
Label
.
left
+
labelSize
.
cx
,
Label
.
right
);
if
(
labelSize
.
cx
)
SelectBox
.
right
=
min
(
Label
.
left
+
labelSize
.
cx
,
Label
.
right
);
else
SelectBox
.
right
=
min
(
Label
.
left
+
MAX_EMPTYTEXT_SELECT_WIDTH
,
Label
.
right
);
}
else
{
...
...
dlls/comctl32/tests/listview.c
View file @
216ca479
...
...
@@ -3067,7 +3067,7 @@ static void test_getitemrect(void)
expect
(
TRUE
,
r
);
/* padding, column width */
expect
(
2
,
rect
.
left
);
todo_wine
expect
(
50
,
rect
.
right
);
expect
(
50
,
rect
.
right
);
/* try with indentation */
item
.
mask
=
LVIF_INDENT
;
...
...
@@ -3093,7 +3093,7 @@ static void test_getitemrect(void)
expect
(
TRUE
,
r
);
/* padding + 1 icon width, column width */
expect
(
2
+
16
,
rect
.
left
);
todo_wine
expect
(
50
,
rect
.
right
);
expect
(
50
,
rect
.
right
);
/* label bounds */
rect
.
left
=
LVIR_LABEL
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment