Home COM GDI+ WebBrowser Data Access

ICategoryProvider Interface

 

IID_ICategoryProvider

{9AF64809-5864-4C26-A720-C1F78C086EE3}

 

 

This interface provides a list of categorizers registered on an IShellFolder.

 

 

Methods in VTable order

IUnknown Methods

Description

QueryInterface

Returns pointers to supported interfaces.

AddRef

Increments reference count.

Release

Decrements reference count.

ICategoryProvider Methods

Description

CanCategorizeOnSCID

Retrieves whether a column can be used as a category.

GetDefaultCategory

Enables the folder to override the default grouping.

GetCategoryForSCID

Retrieves a GUID that represents the categorizer to use for the specified Shell column.

EnumCategories

Retrieves the enumerator for the list of globally unique identifiers (GUIDs) that represent categories.

GetCategoryName

Retrieves the name of the specified category.

CreateCategory

Creates a category object.

 

CanCategorizeOnSCID

 

FUNCTION ICategoryProvider_CanCategorizeOnSCID ( _

  BYVAL pthis AS DWORD PTR _

, BYREF pscid AS SHCOLUMNID _

  ) AS LONG

   LOCAL HRESULT AS LONG
   CALL DWORD @@pthis[3] USING ICategoryProvider_CanCategorizeOnSCID (pthis, pscid) TO HRESULT
   FUNCTION = HRESULT

END FUNCTION

 

 

GetDefaultCategory

 

FUNCTION ICategoryProvider_GetDefaultCategory ( _

  BYVAL pthis AS DWORD PTR _

, BYREF pGuid AS GUID _

, BYREF pscid AS SHCOLUMNID _

  ) AS LONG

   LOCAL HRESULT AS LONG
   CALL DWORD @@pthis[4] USING ICategoryProvider_GetDefaultCategory (pthis, pGuid, pscid) TO HRESULT
   FUNCTION = HRESULT

END FUNCTION

 

 

GetCategoryForSCID

 

FUNCTION ICategoryProvider_GetCategoryForSCID ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pscid AS SHCOLUMNID _

, BYREF pGuid AS GUID _

  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[5] USING ICategoryProvider_GetCategoryForSCID (pthis, pscid, pGuid) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

EnumCategories

 

FUNCTION ICategoryProvider_EnumCategories ( _
  BYVAL pthis AS DWORD PTR _
, BYREF penum AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[6] USING ICategoryProvider_EnumCategories (pthis, penum) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

GetCategoryName

 

FUNCTION Proto_ICategoryProvider_GetCategoryName ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pGuid AS GUID _
, BYVAL pszName AS STRING _
, BYVAL cch AS DWORD _
  ) AS LONG
 

FUNCTION ICategoryProvider_GetCategoryName ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pGuid AS GUID _
, BYREF strName AS STRING _
  ) AS LONG

  LOCAL HRESULT AS LONG

  LOCAL pszName AS DWORD

  LOCAL cch AS DWORD
  CALL DWORD @@pthis[7] USING Proto_ICategoryProvider_GetCategoryName (pthis, pGuid, pszName, cch) TO HRESULT
  IF HRESULT = %S_OK THEN

     strName = ACODE$(PEEK$(pszName, cch))

     CoTaskMemFree pszName

  END IF
  FUNCTION = HRESULT

END FUNCTION

 

 

CreateCategory

 

FUNCTION ICategoryProvider_CreateCategory ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pGuid AS GUID _
, BYREF riid AS GUID _
, BYREF ppv AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG
  CALL DWORD @@pthis[8] USING ICategoryProvider_CreateCategory (pthis, pszStatusText) TO HRESULT
  FUNCTION = HRESULT

END FUNCTION

 

 

Page last updated on Monday, 20 March 2006 03:50:50 +0100