133 lines
3.9 KiB
C++
133 lines
3.9 KiB
C++
//+-------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 2000
|
|
//
|
|
// File: cpviewp.h
|
|
//
|
|
//--------------------------------------------------------------------------
|
|
#ifndef __CONTROLPANEL_VIEW_PRIVATE_H
|
|
#define __CONTROLPANEL_VIEW_PRIVATE_H
|
|
|
|
#define GADGET_ENABLE_TRANSITIONS
|
|
#define GADGET_ENABLE_CONTROLS
|
|
#include <duser.h>
|
|
#include <directui.h>
|
|
#include <dusercore.h>
|
|
|
|
namespace DUI = DirectUI;
|
|
|
|
|
|
#include "cpview.h"
|
|
|
|
|
|
namespace CPL {
|
|
|
|
|
|
enum eCPVIEWTYPE
|
|
{
|
|
eCPVIEWTYPE_CLASSIC,
|
|
eCPVIEWTYPE_CATEGORY,
|
|
eCPVIEWTYPE_NUMTYPES
|
|
};
|
|
|
|
|
|
//
|
|
// ICplCategory represents a single category withing the cateorized
|
|
// Control Panel namespace.
|
|
//
|
|
extern const GUID IID_ICplCategory;
|
|
|
|
class ICplCategory : public IUnknown
|
|
{
|
|
public:
|
|
//
|
|
// Returns the category's ID number from the eCPCAT enumeration.
|
|
//
|
|
STDMETHOD(GetCategoryID)(eCPCAT *pID) PURE;
|
|
//
|
|
// Returns the command object associated with the category's
|
|
// link. Used by the category selection page.
|
|
//
|
|
STDMETHOD(GetUiCommand)(IUICommand **ppele) PURE;
|
|
//
|
|
// Returns an enumerator for the task commands associated with
|
|
// the category.
|
|
//
|
|
STDMETHOD(EnumTasks)(IEnumUICommand **ppenum) PURE;
|
|
//
|
|
// Returns an enumerator for the CPL applet links associated
|
|
// with the category.
|
|
//
|
|
STDMETHOD(EnumCplApplets)(IEnumUICommand **ppenum) PURE;
|
|
//
|
|
// Returns an enumerator for the webview information associated
|
|
// with the category.
|
|
//
|
|
STDMETHOD(EnumWebViewInfo)(DWORD dwFlags, IEnumCplWebViewInfo **ppenum) PURE;
|
|
//
|
|
// Invoke help for the category.
|
|
//
|
|
STDMETHOD(GetHelpURL)(LPWSTR pszURL, UINT cchURL) PURE;
|
|
};
|
|
|
|
|
|
//
|
|
// ICplNamespace represents the entire Control Panel namespace for the
|
|
// new "Categorized" view introduced in Whistler.
|
|
//
|
|
extern const GUID IID_ICplNamespace;
|
|
|
|
class ICplNamespace : public IUnknown
|
|
{
|
|
public:
|
|
//
|
|
// Returns a specified category.
|
|
//
|
|
STDMETHOD(GetCategory)(eCPCAT eCategory, ICplCategory **ppcat) PURE;
|
|
//
|
|
// Returns an enumerator for the information displayed
|
|
// in webview on the category selection page.
|
|
//
|
|
STDMETHOD(EnumWebViewInfo)(DWORD dwFlags, IEnumCplWebViewInfo **ppenum) PURE;
|
|
//
|
|
// Returns an enumerator for the information displayed
|
|
// in webview on the classic page.
|
|
//
|
|
STDMETHOD(EnumClassicWebViewInfo)(DWORD dwFlags, IEnumCplWebViewInfo **ppenum) PURE;
|
|
//
|
|
// Refresh namespace with new set of item IDs.
|
|
//
|
|
STDMETHOD(RefreshIDs)(IEnumIDList *penumIDs) PURE;
|
|
//
|
|
// Cached system configuration information. Used by
|
|
// restriction code in cpnamespc.cpp
|
|
//
|
|
STDMETHOD_(BOOL, IsServer)(void) PURE;
|
|
STDMETHOD_(BOOL, IsProfessional)(void) PURE;
|
|
STDMETHOD_(BOOL, IsPersonal)(void) PURE;
|
|
STDMETHOD_(BOOL, IsUserAdmin)(void) PURE;
|
|
STDMETHOD_(BOOL, IsUserOwner)(void) PURE;
|
|
STDMETHOD_(BOOL, IsUserStandard)(void) PURE;
|
|
STDMETHOD_(BOOL, IsUserLimited)(void) PURE;
|
|
STDMETHOD_(BOOL, IsUserGuest)(void) PURE;
|
|
STDMETHOD_(BOOL, IsOnDomain)(void) PURE;
|
|
STDMETHOD_(BOOL, IsX86)(void) PURE;
|
|
STDMETHOD_(BOOL, AllowUserManager)(void) PURE;
|
|
STDMETHOD_(BOOL, UsePersonalUserManager)(void) PURE;
|
|
STDMETHOD_(BOOL, AllowDeskCpl)(void) PURE;
|
|
STDMETHOD_(BOOL, AllowDeskCplTab_Background)(void) PURE;
|
|
STDMETHOD_(BOOL, AllowDeskCplTab_Screensaver)(void) PURE;
|
|
STDMETHOD_(BOOL, AllowDeskCplTab_Appearance)(void) PURE;
|
|
STDMETHOD_(BOOL, AllowDeskCplTab_Settings)(void) PURE;
|
|
|
|
};
|
|
|
|
|
|
} // namespace CPL
|
|
|
|
#endif //__CONTROLPANEL_VIEW_PRIVATE_H
|
|
|
|
|