OSDN Git Service

とりあえず実行できるようになった。
[winaudioj/stedx.git] / base_window.h
1 #pragma once
2 /*
3   ==============================================================================
4
5    This file is part of the async
6    Copyright 2005-10 by Satoshi Fujiwara.
7
8    async can be redistributed and/or modified under the terms of the
9    GNU General Public License, as published by the Free Software Foundation;
10    either version 2 of the License, or (at your option) any later version.
11
12    async is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16
17    You should have received a copy of the GNU General Public License
18    along with async; if not, visit www.gnu.org/licenses or write to the
19    Free Software Foundation, Inc., 59 Temple Place, Suite 330, 
20    Boston, MA 02111-1307 USA
21
22   ==============================================================================
23 */
24 namespace sf {
25 /** window \83x\81[\83X\83N\83\89\83X */
26
27 struct rect {
28   uint32_t width;
29   uint32_t height;
30 };
31
32 struct base_window : boost::noncopyable
33 {
34   typedef boost::signals2::signal<void ()> on_render_type;
35
36   on_render_type on_render;
37   
38   // \90\82ÌWindow\83n\83\93\83h\83\8b\82ð\95Ô\82·\81B
39   virtual void * raw_handle() const = 0;
40   // \83E\83B\83\93\83h\83E\82ð\90\90¬\82·\82é
41   virtual void create() = 0;
42 //  virtual void show(uint32_t show_flag) = 0;
43   // \83E\83B\83\93\83h\83E\82ð\95\\8e¦\82·\82é
44   virtual void show() = 0;
45   // \83E\83B\83\93\83h\83E\82ª\8d¡\95\\8e¦\82³\82ê\82Ä\82¢\82é\82©\82ð\95Ô\82·
46   virtual bool is_show() = 0;
47   // \83E\83B\83\93\83h\83E\82ð\89B\82·
48   virtual void hide() = 0;
49   //virtual void activate() = 0;
50   //virtual bool is_activate() = 0;
51   //virtual void deactivate() = 0;
52   //virtual void 
53   //virtual void size(uint32_t width,uint32_t height); 
54   //virtual rect size(); 
55
56   virtual void text(std::wstring& text) = 0;
57   //virtual std::wstring text() = 0;
58
59   virtual void update() = 0;
60
61 protected:
62   virtual ~base_window() {};
63
64 };
65
66 }
67