Merge freeldr from amd64 branch:
[reactos.git] / reactos / dll / win32 / dwmapi / dwmapi_main.c
1 /*
2 * Dwmapi
3 *
4 * Copyright 2007 Andras Kovacs
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 *
20 */
21
22 #include "config.h"
23 #include <stdarg.h>
24
25 #define NONAMELESSUNION
26 #define NONAMELESSSTRUCT
27 #define COBJMACROS
28 #include "windef.h"
29 #include "winbase.h"
30 #include "wingdi.h"
31 #include "winuser.h"
32 #include "dwmapi.h"
33 #include "wine/debug.h"
34
35 WINE_DEFAULT_DEBUG_CHANNEL(dwmapi);
36
37
38 /* At process attach */
39 BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
40 {
41 switch(fdwReason)
42 {
43 case DLL_WINE_PREATTACH:
44 return FALSE; /* prefer native version */
45 case DLL_PROCESS_ATTACH:
46 DisableThreadLibraryCalls( hInstDLL );
47 break;
48 }
49 return TRUE;
50 }
51
52 /**********************************************************************
53 * DwmIsCompositionEnabled (DWMAPI.@)
54 */
55 HRESULT WINAPI DwmIsCompositionEnabled(BOOL *enabled)
56 {
57 FIXME("%p\n", enabled);
58
59 *enabled = FALSE;
60 return S_OK;
61 }
62
63 /**********************************************************************
64 * DwmEnableComposition (DWMAPI.102)
65 */
66 HRESULT WINAPI DwmEnableComposition(UINT uCompositionAction)
67 {
68 FIXME("(%d) stub\n", uCompositionAction);
69
70 return S_OK;
71 }
72
73 /**********************************************************************
74 * DwmExtendFrameIntoClientArea (DWMAPI.@)
75 */
76 HRESULT WINAPI DwmExtendFrameIntoClientArea(HWND hwnd, const MARGINS* margins)
77 {
78 FIXME("(%p, %p) stub\n", hwnd, margins);
79
80 return E_NOTIMPL;
81 }
82
83 /**********************************************************************
84 * DwmGetColorizationColor (DWMAPI.@)
85 */
86 HRESULT WINAPI DwmGetColorizationColor(DWORD *colorization, BOOL opaque_blend)
87 {
88 FIXME("(%p, %d) stub\n", colorization, opaque_blend);
89
90 return E_NOTIMPL;
91 }
92
93 /**********************************************************************
94 * DwmFlush (DWMAPI.@)
95 */
96 HRESULT WINAPI DwmFlush(void)
97 {
98 FIXME("() stub\n");
99
100 return E_NOTIMPL;
101 }
102
103 /**********************************************************************
104 * DwmSetWindowAttribute (DWMAPI.@)
105 */
106 HRESULT WINAPI DwmSetWindowAttribute(HWND hwnd, DWORD attributenum, LPCVOID attribute, DWORD size)
107 {
108 FIXME("(%p, %x, %p, %x) stub\n", hwnd, attributenum, attribute, size);
109
110 return E_NOTIMPL;
111 }
112
113 /**********************************************************************
114 * DwmUnregisterThumbnail (DWMAPI.@)
115 */
116 HRESULT WINAPI DwmUnregisterThumbnail(HTHUMBNAIL thumbnail)
117 {
118 FIXME("(%p) stub\n", thumbnail);
119
120 return E_NOTIMPL;
121 }
122
123 /**********************************************************************
124 * DwmEnableMMCSS (DWMAPI.@)
125 */
126 HRESULT WINAPI DwmEnableMMCSS(BOOL enableMMCSS)
127 {
128 FIXME("(%d) stub\n", enableMMCSS);
129
130 return S_OK;
131 }