1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
|
/*
/--------------------------------------------------------------------
|
| $Id: gritem.cpp,v 1.5 2002/02/24 13:00:57 uzadow Exp $
| Graphic item class
|
| Abstract base class for an item on a canvas.
|
| Copyright (c) 1996-2002 Ulrich von Zadow
|
\--------------------------------------------------------------------
*/
#include "stdafx.h"
#include "gritem.h"
#include "plbitmap.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char BASED_CODE THIS_FILE[] = __FILE__;
#endif
IMPLEMENT_DYNAMIC (CGrItem, CObject);
CGrItem::CGrItem
( int x, // Position on the canvas
int y,
int w, // Width
int h, // Height
int z, // Position in z-Order
BYTE Opacity // Opacity of the object. 255 is completely
// opaque, 0 is completely transparent.
)
{
m_x = x;
m_y = y;
m_w = w;
m_h = h;
m_z = z;
m_Opacity = Opacity;
}
CGrItem::~CGrItem
()
{
}
void CGrItem::GetRect
( CRect * pRect
)
// Returns dimensions as a rectangle.
{
*pRect = CRect (CPoint (m_x, m_y), CSize (m_w, m_h));
}
void CGrItem::clip
( PLBmp * pDestBmp,
CRect * pUpdRect
)
// Clips pUpdRect to the item and the canvas.
{
CRect TempRect;
CRect ItemRect (CPoint (m_x, m_y), CSize (m_w, m_h));
CRect CanvasRect (CPoint (0,0),
CSize (pDestBmp->GetWidth()-1,
pDestBmp->GetHeight()-1));
TempRect.IntersectRect (pUpdRect, &ItemRect);
pUpdRect->IntersectRect (&TempRect, &CanvasRect);
}
/*
/--------------------------------------------------------------------
|
| $Log: gritem.cpp,v $
| Revision 1.5 2002/02/24 13:00:57 uzadow
| Documentation update; removed buggy PLFilterRotate.
|
| Revision 1.4 2001/09/16 19:03:23 uzadow
| Added global name prefix PL, changed most filenames.
|
| Revision 1.3 2000/01/16 20:43:19 anonymous
| Removed MFC dependencies
|
|
\--------------------------------------------------------------------
*/
|