mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
applied fixes to make a user32.dll
code is based on wine. svn path=/trunk/; revision=1120
This commit is contained in:
parent
99fb26fc8b
commit
4542601468
9 changed files with 65 additions and 57 deletions
|
@ -82,7 +82,7 @@ static LRESULT COMBO_NCCreate(WND* wnd, LPARAM lParam)
|
|||
if ( wnd && COMBO_Init() &&
|
||||
(lphc = HeapAlloc(GetProcessHeap(), 0, sizeof(HEADCOMBO))) )
|
||||
{
|
||||
LPCREATESTRUCTA lpcs = (CREATESTRUCTA*)lParam;
|
||||
LPCREATESTRUCT lpcs = (CREATESTRUCT*)lParam;
|
||||
|
||||
memset( lphc, 0, sizeof(HEADCOMBO) );
|
||||
*(LPHEADCOMBO*)wnd->wExtra = lphc;
|
||||
|
|
|
@ -216,7 +216,7 @@ static void EDIT_WM_Char(WND *wnd, EDITSTATE *es, CHAR c, DWORD key_data);
|
|||
static void EDIT_WM_Command(WND *wnd, EDITSTATE *es, INT code, INT id, HWND conrtol);
|
||||
static void EDIT_WM_ContextMenu(WND *wnd, EDITSTATE *es, HWND hwnd, INT x, INT y);
|
||||
static void EDIT_WM_Copy(WND *wnd, EDITSTATE *es);
|
||||
static LRESULT EDIT_WM_Create(WND *wnd, EDITSTATE *es, LPCREATESTRUCTA cs);
|
||||
static LRESULT EDIT_WM_Create(WND *wnd, EDITSTATE *es, LPCREATESTRUCT cs);
|
||||
static void EDIT_WM_Destroy(WND *wnd, EDITSTATE *es);
|
||||
static LRESULT EDIT_WM_EraseBkGnd(WND *wnd, EDITSTATE *es, HDC dc);
|
||||
static INT EDIT_WM_GetText(WND *wnd, EDITSTATE *es, INT count, LPSTR text);
|
||||
|
@ -227,7 +227,7 @@ static LRESULT EDIT_WM_LButtonDblClk(WND *wnd, EDITSTATE *es, DWORD keys, INT x,
|
|||
static LRESULT EDIT_WM_LButtonDown(WND *wnd, EDITSTATE *es, DWORD keys, INT x, INT y);
|
||||
static LRESULT EDIT_WM_LButtonUp(WND *wnd, EDITSTATE *es, DWORD keys, INT x, INT y);
|
||||
static LRESULT EDIT_WM_MouseMove(WND *wnd, EDITSTATE *es, DWORD keys, INT x, INT y);
|
||||
static LRESULT EDIT_WM_NCCreate(WND *wnd, LPCREATESTRUCTA cs);
|
||||
static LRESULT EDIT_WM_NCCreate(WND *wnd, LPCREATESTRUCT cs);
|
||||
static void EDIT_WM_Paint(WND *wnd, EDITSTATE *es);
|
||||
static void EDIT_WM_Paste(WND *wnd, EDITSTATE *es);
|
||||
static void EDIT_WM_SetFocus(WND *wnd, EDITSTATE *es, HWND window_losing_focus);
|
||||
|
@ -313,7 +313,7 @@ LRESULT WINAPI EditWndProc( HWND hwnd, UINT msg,
|
|||
|
||||
case WM_NCCREATE:
|
||||
DPRINTF_EDIT_MSG("WM_NCCREATE");
|
||||
return EDIT_WM_NCCreate(wnd, (LPCREATESTRUCTA)lParam);
|
||||
return EDIT_WM_NCCreate(wnd, (LPCREATESTRUCT)lParam);
|
||||
}
|
||||
|
||||
if (!es)
|
||||
|
@ -591,7 +591,7 @@ LRESULT WINAPI EditWndProc( HWND hwnd, UINT msg,
|
|||
|
||||
case WM_CREATE:
|
||||
DPRINTF_EDIT_MSG("WM_CREATE");
|
||||
result = EDIT_WM_Create(wnd, es, (LPCREATESTRUCTA)lParam);
|
||||
result = EDIT_WM_Create(wnd, es, (LPCREATESTRUCT)lParam);
|
||||
break;
|
||||
|
||||
case WM_CUT:
|
||||
|
@ -2720,7 +2720,7 @@ static void EDIT_WM_Copy(WND *wnd, EDITSTATE *es)
|
|||
* WM_CREATE
|
||||
*
|
||||
*/
|
||||
static LRESULT EDIT_WM_Create(WND *wnd, EDITSTATE *es, LPCREATESTRUCTA cs)
|
||||
static LRESULT EDIT_WM_Create(WND *wnd, EDITSTATE *es, LPCREATESTRUCT cs)
|
||||
{
|
||||
/*
|
||||
* To initialize some final structure members, we call some helper
|
||||
|
@ -3231,7 +3231,7 @@ static LRESULT EDIT_WM_MouseMove(WND *wnd, EDITSTATE *es, DWORD keys, INT x, INT
|
|||
* WM_NCCREATE
|
||||
*
|
||||
*/
|
||||
static LRESULT EDIT_WM_NCCreate(WND *wnd, LPCREATESTRUCTA cs)
|
||||
static LRESULT EDIT_WM_NCCreate(WND *wnd, LPCREATESTRUCT cs)
|
||||
{
|
||||
EDITSTATE *es;
|
||||
|
||||
|
|
|
@ -2498,7 +2498,7 @@ LRESULT WINAPI ComboLBWndProc( HWND hwnd, UINT msg,
|
|||
switch( msg )
|
||||
{
|
||||
case WM_CREATE:
|
||||
#define lpcs ((LPCREATESTRUCTA)lParam)
|
||||
#define lpcs ((LPCREATESTRUCT)lParam)
|
||||
DPRINT( "\tpassed parent handle = 0x%08x\n",
|
||||
(UINT)lpcs->lpCreateParams);
|
||||
|
||||
|
|
|
@ -855,7 +855,7 @@ LRESULT STDCALL ScrollBarWndProc( HWND hwnd, UINT message, WPARAM wParam,
|
|||
{
|
||||
case WM_CREATE:
|
||||
{
|
||||
CREATESTRUCTA *lpCreat = (CREATESTRUCTA *)lParam;
|
||||
CREATESTRUCT *lpCreat = (CREATESTRUCT *)lParam;
|
||||
if (lpCreat->style & SBS_SIZEBOX)
|
||||
{
|
||||
DPRINT( "FIXME Unimplemented style SBS_SIZEBOX.\n" );
|
||||
|
|
|
@ -32,15 +32,12 @@ BOOL WIN_CreateDesktopWindow(void)
|
|||
|
||||
DPRINT("Creating desktop window\n");
|
||||
|
||||
#if 0
|
||||
if (!ICONTITLE_Init() ||
|
||||
!WINPOS_CreateInternalPosAtom() ||
|
||||
!(class = CLASS_FindClassByAtom( STRING2ATOM(DESKTOP_CLASS_NAME) , 0 )))
|
||||
|
||||
|
||||
class = CLASS_FindClassByAtom( STRING2ATOMW(DESKTOP_CLASS_NAME) , 0 );
|
||||
if ( class == NULL )
|
||||
return FALSE;
|
||||
#else
|
||||
WINPOS_CreateInternalPosAtom();
|
||||
class = CLASS_FindClassByAtom( STRING2ATOMW(DESKTOP_CLASS_NAME) , 0 );
|
||||
#endif
|
||||
|
||||
hwndDesktop = HeapAlloc(GetProcessHeap(),0, sizeof(WND)+class->cbWndExtra );
|
||||
if (!hwndDesktop) return FALSE;
|
||||
pWndDesktop = (WND *) ( hwndDesktop );
|
||||
|
@ -72,7 +69,7 @@ BOOL WIN_CreateDesktopWindow(void)
|
|||
pWndDesktop->dwStyle = WS_VISIBLE | WS_CLIPCHILDREN |
|
||||
WS_CLIPSIBLINGS;
|
||||
pWndDesktop->dwExStyle = 0;
|
||||
pWndDesktop->dce = NULL;
|
||||
pWndDesktop->dce = DCE_AllocDCE(pWndDesktop,DCE_WINDOW_DC);
|
||||
pWndDesktop->pVScroll = NULL;
|
||||
pWndDesktop->pHScroll = NULL;
|
||||
pWndDesktop->pProp = NULL;
|
||||
|
@ -96,7 +93,7 @@ BOOL WIN_CreateDesktopWindow(void)
|
|||
|
||||
HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
||||
{
|
||||
HANDLE hWnd;
|
||||
|
||||
WND *wndPtr;
|
||||
STARTUPINFO StartupInfo;
|
||||
CLASS *classPtr = NULL;
|
||||
|
@ -137,7 +134,7 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
wndPtr->class = classPtr;
|
||||
|
||||
wndPtr->hwndSelf = wndPtr;
|
||||
hWnd = wndPtr->hwndSelf;
|
||||
|
||||
|
||||
/* Fill the window structure */
|
||||
|
||||
|
@ -152,8 +149,8 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
}
|
||||
else
|
||||
{
|
||||
wndPtr->parent = pWndDesktop;
|
||||
if (!cs->hwndParent || (cs->hwndParent == pWndDesktop->hwndSelf))
|
||||
wndPtr->parent = WIN_GetDesktop();
|
||||
if (!cs->hwndParent || (cs->hwndParent == WIN_GetDesktop()->hwndSelf))
|
||||
wndPtr->owner = NULL;
|
||||
else
|
||||
{
|
||||
|
@ -167,8 +164,8 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
/*
|
||||
else
|
||||
{
|
||||
wndPtr->parent = pWndDesktop;
|
||||
if (!cs->hWndParent || (cs->hWndParent == pWndDesktop->hwndSelf))
|
||||
wndPtr->parent = WIN_GetDesktop();
|
||||
if (!cs->hWndParent || (cs->hWndParent == WIN_GetDesktop()->hwndSelf))
|
||||
wndPtr->owner = NULL;
|
||||
else
|
||||
wndPtr->owner = WIN_GetTopParentPtr(WIN_FindWndPtr(cs->hWndParent));
|
||||
|
@ -177,7 +174,7 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
|
||||
wndPtr->winproc = classPtr->winproc;
|
||||
wndPtr->dwMagic = WND_MAGIC;
|
||||
//wndPtr->hwndSelf = hWnd;
|
||||
|
||||
wndPtr->hInstance = cs->hInstance;
|
||||
wndPtr->text = NULL;
|
||||
wndPtr->hmemTaskQ = GetFastQueue();
|
||||
|
@ -193,7 +190,7 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
wndPtr->pProp = NULL;
|
||||
wndPtr->userdata = 0;
|
||||
wndPtr->hSysMenu = (wndPtr->dwStyle & WS_SYSMENU)
|
||||
? MENU_GetSysMenu( hWnd, 0 ) : 0;
|
||||
? MENU_GetSysMenu( wndPtr->hwndSelf, 0 ) : 0;
|
||||
|
||||
if (classPtr->cbWndExtra)
|
||||
HEAP_memset( wndPtr->wExtra, 0, classPtr->cbWndExtra);
|
||||
|
@ -210,7 +207,7 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
|
||||
cbtc.lpcs = cs;
|
||||
cbtc.hwndInsertAfter = hWndLinkAfter;
|
||||
ret = HOOK_CallHooks(WH_CBT, HCBT_CREATEWND, (INT)hWnd, (LPARAM)&cbtc, classPtr->bUnicode);
|
||||
ret = HOOK_CallHooks(WH_CBT, HCBT_CREATEWND, (INT)wndPtr->hwndSelf, (LPARAM)&cbtc, classPtr->bUnicode);
|
||||
if (ret)
|
||||
{
|
||||
|
||||
|
@ -331,7 +328,7 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
if ((wndPtr->dwStyle & (WS_CAPTION | WS_CHILD)) == WS_CAPTION )
|
||||
{
|
||||
if (cs->hMenu)
|
||||
SetMenu(hWnd, cs->hMenu);
|
||||
SetMenu(wndPtr->hwndSelf, cs->hMenu);
|
||||
else
|
||||
{
|
||||
if (classPtr->menuName) {
|
||||
|
@ -364,9 +361,9 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
|
||||
/* Insert the window in the linked list */
|
||||
|
||||
WIN_LinkWindow( hWnd, hWndLinkAfter );
|
||||
WIN_LinkWindow( wndPtr->hwndSelf, hWndLinkAfter );
|
||||
|
||||
WINPOS_SendNCCalcSize( hWnd, FALSE, &wndPtr->rectWindow,
|
||||
WINPOS_SendNCCalcSize( wndPtr->hwndSelf, FALSE, &wndPtr->rectWindow,
|
||||
NULL, NULL, 0, &wndPtr->rectClient );
|
||||
OffsetRect(&wndPtr->rectWindow, maxPos.x - wndPtr->rectWindow.left,
|
||||
maxPos.y - wndPtr->rectWindow.top);
|
||||
|
@ -374,7 +371,7 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
|
||||
if( (MSG_SendMessage( wndPtr, WM_CREATE, 0, (LPARAM)cs)) == -1 )
|
||||
{
|
||||
WIN_UnlinkWindow( hWnd );
|
||||
WIN_UnlinkWindow( wndPtr->hwndSelf );
|
||||
WIN_DestroyWindow( wndPtr );
|
||||
return NULL;
|
||||
}
|
||||
|
@ -405,7 +402,7 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
swFlag = ((wndPtr->dwStyle & WS_CHILD) || GetActiveWindow())
|
||||
? SWP_NOACTIVATE | SWP_NOZORDER | SWP_FRAMECHANGED
|
||||
: SWP_NOZORDER | SWP_FRAMECHANGED;
|
||||
SetWindowPos( hWnd, 0, newPos.left, newPos.top,
|
||||
SetWindowPos( wndPtr->hwndSelf, 0, newPos.left, newPos.top,
|
||||
newPos.right, newPos.bottom, swFlag );
|
||||
}
|
||||
|
||||
|
@ -414,19 +411,19 @@ HANDLE WIN_CreateWindowEx( CREATESTRUCT *cs, ATOM classAtom)
|
|||
/* Notify the parent window only */
|
||||
|
||||
MSG_SendMessage( wndPtr->parent, WM_PARENTNOTIFY,
|
||||
MAKEWPARAM(WM_CREATE, wndPtr->wIDmenu), (LPARAM)hWnd );
|
||||
if( !IsWindow(hWnd) ) return 0;
|
||||
MAKEWPARAM(WM_CREATE, wndPtr->wIDmenu), (LPARAM)wndPtr->hwndSelf );
|
||||
if( !IsWindow(wndPtr->hwndSelf) ) return 0;
|
||||
}
|
||||
|
||||
if (cs->style & WS_VISIBLE)
|
||||
ShowWindow( hWnd, SW_SHOW );
|
||||
ShowWindow( wndPtr->hwndSelf, SW_SHOW );
|
||||
|
||||
/* Call WH_SHELL hook */
|
||||
|
||||
if (!(wndPtr->dwStyle & WS_CHILD) && !wndPtr->owner)
|
||||
HOOK_CallHooks( WH_SHELL, HSHELL_WINDOWCREATED, (INT)hWnd, 0L, classPtr->bUnicode);
|
||||
HOOK_CallHooks( WH_SHELL, HSHELL_WINDOWCREATED, (INT)wndPtr->hwndSelf, 0L, classPtr->bUnicode);
|
||||
|
||||
return hWnd;
|
||||
return wndPtr->hwndSelf;
|
||||
|
||||
|
||||
}
|
||||
|
@ -445,14 +442,14 @@ WINBOOL WIN_IsWindow(HANDLE hWnd)
|
|||
HWND WIN_FindWinToRepaint( HWND hwnd, HQUEUE hQueue )
|
||||
{
|
||||
HWND hwndRet;
|
||||
WND *pWnd = pWndDesktop;
|
||||
WND *pWnd = WIN_GetDesktop();
|
||||
|
||||
/* Note: the desktop window never gets WM_PAINT messages
|
||||
* The real reason why is because Windows DesktopWndProc
|
||||
* does ValidateRgn inside WM_ERASEBKGND handler.
|
||||
*/
|
||||
|
||||
pWnd = hwnd ? WIN_FindWndPtr( hwnd ) : pWndDesktop->child;
|
||||
pWnd = hwnd ? WIN_FindWndPtr( hwnd ) : WIN_GetDesktop()->child;
|
||||
|
||||
for ( ; pWnd ; pWnd = pWnd->next )
|
||||
{
|
||||
|
|
|
@ -41,7 +41,10 @@ HWND WINPOS_GetActiveWindow(void)
|
|||
WINBOOL WINPOS_CreateInternalPosAtom()
|
||||
{
|
||||
LPSTR str = "SysIP";
|
||||
atomInternalPos = (LPCSTR)(DWORD)GlobalAddAtomA(str);
|
||||
atomInternalPos ="SysIP";
|
||||
// atomInternalPos = (LPCSTR)(DWORD)GlobalAddAtomA(str);
|
||||
//if ( atomInternalPos == NULL )
|
||||
// atomInternalPos = (LPCSTR)(DWORD)GlobalFindAtom(str);
|
||||
return (atomInternalPos) ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
|
|
|
@ -27,6 +27,13 @@ DllMain(
|
|||
case DLL_PROCESS_ATTACH:
|
||||
//WinStation = CreateWindowStationA(NULL,0,GENERIC_ALL,NULL);
|
||||
//Desktop = CreateDesktopA(NULL,NULL,NULL,0,0,NULL);
|
||||
WINPOS_CreateInternalPosAtom();
|
||||
SYSCOLOR_Init();
|
||||
WIDGETS_Init();
|
||||
ICONTITLE_Init();
|
||||
DIALOG_Init();
|
||||
COMBO_Init();
|
||||
MENU_Init();
|
||||
break;
|
||||
case DLL_THREAD_ATTACH:
|
||||
break;
|
||||
|
|
|
@ -10,9 +10,10 @@ int main(int argc, char **argv)
|
|||
{
|
||||
|
||||
|
||||
|
||||
WINPOS_CreateInternalPosAtom();
|
||||
SYSCOLOR_Init();
|
||||
WIDGETS_Init();
|
||||
ICONTITLE_Init();
|
||||
DIALOG_Init();
|
||||
COMBO_Init();
|
||||
MENU_Init();
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
|
||||
//#include <user32/heapdup.h>
|
||||
|
||||
#define MDICREATESTRUCTA MDICREATESTRUCT
|
||||
#define MDICREATESTRUCTW MDICREATESTRUCT
|
||||
#define MDICREATESTRUCT MDICREATESTRUCT
|
||||
#define MDICREATESTRUCT MDICREATESTRUCT
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
|
@ -124,7 +124,7 @@ LRESULT WINAPI DefWindowProcA( HWND hwnd, UINT msg, WPARAM wParam,
|
|||
{
|
||||
case WM_NCCREATE:
|
||||
{
|
||||
CREATESTRUCTA *cs = (CREATESTRUCTA *)lParam;
|
||||
CREATESTRUCT *cs = (CREATESTRUCT *)lParam;
|
||||
if (cs->lpszName) DEFWND_SetTextA( wndPtr, cs->lpszName );
|
||||
result = 1;
|
||||
}
|
||||
|
@ -191,7 +191,7 @@ LRESULT WINAPI DefWindowProcW( HWND hwnd, UINT msg, WPARAM wParam,
|
|||
{
|
||||
case WM_NCCREATE:
|
||||
{
|
||||
CREATESTRUCTW *cs = (CREATESTRUCTW *)lParam;
|
||||
CREATESTRUCT *cs = (CREATESTRUCT *)lParam;
|
||||
if (cs->lpszName) DEFWND_SetTextW( wndPtr, cs->lpszName );
|
||||
result = 1;
|
||||
}
|
||||
|
@ -303,10 +303,10 @@ INT WINPROC_MapMsg32ATo32W( HWND hwnd, UINT msg, WPARAM wParam, LPARAM *plparam
|
|||
case WM_NCCREATE:
|
||||
case WM_CREATE:
|
||||
{
|
||||
CREATESTRUCTW *cs = (CREATESTRUCTW *)HeapAlloc( GetProcessHeap(), 0,
|
||||
CREATESTRUCT *cs = (CREATESTRUCT *)HeapAlloc( GetProcessHeap(), 0,
|
||||
sizeof(*cs) );
|
||||
if (!cs) return -1;
|
||||
*cs = *(CREATESTRUCTW *)*plparam;
|
||||
*cs = *(CREATESTRUCT *)*plparam;
|
||||
if (HIWORD(cs->lpszName))
|
||||
cs->lpszName = HEAP_strdupAtoW( GetProcessHeap(), 0,
|
||||
(LPCSTR)cs->lpszName );
|
||||
|
@ -318,7 +318,7 @@ INT WINPROC_MapMsg32ATo32W( HWND hwnd, UINT msg, WPARAM wParam, LPARAM *plparam
|
|||
return 1;
|
||||
case WM_MDICREATE:
|
||||
{
|
||||
MDICREATESTRUCTW *cs = HeapAlloc( GetProcessHeap(), 0, sizeof(MDICREATESTRUCT) );
|
||||
MDICREATESTRUCT *cs = HeapAlloc( GetProcessHeap(), 0, sizeof(MDICREATESTRUCT) );
|
||||
if (!cs) return -1;
|
||||
*cs = *(MDICREATESTRUCT *)*plparam;
|
||||
if (HIWORD(cs->szClass))
|
||||
|
@ -410,7 +410,7 @@ void WINPROC_UnmapMsg32ATo32W( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam
|
|||
case WM_NCCREATE:
|
||||
case WM_CREATE:
|
||||
{
|
||||
CREATESTRUCTW *cs = (CREATESTRUCTW *)lParam;
|
||||
CREATESTRUCT *cs = (CREATESTRUCT *)lParam;
|
||||
if (HIWORD(cs->lpszName))
|
||||
HeapFree( GetProcessHeap(), 0, (LPVOID)cs->lpszName );
|
||||
if (HIWORD(cs->lpszClass))
|
||||
|
@ -421,7 +421,7 @@ void WINPROC_UnmapMsg32ATo32W( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam
|
|||
|
||||
case WM_MDICREATE:
|
||||
{
|
||||
MDICREATESTRUCTW *cs = (MDICREATESTRUCTW *)lParam;
|
||||
MDICREATESTRUCT *cs = (MDICREATESTRUCT *)lParam;
|
||||
if (HIWORD(cs->szTitle))
|
||||
HeapFree( GetProcessHeap(), 0, (LPVOID)cs->szTitle );
|
||||
if (HIWORD(cs->szClass))
|
||||
|
@ -522,10 +522,10 @@ INT WINPROC_MapMsg32WTo32A( HWND hwnd, UINT msg, WPARAM wParam, LPARAM *plparam
|
|||
case WM_NCCREATE:
|
||||
case WM_CREATE:
|
||||
{
|
||||
CREATESTRUCTA *cs = (CREATESTRUCTA *)HeapAlloc( GetProcessHeap(), 0,
|
||||
CREATESTRUCT *cs = (CREATESTRUCT *)HeapAlloc( GetProcessHeap(), 0,
|
||||
sizeof(*cs) );
|
||||
if (!cs) return -1;
|
||||
*cs = *(CREATESTRUCTA *)*plparam;
|
||||
*cs = *(CREATESTRUCT *)*plparam;
|
||||
if (HIWORD(cs->lpszName))
|
||||
cs->lpszName = HEAP_strdupWtoA( GetProcessHeap(), 0,
|
||||
(LPCWSTR)cs->lpszName );
|
||||
|
@ -537,10 +537,10 @@ INT WINPROC_MapMsg32WTo32A( HWND hwnd, UINT msg, WPARAM wParam, LPARAM *plparam
|
|||
return 1;
|
||||
case WM_MDICREATE:
|
||||
{
|
||||
MDICREATESTRUCTA *cs =
|
||||
(MDICREATESTRUCTA *)HeapAlloc( GetProcessHeap(), 0, sizeof(*cs) );
|
||||
MDICREATESTRUCT *cs =
|
||||
(MDICREATESTRUCT *)HeapAlloc( GetProcessHeap(), 0, sizeof(*cs) );
|
||||
if (!cs) return -1;
|
||||
*cs = *(MDICREATESTRUCTA *)*plparam;
|
||||
*cs = *(MDICREATESTRUCT *)*plparam;
|
||||
if (HIWORD(cs->szTitle))
|
||||
cs->szTitle = HEAP_strdupWtoA( GetProcessHeap(), 0,
|
||||
(LPCWSTR)cs->szTitle );
|
||||
|
@ -643,7 +643,7 @@ void WINPROC_UnmapMsg32WTo32A( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam
|
|||
case WM_NCCREATE:
|
||||
case WM_CREATE:
|
||||
{
|
||||
CREATESTRUCTA *cs = (CREATESTRUCTA *)lParam;
|
||||
CREATESTRUCT *cs = (CREATESTRUCT *)lParam;
|
||||
if (HIWORD(cs->lpszName))
|
||||
HeapFree( GetProcessHeap(), 0, (LPVOID)cs->lpszName );
|
||||
if (HIWORD(cs->lpszClass))
|
||||
|
@ -654,7 +654,7 @@ void WINPROC_UnmapMsg32WTo32A( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam
|
|||
|
||||
case WM_MDICREATE:
|
||||
{
|
||||
MDICREATESTRUCTA *cs = (MDICREATESTRUCTA *)lParam;
|
||||
MDICREATESTRUCT *cs = (MDICREATESTRUCT *)lParam;
|
||||
if (HIWORD(cs->szTitle))
|
||||
HeapFree( GetProcessHeap(), 0, (LPVOID)cs->szTitle );
|
||||
if (HIWORD(cs->szClass))
|
||||
|
|
Loading…
Reference in a new issue