2 * Copyright 2011 Jacek Caban for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 typedef [v1_enum] enum tagWPCFLAG_RESTRICTION
{
23 WPCFLAG_NO_RESTRICTION
= 0x0000,
24 WPCFLAG_LOGGING_REQUIRED
= 0x0001,
25 WPCFLAG_WEB_FILTERED
= 0x0002,
26 WPCFLAG_HOURS_RESTRICTED
= 0x0004,
27 WPCFLAG_GAMES_BLOCKED
= 0x0008,
28 WPCFLAG_APPS_RESTRICTED
= 0x0010
29 } WPCFLAG_RESTRICTION
;
32 uuid(8fdf6ca1
-0189-47e4
-b670
-1a8a4636e340
),
35 interface IWPCSettings
: IUnknown
37 HRESULT IsLoggingRequired
(
38 [out] BOOL
*pfRequired
);
40 HRESULT GetLastSettingsChangeTime
(
41 [out] SYSTEMTIME
*pTime
) ;
43 HRESULT GetRestrictions
(
44 [out] DWORD
*pdwRestrictions
);
48 uuid(95e87780
-e158
-489e
-b452
-bbb850790715
),
51 interface IWPCGamesSettings
: IWPCSettings
55 [out] DWORD
*pdwReasons
);
59 uuid(ffccbdb8
-0992-4c30
-b0f1
-1cbb09c240aa
),
62 interface IWPCWebSettings
: IWPCSettings
64 typedef enum tagWPCFLAG_WEB_SETTING
{
65 WPCFLAG_WEB_SETTING_NOTBLOCKED
= 0,
66 WPCFLAG_WEB_SETTING_DOWNLOADSBLOCKED
= 1
67 } WPCFLAG_WEB_SETTING
;
70 [out] DWORD
*pdwSettings
);
72 HRESULT RequestURLOverride
(
76 [in] LPCWSTR
*ppcszSubURLs
,
77 [out] BOOL
*pfChanged
);
80 typedef enum tagWPCFLAG_VISIBILITY
{
81 WPCFLAG_WPC_VISIBLE
= 0,
82 WPCFLAG_WPC_HIDDEN
= 1
86 uuid(4FF40A0F
-3F3B
-4d7c
-A41B
-4F39D7B44D05
),
89 interface IWindowsParentalControlsCore
: IUnknown
91 HRESULT GetVisibility
(
92 [out] WPCFLAG_VISIBILITY
*peVisibility
) ;
94 HRESULT GetUserSettings
(
96 [out] IWPCSettings
**ppSettings
);
98 HRESULT GetWebSettings
(
100 [out] IWPCWebSettings
**ppSettings
);
102 HRESULT GetWebFilterInfo
(
104 [in] LPWSTR
*ppszName
);
108 uuid(4ff40a0f
-3f3b
-4d7c
-a41b
-4f39d7b44d05
),
111 interface IWindowsParentalControls
: IWindowsParentalControlsCore
113 HRESULT GetGamesSettings
(
114 [in] LPCWSTR pcszSID
,
115 [out] IWPCGamesSettings
**ppSettings
) ;