// BOSSVIEW.H
//
// Copyright (c) 1998 Symbian Ltd.  All rights reserved.
//

#ifndef __BOSSVIEW_H
#define __BOSSVIEW_H

#include <coecntrl.h>

class TBossPuzzle;

class CBossView : public CCoeControl
	{
public:
	// construct/destruct
	IMPORT_C CBossView(const CCoeControl* aParent, const TRect& aRect, TBossPuzzle* iModel);
	IMPORT_C void ConstructL();
	~CBossView();
	IMPORT_C void MoveTile(TInt aOldBlankRow, TInt aOldBlankCol, TInt aNewBlankRow, TInt aNewBlankCol) const;
protected:
	TBossPuzzle* iModel;
private: // framework
	virtual void Draw(const TRect& /* aRect */) const; // draw model
private:
	IMPORT_C CBossView();
	void GetBoardRect(TRect& aBoardRect) const;
	void DrawBoard() const;
	void GetTileRect(TRect& aTileRect, TInt aRow, TInt aCol) const;
	void DrawTile(TInt aRow, TInt aCol) const; // tile or blank
private:
	CFont* iTileFont;
	const CCoeControl* iParent;
	TRect iOfferedRect;
	};

#endif
