Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
517b85f9
Commit
517b85f9
authored
Apr 06, 2006
by
Huw Davies
Committed by
Alexandre Julliard
Apr 06, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
comctl32: Set the sheet caption before invoking the sheet callback and before creating the pages.
parent
6381e458
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
157 additions
and
15 deletions
+157
-15
propsheet.c
dlls/comctl32/propsheet.c
+16
-15
.gitignore
dlls/comctl32/tests/.gitignore
+2
-0
Makefile.in
dlls/comctl32/tests/Makefile.in
+3
-0
propsheet.c
dlls/comctl32/tests/propsheet.c
+107
-0
propsheet.rc
dlls/comctl32/tests/propsheet.rc
+29
-0
No files found.
dlls/comctl32/propsheet.c
View file @
517b85f9
...
...
@@ -3427,21 +3427,6 @@ PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
}
}
if
(
psInfo
->
useCallback
)
(
*
(
psInfo
->
ppshheader
.
pfnCallback
))(
hwnd
,
PSCB_INITIALIZED
,
(
LPARAM
)
0
);
idx
=
psInfo
->
active_page
;
ppshpage
=
(
LPCPROPSHEETPAGEW
)
psInfo
->
proppage
[
idx
].
hpage
;
psInfo
->
active_page
=
-
1
;
PROPSHEET_SetCurSel
(
hwnd
,
idx
,
1
,
psInfo
->
proppage
[
idx
].
hpage
);
/* doing TCM_SETCURSEL seems to be needed even in case of PSH_WIZARD,
* as some programs call TCM_GETCURSEL to get the current selection
* from which to switch to the next page */
SendMessageW
(
hwndTabCtrl
,
TCM_SETCURSEL
,
psInfo
->
active_page
,
0
);
if
(
!
HIWORD
(
psInfo
->
ppshheader
.
pszCaption
)
&&
psInfo
->
ppshheader
.
hInstance
)
{
...
...
@@ -3457,6 +3442,22 @@ PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
psInfo
->
ppshheader
.
pszCaption
);
}
if
(
psInfo
->
useCallback
)
(
*
(
psInfo
->
ppshheader
.
pfnCallback
))(
hwnd
,
PSCB_INITIALIZED
,
(
LPARAM
)
0
);
idx
=
psInfo
->
active_page
;
ppshpage
=
(
LPCPROPSHEETPAGEW
)
psInfo
->
proppage
[
idx
].
hpage
;
psInfo
->
active_page
=
-
1
;
PROPSHEET_SetCurSel
(
hwnd
,
idx
,
1
,
psInfo
->
proppage
[
idx
].
hpage
);
/* doing TCM_SETCURSEL seems to be needed even in case of PSH_WIZARD,
* as some programs call TCM_GETCURSEL to get the current selection
* from which to switch to the next page */
SendMessageW
(
hwndTabCtrl
,
TCM_SETCURSEL
,
psInfo
->
active_page
,
0
);
return
TRUE
;
}
...
...
dlls/comctl32/tests/.gitignore
View file @
517b85f9
...
...
@@ -6,6 +6,8 @@ imagelist.ok
monthcal.ok
mru.ok
progress.ok
propsheet.ok
propsheet.res
subclass.ok
tab.ok
testlist.c
...
...
dlls/comctl32/tests/Makefile.in
View file @
517b85f9
...
...
@@ -13,6 +13,7 @@ CTESTS = \
monthcal.c
\
mru.c
\
progress.c
\
propsheet.c
\
subclass.c
\
tab.c
\
toolbar.c
\
...
...
@@ -20,6 +21,8 @@ CTESTS = \
treeview.c
\
updown.c
RC_SRCS
=
propsheet.rc
@MAKE_TEST_RULES@
### Dependencies:
dlls/comctl32/tests/propsheet.c
0 → 100644
View file @
517b85f9
/* Unit test suite for property sheet control.
*
* Copyright 2006 Huw Davies
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
#include <windows.h>
#include <commctrl.h>
#include "wine/test.h"
static
int
CALLBACK
sheet_callback
(
HWND
hwnd
,
UINT
msg
,
LPARAM
lparam
)
{
switch
(
msg
)
{
case
PSCB_INITIALIZED
:
{
char
caption
[
256
];
GetWindowTextA
(
hwnd
,
caption
,
sizeof
(
caption
));
ok
(
!
strcmp
(
caption
,
"test caption"
),
"caption: %s
\n
"
,
caption
);
return
0
;
}
}
return
0
;
}
static
INT_PTR
CALLBACK
page_dlg_proc
(
HWND
hwnd
,
UINT
msg
,
WPARAM
wparam
,
LPARAM
lparam
)
{
switch
(
msg
)
{
case
WM_INITDIALOG
:
{
HWND
sheet
=
GetParent
(
hwnd
);
char
caption
[
256
];
GetWindowTextA
(
sheet
,
caption
,
sizeof
(
caption
));
ok
(
!
strcmp
(
caption
,
"test caption"
),
"caption: %s
\n
"
,
caption
);
return
TRUE
;
}
case
WM_NOTIFY
:
{
NMHDR
*
nmhdr
=
(
NMHDR
*
)
lparam
;
switch
(
nmhdr
->
code
)
{
case
PSN_APPLY
:
return
TRUE
;
default:
return
FALSE
;
}
}
default:
return
FALSE
;
}
}
static
void
test_title
(
void
)
{
HPROPSHEETPAGE
hpsp
[
1
];
PROPSHEETPAGEA
psp
;
PROPSHEETHEADERA
psh
;
HWND
hdlg
;
memset
(
&
psp
,
0
,
sizeof
(
psp
));
psp
.
dwSize
=
sizeof
(
psp
);
psp
.
dwFlags
=
0
;
psp
.
hInstance
=
GetModuleHandleW
(
NULL
);
psp
.
u
.
pszTemplate
=
"prop_page1"
;
psp
.
u2
.
pszIcon
=
NULL
;
psp
.
pfnDlgProc
=
page_dlg_proc
;
psp
.
lParam
=
0
;
hpsp
[
0
]
=
CreatePropertySheetPageA
(
&
psp
);
memset
(
&
psh
,
0
,
sizeof
(
psh
));
psh
.
dwSize
=
sizeof
(
psh
);
psh
.
dwFlags
=
PSH_MODELESS
|
PSH_USECALLBACK
;
psh
.
pszCaption
=
"test caption"
;
psh
.
nPages
=
1
;
psh
.
hwndParent
=
GetDesktopWindow
();
psh
.
u3
.
phpage
=
hpsp
;
psh
.
pfnCallback
=
sheet_callback
;
hdlg
=
(
HWND
)
PropertySheetA
(
&
psh
);
DestroyWindow
(
hdlg
);
}
START_TEST
(
propsheet
)
{
test_title
();
}
dlls/comctl32/tests/propsheet.rc
0 → 100644
View file @
517b85f9
/* Resources for the unit test suite for property sheet control.
*
* Copyright 2006 Huw Davies
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windef.h"
#include "winuser.h"
PROP_PAGE1 DIALOG LOADONCALL MOVEABLE DISCARDABLE 5, 43, 227, 215
STYLE WS_POPUP | WS_CAPTION | WS_CLIPSIBLINGS | WS_VISIBLE
CAPTION "Page1"
FONT 8, "MS Shell Dlg"
{
LTEXT "Test", -1, 10, 6, 100, 8
}
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