osb/source/frontend/StarInterfaceCursor.hpp

35 lines
724 B
C++
Raw Normal View History

#pragma once
2023-06-20 04:33:09 +00:00
#include "StarJson.hpp"
#include "StarAnimation.hpp"
namespace Star {
class InterfaceCursor {
public:
InterfaceCursor();
// Sets the cursor to the default defined in interface.config
void resetCursor();
// Sets the cursor config to the given config IF the config is different than
// the current one. Expects a full asset path to the cursor config.
void setCursor(String const& configFile);
Drawable drawable() const;
Vec2I size() const;
Vec2I offset() const;
2023-06-26 08:39:40 +00:00
unsigned int scale(unsigned int interfaceScale = 0) const;
2023-06-20 04:33:09 +00:00
void update(float dt);
private:
String m_configFile;
Vec2I m_offset;
Vec2I m_size;
2023-06-26 08:39:40 +00:00
unsigned int m_scale;
2023-06-20 04:33:09 +00:00
MVariant<String, Animation> m_drawable;
};
}