|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: xicon.hxx
//
// Contents: Declaration of CSharesEI & CSharesEIA, implementations
// of IExtractIcon
//
// History: 14-Dec-95 BruceFo Created
//
//----------------------------------------------------------------------------
#ifndef __XICON_HXX__
#define __XICON_HXX__
//////////////////////////////////////////////////////////////////////////////
class CSharesEI : public IExtractIcon { public:
CSharesEI(IN BYTE bFlags, IN DWORD type) : m_ulRefs(0), m_bFlags(bFlags), m_dwType(type) { AddRef(); } ~CSharesEI() {}
//
// IUnknown methods
//
STDMETHOD(QueryInterface)(REFIID riid, LPVOID* ppvObj); STDMETHOD_(ULONG,AddRef)(); STDMETHOD_(ULONG,Release)();
//
// IExtractIcon methods
//
STDMETHOD(GetIconLocation)( UINT uFlags, LPWSTR szIconFile, UINT cchMax, int* piIndex, UINT* pwFlags );
STDMETHOD(Extract)( LPCWSTR pszFile, UINT nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIconSize );
private:
ULONG m_ulRefs; BYTE m_bFlags; DWORD m_dwType; };
#ifdef UNICODE
class CSharesEIA : public IExtractIconA { public:
CSharesEIA(IN BYTE bFlags, IN DWORD type) : m_ulRefs(0), m_bFlags(bFlags), m_dwType(type) { AddRef(); } ~CSharesEIA() {}
//
// IUnknown methods
//
STDMETHOD(QueryInterface)(REFIID riid, LPVOID* ppvObj); STDMETHOD_(ULONG,AddRef)(); STDMETHOD_(ULONG,Release)();
//
// IExtractIconA methods
//
STDMETHOD(GetIconLocation)( UINT uFlags, LPSTR szIconFile, UINT cchMax, int* piIndex, UINT* pwFlags );
STDMETHOD(Extract)( LPCSTR pszFile, UINT nIconIndex, HICON* phiconLarge, HICON* phiconSmall, UINT nIconSize );
private:
ULONG m_ulRefs; BYTE m_bFlags; DWORD m_dwType; };
#endif // UNICODE
#endif // __XICON_HXX__
|