📄 cpalette.h
字号:
/*____________________________________________________________________________
Copyright (C) 2002 PGP Corporation
All rights reserved.
$Id: CPalette.h,v 1.3 2002/08/06 20:10:46 dallen Exp $
____________________________________________________________________________*/
#ifndef Included_CPalette_h // [
#define Included_CPalette_h
#include "pgpClassesConfig.h"
_PGP_BEGIN
// Class CPalette
class CPalette
{
NOT_COPYABLE(CPalette)
public:
CPalette();
CPalette(HPALETTE palette);
CPalette(const LOGPALETTE& lp);
CPalette(HDC dc);
CPalette(const BITMAPINFO *pBMI, PGPUInt32& numColors);
~CPalette();
CPalette& operator=(HPALETTE palette);
operator HPALETTE() const {return mPalette;}
HPALETTE Get() const {return mPalette;}
PGPBoolean IsAttached() const;
PGPBoolean WeCreated() const {return mWeCreated;}
void Create(const LOGPALETTE& lp);
void CreateHalftone(HDC dc);
void CreateDIB(const BITMAPINFO *pBMI, PGPUInt32& numColors);
void Attach(HPALETTE palette);
void Clear();
private:
PGPBoolean mWeCreated;
HPALETTE mPalette;
};
// Class CPalette member functions
inline
CPalette::CPalette() : mWeCreated(FALSE), mPalette(NULL)
{
}
inline
CPalette::CPalette(HPALETTE palette) : mWeCreated(FALSE), mPalette(NULL)
{
Attach(palette);
}
inline
CPalette::CPalette(const LOGPALETTE& lp) : mWeCreated(FALSE), mPalette(NULL)
{
Create(lp);
}
inline
CPalette::CPalette(HDC dc) : mWeCreated(FALSE), mPalette(NULL)
{
CreateHalftone(dc);
}
inline
CPalette::CPalette(const BITMAPINFO *pBMI, PGPUInt32& numColors) :
mWeCreated(FALSE), mPalette(NULL)
{
CreateDIB(pBMI, numColors);
}
inline
CPalette::~CPalette()
{
try
{
Clear();
}
catch (CComboError&) { }
}
inline
PGPBoolean
CPalette::IsAttached() const
{
return IsntNull(mPalette);
}
_PGP_END
#endif // ] Included_CPalette_h
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -