vkmEngine
1.0.0
A C++ game engine ·
vkmengine.com
Loading...
Searching...
No Matches
ui_scroll.h
1
#pragma once
2
3
#include <glm/glm.hpp>
4
5
#include "core/reflect.h"
6
7
namespace
Vkm::Engine {
8
18
struct
UIScroll
{
24
glm::vec2
offset
= {0.0f, 0.0f};
25
27
float
wheelStep
= 60.0f;
28
34
glm::vec2
contentSize
= {0.0f, 0.0f};
35
37
glm::vec2
viewSize
= {0.0f, 0.0f};
38
44
glm::vec2
range
()
const
{
return
glm::max(
contentSize
-
viewSize
, glm::vec2(0.0f)); }
45
};
46
47
}
// namespace Vkm::Engine
48
49
VKM_REFLECT_BEGIN(
::Vkm::Engine::UIScroll
)
50
VKM_F(offset)
51
VKM_F(wheelStep)
52
VKM_REFLECT_END()
Vkm::Engine::UIScroll
Makes an element's children scroll inside it, and clips them to it.
Definition
ui_scroll.h:18
Vkm::Engine::UIScroll::wheelStep
float wheelStep
Reference pixels the content moves per wheel notch.
Definition
ui_scroll.h:27
Vkm::Engine::UIScroll::viewSize
glm::vec2 viewSize
This element's resolved size, in reference pixels.
Definition
ui_scroll.h:37
Vkm::Engine::UIScroll::range
glm::vec2 range() const
How far the content can travel on each axis, never negative; offset's clamp.
Definition
ui_scroll.h:44
Vkm::Engine::UIScroll::offset
glm::vec2 offset
How far the content has scrolled, in canvas reference pixels.
Definition
ui_scroll.h:24
Vkm::Engine::UIScroll::contentSize
glm::vec2 contentSize
Extent of the content laid out inside, in reference pixels; resolved, not authored.
Definition
ui_scroll.h:34
ecs
component
ui
ui_scroll.h
Generated by
1.14.0