aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/UI/UIControl_SpaceIndicatorBar.h
blob: 08e00da9fd6fc0137ebdb76f933f1f871e962c09 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#pragma once

#include "UIControl_Base.h"

class UIControl_SpaceIndicatorBar : public UIControl_Base
{
private:
	IggyName m_setSaveSizeFunc, m_setTotalSizeFunc, m_setSaveGameOffsetFunc;
	int64_t m_min;
	int64_t m_max;
	int64_t m_currentSave, m_currentTotal;
	float m_currentOffset;

	vector<pair<int64_t,float> > m_sizeAndOffsets;

public:
	UIControl_SpaceIndicatorBar();

	virtual bool setupControl(UIScene *scene, IggyValuePath *parent, const string &controlName);

	void init(const wstring &label, int id, int64_t min, int64_t max);
	virtual void ReInit();
	void reset();

	void addSave(int64_t size);
	void selectSave(int index);


private:
	void setSaveSize(int64_t size);
	void setTotalSize(int64_t totalSize);
	void setSaveGameOffset(float offset);
};