OpenMW
|
00001 #ifndef MWGUI_BOOKWINDOW_H 00002 #define MWGUI_BOOKWINDOW_H 00003 00004 #include "windowbase.hpp" 00005 00006 #include "../mwworld/ptr.hpp" 00007 00008 #include "imagebutton.hpp" 00009 00010 namespace MWGui 00011 { 00012 class BookWindow : public WindowBase 00013 { 00014 public: 00015 BookWindow(); 00016 00017 void open(MWWorld::Ptr book); 00018 void setTakeButtonShow(bool show); 00019 void nextPage(); 00020 void prevPage(); 00021 void setInventoryAllowed(bool allowed); 00022 00023 protected: 00024 void onNextPageButtonClicked (MyGUI::Widget* sender); 00025 void onPrevPageButtonClicked (MyGUI::Widget* sender); 00026 void onCloseButtonClicked (MyGUI::Widget* sender); 00027 void onTakeButtonClicked (MyGUI::Widget* sender); 00028 00029 void updatePages(); 00030 void clearPages(); 00031 void adjustButton(MWGui::ImageButton* button); 00032 00033 private: 00034 MWGui::ImageButton* mCloseButton; 00035 MWGui::ImageButton* mTakeButton; 00036 MWGui::ImageButton* mNextPageButton; 00037 MWGui::ImageButton* mPrevPageButton; 00038 MyGUI::TextBox* mLeftPageNumber; 00039 MyGUI::TextBox* mRightPageNumber; 00040 MyGUI::Widget* mLeftPage; 00041 MyGUI::Widget* mRightPage; 00042 00043 unsigned int mCurrentPage; // 0 is first page 00044 std::vector<MyGUI::Widget*> mPages; 00045 00046 MWWorld::Ptr mBook; 00047 00048 bool mTakeButtonShow; 00049 bool mTakeButtonAllowed; 00050 }; 00051 00052 } 00053 00054 #endif