mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 09:25:10 +00:00
[User32]
- Use SetWindowTextA/W so that it passes through defwnd to be processed for themes. - Fix validation of the dialog window and procedure. svn path=/trunk/; revision=54248
This commit is contained in:
parent
6027ff60e6
commit
3581e033d0
1 changed files with 33 additions and 20 deletions
|
@ -138,15 +138,14 @@ DIALOGINFO * DIALOG_get_info( HWND hWnd, BOOL create )
|
|||
PWND pWindow;
|
||||
DIALOGINFO* dlgInfo = (DIALOGINFO *)GetWindowLongPtrW( hWnd, DWLP_ROS_DIALOGINFO );
|
||||
|
||||
if(!dlgInfo && create)
|
||||
{
|
||||
pWindow = ValidateHwnd( hWnd );
|
||||
if (!pWindow)
|
||||
{
|
||||
SetLastError( ERROR_INVALID_WINDOW_HANDLE );
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!dlgInfo && create)
|
||||
{
|
||||
if (pWindow && pWindow->cbwndExtra >= DLGWINDOWEXTRA && hWnd != GetDesktopWindow())
|
||||
{
|
||||
if (!(dlgInfo = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*dlgInfo) )))
|
||||
|
@ -161,6 +160,14 @@ DIALOGINFO * DIALOG_get_info( HWND hWnd, BOOL create )
|
|||
return NULL;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!(pWindow->state & WNDS_DIALOGWINDOW) || pWindow->fnid != FNID_DIALOG)
|
||||
{
|
||||
ERR("Wrong window class for Dialog!\n");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
return dlgInfo;
|
||||
}
|
||||
|
||||
|
@ -2573,6 +2580,7 @@ SendDlgItemMessageA(
|
|||
WPARAM wParam,
|
||||
LPARAM lParam)
|
||||
{
|
||||
if ( hDlg == HWND_TOPMOST || hDlg == HWND_BROADCAST ) return 0; // ReactOS
|
||||
HWND hwndCtrl = GetDlgItem( hDlg, nIDDlgItem );
|
||||
if (hwndCtrl) return SendMessageA( hwndCtrl, Msg, wParam, lParam );
|
||||
else return 0;
|
||||
|
@ -2591,6 +2599,7 @@ SendDlgItemMessageW(
|
|||
WPARAM wParam,
|
||||
LPARAM lParam)
|
||||
{
|
||||
if ( hDlg == HWND_TOPMOST || hDlg == HWND_BROADCAST ) return 0; // ReactOS
|
||||
HWND hwndCtrl = GetDlgItem( hDlg, nIDDlgItem );
|
||||
if (hwndCtrl) return SendMessageW( hwndCtrl, Msg, wParam, lParam );
|
||||
else return 0;
|
||||
|
@ -2627,7 +2636,9 @@ SetDlgItemTextA(
|
|||
int nIDDlgItem,
|
||||
LPCSTR lpString)
|
||||
{
|
||||
return SendDlgItemMessageA( hDlg, nIDDlgItem, WM_SETTEXT, 0, (LPARAM)lpString );
|
||||
HWND hwndCtrl = GetDlgItem( hDlg, nIDDlgItem ); // ReactOS Themes
|
||||
if (hwndCtrl) return SetWindowTextA( hwndCtrl, lpString );
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
|
@ -2641,7 +2652,9 @@ SetDlgItemTextW(
|
|||
int nIDDlgItem,
|
||||
LPCWSTR lpString)
|
||||
{
|
||||
return SendDlgItemMessageW( hDlg, nIDDlgItem, WM_SETTEXT, 0, (LPARAM)lpString );
|
||||
HWND hwndCtrl = GetDlgItem( hDlg, nIDDlgItem ); // ReactOS Themes
|
||||
if (hwndCtrl) return SetWindowTextW( hwndCtrl, lpString );
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue