ES-DE/src/components/ScrollableContainer.h

27 lines
611 B
C
Raw Normal View History

#pragma once
#include "../GuiComponent.h"
class ScrollableContainer : public GuiComponent
{
public:
ScrollableContainer(Window* window);
Eigen::Vector2d getScrollPos() const;
void setScrollPos(const Eigen::Vector2d& pos);
void setAutoScroll(int delay, double speed); //Use 0 for speed to disable.
void resetAutoScrollTimer();
void update(int deltaTime) override;
void render(const Eigen::Affine3f& parentTrans) override;
private:
Eigen::Vector2f getContentSize();
Eigen::Vector2d mScrollPos;
Eigen::Vector2d mScrollDir;
int mAutoScrollDelay;
double mAutoScrollSpeed;
int mAutoScrollTimer;
};