OLD | NEW |
1 /* | 1 /* |
2 * http://msdn.microsoft.com/en-us/library/bb250436.aspx | 2 * http://msdn.microsoft.com/en-us/library/bb250436.aspx |
3 */ | 3 */ |
4 | 4 |
5 #ifndef _PLUGIN_CLASS_H_ | 5 #ifndef _PLUGIN_CLASS_H_ |
6 #define _PLUGIN_CLASS_H_ | 6 #define _PLUGIN_CLASS_H_ |
7 | 7 |
8 | 8 |
9 #include "PluginTypedef.h" | 9 #include "PluginTypedef.h" |
10 #include "Plugin.h" | 10 #include "Plugin.h" |
11 #include "PluginTab.h" | 11 #include "PluginTab.h" |
12 #define _CRTDBG_MAP_ALLOC | 12 #define _CRTDBG_MAP_ALLOC |
13 #include <stdlib.h> | 13 #include <stdlib.h> |
14 #include <crtdbg.h> | 14 #include <crtdbg.h> |
| 15 #include <set> |
15 | 16 |
16 #include "NotificationMessage.h" | 17 #include "NotificationMessage.h" |
17 | 18 |
18 #define ICON_PLUGIN_DISABLED 0 | 19 #define ICON_PLUGIN_DISABLED 0 |
19 #define ICON_PLUGIN_ENABLED 1 | 20 #define ICON_PLUGIN_ENABLED 1 |
20 #define ICON_PLUGIN_DEACTIVATED 2 | 21 #define ICON_PLUGIN_DEACTIVATED 2 |
21 #define ICON_MAX 3 | 22 #define ICON_MAX 3 |
22 | 23 |
23 #define WM_LAUNCH_INFO (WM_APP + 10) | 24 #define WM_LAUNCH_INFO (WM_APP + 10) |
24 | 25 |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 | 160 |
160 // Main thread | 161 // Main thread |
161 static HANDLE s_hMainThread; | 162 static HANDLE s_hMainThread; |
162 static bool s_isMainThreadDone; | 163 static bool s_isMainThreadDone; |
163 | 164 |
164 static HANDLE GetMainThreadHandle(); | 165 static HANDLE GetMainThreadHandle(); |
165 static bool IsMainThreadDone(HANDLE mainThread); | 166 static bool IsMainThreadDone(HANDLE mainThread); |
166 | 167 |
167 | 168 |
168 static HINSTANCE s_hUxtheme; | 169 static HINSTANCE s_hUxtheme; |
169 static CSimpleArray<CPluginClass*> s_instances; | 170 static std::set<CPluginClass*> s_instances; |
170 static std::map<DWORD,CPluginClass*> s_threadInstances; | 171 static std::map<DWORD,CPluginClass*> s_threadInstances; |
171 | 172 |
172 #ifdef SUPPORT_WHITELIST | 173 #ifdef SUPPORT_WHITELIST |
173 static std::map<UINT, CString> s_menuDomains; | 174 static std::map<UINT, CString> s_menuDomains; |
174 #endif | 175 #endif |
175 | 176 |
176 static CComAutoCriticalSection s_criticalSectionLocal; | 177 static CComAutoCriticalSection s_criticalSectionLocal; |
177 static CComAutoCriticalSection s_criticalSectionBrowser; | 178 static CComAutoCriticalSection s_criticalSectionBrowser; |
178 static CComAutoCriticalSection s_criticalSectionWindow; | 179 static CComAutoCriticalSection s_criticalSectionWindow; |
179 #ifdef SUPPORT_WHITELIST | 180 #ifdef SUPPORT_WHITELIST |
180 static CComAutoCriticalSection s_criticalSectionWhiteList; | 181 static CComAutoCriticalSection s_criticalSectionWhiteList; |
181 #endif | 182 #endif |
182 | 183 |
183 // Async browser | 184 // Async browser |
184 static CComQIPtr<IWebBrowser2> s_asyncWebBrowser2; | 185 static CComQIPtr<IWebBrowser2> s_asyncWebBrowser2; |
185 | 186 |
186 static CComQIPtr<IWebBrowser2> GetAsyncBrowser(); | 187 static CComQIPtr<IWebBrowser2> GetAsyncBrowser(); |
187 | 188 |
188 }; | 189 }; |
189 | 190 |
190 OBJECT_ENTRY_AUTO(__uuidof(PluginClass), CPluginClass) | 191 OBJECT_ENTRY_AUTO(__uuidof(PluginClass), CPluginClass) |
191 | 192 |
192 | 193 |
193 #endif // _PLUGIN_CLASS_H_ | 194 #endif // _PLUGIN_CLASS_H_ |
OLD | NEW |