OSDN Git Service

fix cmake/Macros.cmake
[moflib/moflib.git] / moflib-1.0 / src / mof / widget / MessageWidget.hpp
1 #pragma once
2 #include <boost/function/function0.hpp>
3 #include <boost/shared_ptr.hpp>
4 #include <boost/scoped_ptr.hpp>
5 //#include "mof/MenuView.hpp"
6 #include "mof/widget/WidgetView.hpp"
7 #include "mof/Font.hpp"
8
9 namespace mof
10 {
11     struct PageRequest
12     {
13                 tstring message;
14                 Font font;
15                         
16                 PageRequest(const tstring& message_ , const Font& font_ )
17                 : message(message_) , font(font_)
18                 {
19                 }
20         };
21
22         class LayoutManager;
23         class WidgetView;
24     class Pager;
25     struct Page;
26
27         class MessageWidget : boost::noncopyable{
28                 struct Impl;
29                 boost::scoped_ptr<Impl> m_pImpl;
30         public:
31                 
32         MessageWidget
33         ( 
34                         WidgetView* pBackgroundView , 
35                         const Rectangle< int >& bounds , LayoutManager* pLayout
36                 );
37
38                 ~MessageWidget();
39                 void show();
40                 void close();
41                 void nextPage();
42                 void addPage( const PageRequest& page );
43                 void draw() const;
44                 void update();
45                 bool hasNextPage();
46
47         };
48 }