[DWMAPI]
[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 static int once;
58 if (!once)
59 {
60 FIXME("%p\n", enabled);
61 once = 1;
62 }
63 else
64 TRACE("%p\n", enabled);
65
66 *enabled = FALSE;
67 return S_OK;
68 }
69
70 /**********************************************************************
71 * DwmEnableComposition (DWMAPI.102)
72 */
73 HRESULT WINAPI DwmEnableComposition(UINT uCompositionAction)
74 {
75 FIXME("(%d) stub\n", uCompositionAction);
76
77 return S_OK;
78 }
79
80 /**********************************************************************
81 * DwmExtendFrameIntoClientArea (DWMAPI.@)
82 */
83 HRESULT WINAPI DwmExtendFrameIntoClientArea(HWND hwnd, const MARGINS* margins)
84 {
85 FIXME("(%p, %p) stub\n", hwnd, margins);
86
87 return E_NOTIMPL;
88 }
89
90 /**********************************************************************
91 * DwmGetColorizationColor (DWMAPI.@)
92 */
93 HRESULT WINAPI DwmGetColorizationColor(DWORD *colorization, BOOL opaque_blend)
94 {
95 FIXME("(%p, %d) stub\n", colorization, opaque_blend);
96
97 return E_NOTIMPL;
98 }
99
100 /**********************************************************************
101 * DwmFlush (DWMAPI.@)
102 */
103 HRESULT WINAPI DwmFlush(void)
104 {
105 FIXME("() stub\n");
106
107 return E_NOTIMPL;
108 }
109
110 /**********************************************************************
111 * DwmSetWindowAttribute (DWMAPI.@)
112 */
113 HRESULT WINAPI DwmSetWindowAttribute(HWND hwnd, DWORD attributenum, LPCVOID attribute, DWORD size)
114 {
115 FIXME("(%p, %x, %p, %x) stub\n", hwnd, attributenum, attribute, size);
116
117 return E_NOTIMPL;
118 }
119
120 /**********************************************************************
121 * DwmGetGraphicsStreamClient (DWMAPI.@)
122 */
123 HRESULT WINAPI DwmGetGraphicsStreamClient(UINT uIndex, UUID *pClientUuid)
124 {
125 FIXME("(%d, %p) stub\n", uIndex, pClientUuid);
126
127 return E_NOTIMPL;
128 }
129
130 /**********************************************************************
131 * DwmGetTransportAttributes (DWMAPI.@)
132 */
133 HRESULT WINAPI DwmGetTransportAttributes(BOOL *pfIsRemoting, BOOL *pfIsConnected, DWORD *pDwGeneration)
134 {
135 FIXME("(%p, %p, %p) stub\n", pfIsRemoting, pfIsConnected, pDwGeneration);
136
137 return E_NOTIMPL;
138 }
139
140 /**********************************************************************
141 * DwmUnregisterThumbnail (DWMAPI.@)
142 */
143 HRESULT WINAPI DwmUnregisterThumbnail(HTHUMBNAIL thumbnail)
144 {
145 FIXME("(%p) stub\n", thumbnail);
146
147 return E_NOTIMPL;
148 }
149
150 /**********************************************************************
151 * DwmEnableMMCSS (DWMAPI.@)
152 */
153 HRESULT WINAPI DwmEnableMMCSS(BOOL enableMMCSS)
154 {
155 FIXME("(%d) stub\n", enableMMCSS);
156
157 return S_OK;
158 }
159
160 /**********************************************************************
161 * DwmGetGraphicsStreamTransformHint (DWMAPI.@)
162 */
163 HRESULT WINAPI DwmGetGraphicsStreamTransformHint(UINT uIndex, MilMatrix3x2D *pTransform)
164 {
165 FIXME("(%d, %p) stub\n", uIndex, pTransform);
166
167 return E_NOTIMPL;
168 }