Minetest
5.9.0-dev
Loading...
Searching...
No Matches
guiScrollContainer.h
Go to the documentation of this file.
1
/*
2
Minetest
3
Copyright (C) 2020 DS
4
5
This program is free software; you can redistribute it and/or modify
6
it under the terms of the GNU Lesser General Public License as published by
7
the Free Software Foundation; either version 2.1 of the License, or
8
(at your option) any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU Lesser General Public License for more details.
14
15
You should have received a copy of the GNU Lesser General Public License along
16
with this program; if not, write to the Free Software Foundation, Inc.,
17
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18
*/
19
20
#pragma once
21
22
#include "
irrlichttypes_extrabloated.h
"
23
#include "
util/string.h
"
24
#include "
guiScrollBar.h
"
25
26
class
GUIScrollContainer
:
public
gui::IGUIElement
27
{
28
public
:
29
GUIScrollContainer
(gui::IGUIEnvironment *env, gui::IGUIElement *parent, s32
id
,
30
const
core::rect<s32> &rectangle,
const
std::string &orientation,
31
f32 scrollfactor);
32
33
virtual
bool
OnEvent
(
const
SEvent &event)
override
;
34
35
virtual
void
draw
()
override
;
36
37
inline
void
onScrollEvent
(gui::IGUIElement *caller)
38
{
39
if
(caller ==
m_scrollbar
)
40
updateScrolling
();
41
}
42
43
inline
void
setScrollBar
(
GUIScrollBar
*scrollbar)
44
{
45
m_scrollbar
= scrollbar;
46
updateScrolling
();
47
}
48
49
private
:
50
enum
OrientationEnum
51
{
52
VERTICAL
,
53
HORIZONTAL
,
54
UNDEFINED
55
};
56
57
GUIScrollBar
*
m_scrollbar
;
58
OrientationEnum
m_orientation
;
59
f32
m_scrollfactor
;
60
61
void
updateScrolling
();
62
};
GUIScrollBar
Definition:
guiScrollBar.h:24
GUIScrollContainer
Definition:
guiScrollContainer.h:27
GUIScrollContainer::setScrollBar
void setScrollBar(GUIScrollBar *scrollbar)
Definition:
guiScrollContainer.h:43
GUIScrollContainer::m_scrollbar
GUIScrollBar * m_scrollbar
Definition:
guiScrollContainer.h:57
GUIScrollContainer::updateScrolling
void updateScrolling()
Definition:
guiScrollContainer.cpp:70
GUIScrollContainer::OnEvent
virtual bool OnEvent(const SEvent &event) override
Definition:
guiScrollContainer.cpp:36
GUIScrollContainer::draw
virtual void draw() override
Definition:
guiScrollContainer.cpp:59
GUIScrollContainer::onScrollEvent
void onScrollEvent(gui::IGUIElement *caller)
Definition:
guiScrollContainer.h:37
GUIScrollContainer::OrientationEnum
OrientationEnum
Definition:
guiScrollContainer.h:51
GUIScrollContainer::VERTICAL
@ VERTICAL
Definition:
guiScrollContainer.h:52
GUIScrollContainer::HORIZONTAL
@ HORIZONTAL
Definition:
guiScrollContainer.h:53
GUIScrollContainer::UNDEFINED
@ UNDEFINED
Definition:
guiScrollContainer.h:54
GUIScrollContainer::m_orientation
OrientationEnum m_orientation
Definition:
guiScrollContainer.h:58
GUIScrollContainer::m_scrollfactor
f32 m_scrollfactor
Definition:
guiScrollContainer.h:59
guiScrollBar.h
irrlichttypes_extrabloated.h
string.h
gui
guiScrollContainer.h
Generated on Sat May 4 2024 17:14:11 for Minetest by
1.9.6