OSDN Git Service

fix cmake/Macros.cmake
[moflib/moflib.git] / moflib-1.0 / src / mof / widget / ClippingView.hpp
1 #pragma once
2 #include "mof/widget/Container.hpp"
3 #include <memory>
4
5 namespace mof
6 {
7     class Font;
8
9 namespace widget
10 {
11
12     class ClippingView
13     : 
14         public WidgetView
15     {
16     public:
17         
18         ClippingView
19         (
20             std::shared_ptr<WidgetView> body
21         );
22         virtual ~ClippingView( );
23
24         virtual void update( );
25         virtual void draw( ) const;
26         virtual void setVisible(bool visible);
27
28         virtual FrameNumber show( bool imidiately = false ); 
29         virtual FrameNumber hide( bool imidiately = false );
30         virtual FrameNumber focus( bool imidiately = false ); 
31         virtual FrameNumber blur( bool imidiately = false );
32         virtual FrameNumber click( bool imidiately = false );
33                 virtual mof::Vector2D getPreferredSize() const;
34
35         const std::shared_ptr<WidgetView> getBody() const;
36         std::shared_ptr<WidgetView> getBody();
37     private:
38         struct Impl;
39                 std::unique_ptr<Impl> pImpl_;
40         
41     };
42
43 }
44 }