Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*************************************************
* sprite.h * * * * Copyright (C) 1995-1999 Microsoft Inc. * * * *************************************************/
// sprite.h : header file
//
// CSprite class
//
//
class CSprite : public CDIB { DECLARE_SERIAL(CSprite) public: CSprite(); ~CSprite();
virtual int GetX() { return m_x;} // get x
virtual int GetY() { return m_y;} // get y
virtual int GetZ() { return m_z;} // get z order
virtual void Serialize(CArchive& ar); virtual void Render(CDIB* pDIB, CRect* pClipRect = NULL); virtual void Coverage(CDIB* pDIB); virtual BOOL Load(CFile *fp); // load from file
virtual BOOL Load(char *pszFileName = NULL);// load DIB from disk file
virtual BOOL Load(CBitmap *pszFileName = NULL);// load DIB from disk file
virtual BOOL MapColorsToPalette(CPalette *pPal); virtual void GetRect(CRect* pRect); virtual BOOL HitTest(CPoint point); virtual void SetPosition(int x, int y); virtual void SetZ(int z); virtual void SetNotificationObject(CSpriteNotifyObj* pNO) {m_pNotifyObj = pNO;} virtual void Disappear();
protected: int m_x; // X Coordinate of top-left corner
int m_y; // Y Coordinate of top-left corner
int m_z; // Z order for sprite
BYTE m_bTransIndex; // transparency index value
CSpriteNotifyObj *m_pNotifyObj; // ptr to a notification object
virtual void Initialize(); // set initial state
};
|