#ifndef __XPAGEFRAME_G__
#define __XPAGEFRAME_G__

///////////////////////////////////////////////
//											 //
// All files in this framework are Copyright //
// of Aleksandras Gluchovas 				 //
// 											 //
// e-mail: alex@nomagiclt.com                //
//											 //
///////////////////////////////////////////////
	  
#include "XObject.h"

class XPageFrame : public XObject
{
public:
	XPageFrame( const XRect& bounds,
				bool isTransparent = FALSE,
				const wxColour& bkCol      = wxColour( 255,255,255 ),
		        const wxColour& shadeCol   = wxColour( 160,160,160 ),
				const wxColour& outlineCol = wxColour(   0,  0,  0 ),
				int shadeWidth = 8, int outlineWidth = 2 );

	void SetTransparent( bool transparent );
	bool IsTransparent() { return mIsTransparent; }
	virtual void SetBounds( const XRect& bounds );

	virtual void Draw( wxDC& canvas );

	XRect GetBounds();

protected:

	void CalcRects();
	void DrawRect( wxDC& dc, XRect& rect, XRect& area, wxBrush& br );

	XRect   mBounds;
	XRect   mOutterBounds;
	wxBrush mBkBrush;
	wxBrush mShadeBrush;
	wxBrush mOutlineBrush;
	bool    mIsTransparent;
	int     mShadeWidth;
	int     mOutlineWidth;

	XRect   mR1;
	XRect   mR2;
	XRect   mR3;
	XRect   mR4;
	XRect   mR5;
	XRect   mR6;
	XRect   mR7;
};

#endif	//  __XPAGEFRAME_G__