33 lines
778 B
C++
33 lines
778 B
C++
#pragma once
|
|
|
|
namespace XCEngine {
|
|
namespace UI {
|
|
namespace Widgets {
|
|
|
|
struct UIScrollWheelResult {
|
|
bool changed = false;
|
|
float overflow = 0.0f;
|
|
float offsetBefore = 0.0f;
|
|
float offsetAfter = 0.0f;
|
|
};
|
|
|
|
float ComputeUIScrollOverflow(float contentExtent, float viewportExtent);
|
|
float ClampUIScrollOffset(float offset, float contentExtent, float viewportExtent);
|
|
UIScrollWheelResult ApplyUIScrollWheel(
|
|
float offset,
|
|
float wheelDelta,
|
|
float contentExtent,
|
|
float viewportExtent,
|
|
float wheelStep = 48.0f,
|
|
float epsilon = 0.01f);
|
|
float EnsureUIScrollOffsetVisible(
|
|
float offset,
|
|
float itemStart,
|
|
float itemExtent,
|
|
float contentExtent,
|
|
float viewportExtent);
|
|
|
|
} // namespace Widgets
|
|
} // namespace UI
|
|
} // namespace XCEngine
|