#ifndef BOGBOARD_H #define BOGBOARD_H class TBogBoard; //forward declare the class #include "bogwin.hpp" #include "square.hpp" #include "random.hpp" #include "dice.hpp" #include "wlist.hpp" #include "score.hpp" #include "dict.hpp" #include "sound.hpp" class TBogBoard : public ICanvas, public ICommandHandler, public IPaintHandler, public IMouseClickHandler { private: // TBogWindow *PBWindow; ICanvas *pboard; int NX, stack[20], chflag[20]; TBogWIP *pbwip; TBogWordList *pblist; TBogSquare *PBSquare[16]; LastSquare *PBLastSquare; Dice *Cubes[16]; Random rLetter; char fndall_str[17]; char *Index[MAX]; streampos loc[MAX]; ifstream ndx; ifstream dict; Dictionary *brd_words; protected: /* -------------------------------------------------------- */ /* declare the event handlers. These event handlers are all */ /* pure virtual functions in their respective base classes */ /* -------------------------------------------------------- */ virtual Boolean command(ICommandEvent&); virtual Boolean paintWindow(IPaintEvent &); virtual Boolean mouseClicked(IMouseClickEvent &); void Search(char *, int); public : TBogBoard (unsigned long id, IWindow* parentAndOwner, TBogWindow* PBWindow, TBogWIP* PBWIP, TBogWordList* PBList, TBogScore* PBScore, Sound* pSound); ~TBogBoard (); ICanvas *CanvasPointer(); void InitBoard (); void ClearBoard (); void FindAll(); } ; #endif