osb/source/windowing/StarVerticalLayout.hpp
Kae 4b0bc220e4 Support for changing the game's timescale
Context-specific (like per-world) timescales can also be added later
2023-07-21 00:58:49 +10:00

36 lines
797 B
C++

#ifndef STAR_VERTICAL_LAYOUT_HPP
#define STAR_VERTICAL_LAYOUT_HPP
#include "StarLayout.hpp"
namespace Star {
STAR_CLASS(VerticalLayout);
class VerticalLayout : public Layout {
public:
VerticalLayout(VerticalAnchor verticalAnchor = VerticalAnchor::TopAnchor, int verticalSpacing = 0);
void update(float dt) override;
Vec2I size() const override;
RectI relativeBoundRect() const override;
void setHorizontalAnchor(HorizontalAnchor horizontalAnchor);
void setVerticalAnchor(VerticalAnchor verticalAnchor);
void setVerticalSpacing(int verticalSpacing);
void setFillDown(bool fillDown);
private:
RectI contentBoundRect() const;
HorizontalAnchor m_horizontalAnchor;
VerticalAnchor m_verticalAnchor;
int m_verticalSpacing;
bool m_fillDown;
Vec2I m_size;
};
}
#endif