supertux
src
editor
widget.hpp
1
// SuperTux
2
// Copyright (C) 2018 Ingo Ruhnke <grumbel@gmail.com>
3
//
4
// This program is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// This program is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with this program. If not, see <http://www.gnu.org/licenses/>.
16
17
#ifndef HEADER_SUPERTUX_EDITOR_WIDGET_HPP
18
#define HEADER_SUPERTUX_EDITOR_WIDGET_HPP
19
20
#include <SDL.h>
21
22
class
DrawingContext
;
23
24
class
Widget
25
{
26
private
:
27
public
:
28
Widget
() {}
29
virtual
~
Widget
() {}
30
31
virtual
bool
event(
const
SDL_Event& ev);
32
virtual
void
draw(
DrawingContext
& context) {}
33
virtual
void
update(
float
dt_sec) {}
34
35
virtual
void
setup() {}
36
virtual
void
resize() {}
37
38
virtual
bool
on_mouse_button_up(
const
SDL_MouseButtonEvent& button) {
return
false
; }
39
virtual
bool
on_mouse_button_down(
const
SDL_MouseButtonEvent& button) {
return
false
; }
40
virtual
bool
on_mouse_motion(
const
SDL_MouseMotionEvent& motion) {
return
false
; }
41
virtual
bool
on_mouse_wheel(
const
SDL_MouseWheelEvent& wheel) {
return
false
; }
42
virtual
bool
on_key_up(
const
SDL_KeyboardEvent& key) {
return
false
; }
43
virtual
bool
on_key_down(
const
SDL_KeyboardEvent& key) {
return
false
; }
44
45
private
:
46
Widget
(
const
Widget
&) =
delete
;
47
Widget
& operator=(
const
Widget
&) =
delete
;
48
};
49
50
#endif
51
52
/* EOF */
Widget
Definition:
widget.hpp:24
DrawingContext
This class provides functions for drawing things on screen.
Definition:
drawing_context.hpp:42
Generated by
1.8.13