AUI Framework
master
Cross-platform module-based framework for developing C++20 desktop applications
AScrollEvent.h
1
/*
2
* AUI Framework - Declarative UI toolkit for modern C++20
3
* Copyright (C) 2020-2024 Alex2772 and Contributors
4
*
5
* SPDX-License-Identifier: MPL-2.0
6
*
7
* This Source Code Form is subject to the terms of the Mozilla Public
8
* License, v. 2.0. If a copy of the MPL was not distributed with this
9
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
10
*/
11
12
#pragma once
13
14
#include <glm/glm.hpp>
15
#include "APointerIndex.h"
16
20
struct
AScrollEvent
{
28
glm::vec2
origin
;
29
35
mutable
glm::vec2
delta
;
36
40
bool
kinetic
=
false
;
41
45
APointerIndex
pointerIndex
=
APointerIndex::button
(AInput::LBUTTON);
46
};
APointerIndex
Wrapper class that stores either mouse button index or finger index.
Definition:
APointerIndex.h:21
APointerIndex::button
AOptional< AInput::Key > button() const noexcept
Definition:
APointerIndex.h:56
AScrollEvent
Pointing method scroll event.
Definition:
AScrollEvent.h:20
AScrollEvent::pointerIndex
APointerIndex pointerIndex
Pointer index for touchscreen; LBUTTON for mouse cursor.
Definition:
AScrollEvent.h:45
AScrollEvent::delta
glm::vec2 delta
The amount of scroll.
Definition:
AScrollEvent.h:35
AScrollEvent::kinetic
bool kinetic
Whether the event simulated by kinetic scroll feature or not.
Definition:
AScrollEvent.h:40
AScrollEvent::origin
glm::vec2 origin
Where does the event occurred.
Definition:
AScrollEvent.h:28