// Navigator.h: interface for the Navigator class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_NAVIGATOR_H__3F8DCC07_29A2_46F6_B31C_897A653319E5__INCLUDED_) #define AFX_NAVIGATOR_H__3F8DCC07_29A2_46F6_B31C_897A653319E5__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "utils.h" #include "SwordIndex.h" #define NUM_MENUS 5 #define MODE_BOOK 0 #define MODE_CHAP 1 #define MODE_VERSE 2 #define MODE_TEXT 3 #define MODE_FIND 4 #define BUTTON_BACKGROUND 0x00A0A0A0 extern RECT RECT_SCREEN; class NavNumbers; class NavBooks; class NavRenderText; class Navigator { private: int mode; HMENU menuTranslations; UString getVerseHeader(); void showChap(); void showVerse(); void setModule(int id); void checkModuleMenu(int id); public: SwordIndex position; NavNumbers* numbers; NavBooks* books; NavRenderText* text; Navigator(RECT* screen); virtual ~Navigator(); void updateTitle(); void fillTranslationsMenu(HMENU menuTranslations); void refresh(); void setMode(int mode); void paint(); void buttonClicked(int id); void keyDown(WPARAM id, LPARAM lparam); void mouseDown(int x, int y); bool initialized() {return position.initialized();} }; #endif // !defined(AFX_NAVIGATOR_H__3F8DCC07_29A2_46F6_B31C_897A653319E5__INCLUDED_)