7
#include "Precompiled.h"
8
#include "GridManager.h"
9
#include "SettingsManager.h"
11
template <> tools::GridManager* MyGUI::Singleton<tools::GridManager>::msInstance = nullptr;
12
template <> const char* MyGUI::Singleton<tools::GridManager>::mClassTypeName = "GridManager";
17
GridManager::GridManager() :
22
GridManager::~GridManager()
26
void GridManager::initialise()
28
mGridStep = SettingsManager::getInstance().getValue<int>("Settings/GridStep");
29
SettingsManager::getInstance().eventSettingsChanged.connect(this, &GridManager::notifySettingsChanged);
32
void GridManager::shutdown()
34
SettingsManager::getInstance().eventSettingsChanged.disconnect(this);
37
void GridManager::notifySettingsChanged(const std::string& _path)
39
if (_path == "Settings/GridStep")
41
mGridStep = SettingsManager::getInstance().getValue<int>("Settings/GridStep");
45
int GridManager::toGrid(int _value, GridLine _line) const
51
return (_value + mGridStep / 2) / mGridStep * mGridStep;
52
else if (_line == Previous)
53
return (_value - 1) / mGridStep * mGridStep;
54
else if (_line == Next)
55
return (_value + mGridStep) / mGridStep * mGridStep;