]> git.tdb.fi Git - libs/gui.git/blob - source/gbase/eventsource.h
8133bbe51ffab328ce994851a51538fc28a9d44a
[libs/gui.git] / source / gbase / eventsource.h
1 /* $Id$
2
3 This file is part of libmspgbase
4 Copyright © 2010  Mikko Rasa, Mikkosoft Productions
5 Distributed under the LGPL
6 */
7
8 #ifndef MSP_GBASE_EVENTSOURCE_H_
9 #define MSP_GBASE_EVENTSOURCE_H_
10
11 namespace Msp {
12 namespace Graphics {
13
14 class EventSource
15 {
16 public:
17         sigc::signal<void, unsigned, unsigned, unsigned> signal_key_press;
18         sigc::signal<void, unsigned, unsigned> signal_key_release;
19         sigc::signal<void, int, int, unsigned, unsigned> signal_button_press;
20         sigc::signal<void, int, int, unsigned, unsigned> signal_button_release;
21         sigc::signal<void, int, int> signal_pointer_motion;
22         sigc::signal<void, unsigned, unsigned> signal_resize;
23
24 protected:
25         EventSource() { }
26 public:
27         virtual ~EventSource() { }
28
29         virtual unsigned get_width() const = 0;
30         virtual unsigned get_height() const = 0;
31 };
32
33 } // namespace Graphics
34 } // namespace Msp
35
36 #endif