Jacek Caban : atl90: Share atl_ax.c with atl100.

Alexandre Julliard julliard at winehq.org
Mon Jan 27 13:32:52 CST 2014


Module: wine
Branch: master
Commit: 1a130126053105d9022f7a83fc95587bdb415ff2
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=1a130126053105d9022f7a83fc95587bdb415ff2

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Jan 20 14:46:56 2014 +0100

atl90: Share atl_ax.c with atl100.

---

 dlls/atl100/atl_ax.c   |   17 ++++++++++++----
 dlls/atl90/Makefile.in |    7 +++++--
 dlls/atl90/atl90.c     |   53 ------------------------------------------------
 dlls/atl90/atl90.spec  |   18 ++++++++--------
 4 files changed, 27 insertions(+), 68 deletions(-)

diff --git a/dlls/atl100/atl_ax.c b/dlls/atl100/atl_ax.c
index 50ebe3b..0f0f3c6 100644
--- a/dlls/atl100/atl_ax.c
+++ b/dlls/atl100/atl_ax.c
@@ -86,8 +86,17 @@ static LRESULT CALLBACK AtlAxWin_wndproc( HWND hWnd, UINT wMsg, WPARAM wParam, L
 BOOL WINAPI AtlAxWinInit(void)
 {
     WNDCLASSEXW wcex;
-    const WCHAR AtlAxWin100[] = {'A','t','l','A','x','W','i','n','1','0','0',0};
-    const WCHAR AtlAxWinLic100[] = {'A','t','l','A','x','W','i','n','L','i','c','1','0','0',0};
+
+#if _ATL_VER == _ATL_VER_90
+#define ATL_NAME_SUFFIX '9','0',0
+#elif _ATL_VER == _ATL_VER_100
+#define ATL_NAME_SUFFIX '1','0','0',0
+#else
+#error Unsupported version
+#endif
+
+    const WCHAR AtlAxWinW[] = {'A','t','l','A','x','W','i','n',ATL_NAME_SUFFIX};
+    const WCHAR AtlAxWinLicW[] = {'A','t','l','A','x','W','i','n','L','i','c',ATL_NAME_SUFFIX};
 
     FIXME("version %04x semi-stub\n", _ATL_VER);
 
@@ -106,11 +115,11 @@ BOOL WINAPI AtlAxWinInit(void)
     wcex.hIconSm       = 0;
 
     wcex.lpfnWndProc   = AtlAxWin_wndproc;
-    wcex.lpszClassName = AtlAxWin100;
+    wcex.lpszClassName = AtlAxWinW;
     if ( !RegisterClassExW( &wcex ) )
         return FALSE;
 
-    wcex.lpszClassName = AtlAxWinLic100;
+    wcex.lpszClassName = AtlAxWinLicW;
     if ( !RegisterClassExW( &wcex ) )
         return FALSE;
 
diff --git a/dlls/atl90/Makefile.in b/dlls/atl90/Makefile.in
index f52b7d5..677aaae 100644
--- a/dlls/atl90/Makefile.in
+++ b/dlls/atl90/Makefile.in
@@ -1,7 +1,10 @@
 MODULE    = atl90.dll
-IMPORTS   = atl100 oleaut32 user32 ole32
+IMPORTS   = atl100 oleaut32 user32 ole32 uuid
 EXTRADEFS = -D_ATL_VER=_ATL_VER_90
+PARENTSRC = ../atl100
 
-C_SRCS = atl90.c
+C_SRCS = \
+	atl90.c \
+	atl_ax.c
 
 RC_SRCS = atl90.rc
diff --git a/dlls/atl90/atl90.c b/dlls/atl90/atl90.c
index 06e8066..9dd0b70 100644
--- a/dlls/atl90/atl90.c
+++ b/dlls/atl90/atl90.c
@@ -40,56 +40,3 @@ DWORD WINAPI AtlGetVersion(void *reserved)
     TRACE("version %04x (%p)\n", _ATL_VER, reserved);
     return _ATL_VER;
 }
-
-/**********************************************************************
- * AtlAxWin class window procedure
- */
-static LRESULT CALLBACK AtlAxWin_wndproc( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam )
-{
-    if ( msg == WM_CREATE )
-    {
-            DWORD len = GetWindowTextLengthW( hwnd ) + 1;
-            WCHAR *ptr = HeapAlloc( GetProcessHeap(), 0, len*sizeof(WCHAR) );
-            if (!ptr)
-                return 1;
-            GetWindowTextW( hwnd, ptr, len );
-            AtlAxCreateControlEx( ptr, hwnd, NULL, NULL, NULL, NULL, NULL );
-            HeapFree( GetProcessHeap(), 0, ptr );
-            return 0;
-    }
-    return DefWindowProcW( hwnd, msg, wparam, lparam );
-}
-
-BOOL WINAPI AtlAxWinInit(void)
-{
-    WNDCLASSEXW wcex;
-    const WCHAR AtlAxWin90[] = {'A','t','l','A','x','W','i','n','9','0',0};
-    const WCHAR AtlAxWinLic90[] = {'A','t','l','A','x','W','i','n','L','i','c','9','0',0};
-
-    FIXME("version %04x semi-stub\n", _ATL_VER);
-
-    if ( FAILED( OleInitialize(NULL) ) )
-        return FALSE;
-
-    wcex.cbSize        = sizeof(wcex);
-    wcex.style         = CS_GLOBALCLASS | CS_DBLCLKS;
-    wcex.cbClsExtra    = 0;
-    wcex.cbWndExtra    = 0;
-    wcex.hInstance     = GetModuleHandleW( NULL );
-    wcex.hIcon         = NULL;
-    wcex.hCursor       = NULL;
-    wcex.hbrBackground = NULL;
-    wcex.lpszMenuName  = NULL;
-    wcex.hIconSm       = 0;
-
-    wcex.lpfnWndProc   = AtlAxWin_wndproc;
-    wcex.lpszClassName = AtlAxWin90;
-    if ( !RegisterClassExW( &wcex ) )
-        return FALSE;
-
-    wcex.lpszClassName = AtlAxWinLic90;
-    if ( !RegisterClassExW( &wcex ) )
-        return FALSE;
-
-    return TRUE;
-}
diff --git a/dlls/atl90/atl90.spec b/dlls/atl90/atl90.spec
index 045969e..35facf8 100644
--- a/dlls/atl90/atl90.spec
+++ b/dlls/atl90/atl90.spec
@@ -18,20 +18,20 @@
 31 stdcall AtlComQIPtrAssign(ptr ptr ptr) atl100.AtlComQIPtrAssign
 32 stdcall AtlInternalQueryInterface(ptr ptr ptr ptr) atl100.AtlInternalQueryInterface
 34 stdcall AtlGetVersion(ptr)
-35 stdcall AtlAxDialogBoxW(long wstr long ptr long) atl100.AtlAxDialogBoxW
-36 stdcall AtlAxDialogBoxA(long str long ptr long) atl100.AtlAxDialogBoxA
-37 stdcall AtlAxCreateDialogW(long wstr long ptr long) atl100.AtlAxCreateDialogW
-38 stdcall AtlAxCreateDialogA(long str long ptr long) atl100.AtlAxCreateDialogA
-39 stdcall AtlAxCreateControl(ptr ptr ptr ptr) atl100.AtlAxCreateControl
-40 stdcall AtlAxCreateControlEx(ptr ptr ptr ptr ptr ptr ptr) atl100.AtlAxCreateControlEx
-41 stdcall AtlAxAttachControl(ptr ptr ptr) atl100.AtlAxAttachControl
+35 stdcall AtlAxDialogBoxW(long wstr long ptr long)
+36 stdcall AtlAxDialogBoxA(long str long ptr long)
+37 stdcall AtlAxCreateDialogW(long wstr long ptr long)
+38 stdcall AtlAxCreateDialogA(long str long ptr long)
+39 stdcall AtlAxCreateControl(ptr ptr ptr ptr)
+40 stdcall AtlAxCreateControlEx(ptr ptr ptr ptr ptr ptr ptr)
+41 stdcall AtlAxAttachControl(ptr ptr ptr)
 42 stdcall AtlAxWinInit()
 43 stdcall AtlWinModuleAddCreateWndData(ptr ptr ptr) atl100.AtlWinModuleAddCreateWndData
 44 stdcall AtlWinModuleExtractCreateWndData(ptr) atl100.AtlWinModuleExtractCreateWndData
 45 stub AtlWinModuleRegisterWndClassInfoW
 46 stub AtlWinModuleRegisterWndClassInfoA
-47 stdcall AtlAxGetControl(long ptr) atl100.AtlAxGetControl
-48 stdcall AtlAxGetHost(long ptr) atl100.AtlAxGetHost
+47 stdcall AtlAxGetControl(long ptr)
+48 stdcall AtlAxGetHost(long ptr)
 49 stdcall AtlRegisterClassCategoriesHelper(ptr ptr long) atl100.AtlRegisterClassCategoriesHelper
 50 stdcall AtlIPersistStreamInit_Load(ptr ptr ptr ptr) atl100.AtlIPersistStreamInit_Load
 51 stdcall AtlIPersistStreamInit_Save(ptr long ptr ptr ptr) atl100.AtlIPersistStreamInit_Save




More information about the wine-cvs mailing list