/
BrushSettings.h
53 lines (41 loc) · 908 Bytes
/
BrushSettings.h
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#pragma once
#include "ibrush.h"
#include "math/Vector3.h"
namespace brush
{
class BrushSettings :
public IBrushSettings
{
private:
Vector3 _vertexColour;
Vector3 _selectedVertexColour;
sigc::signal<void> _signalSettingsChanged;
public:
BrushSettings() :
_vertexColour(0, 1, 0),
_selectedVertexColour(0, 0, 1)
{}
const Vector3& getVertexColour() const override
{
return _vertexColour;
}
void setVertexColour(const Vector3& colour) override
{
_vertexColour = colour;
_signalSettingsChanged.emit();
}
const Vector3& getSelectedVertexColour() const override
{
return _selectedVertexColour;
}
void setSelectedVertexColour(const Vector3& colour) override
{
_selectedVertexColour = colour;
_signalSettingsChanged.emit();
}
sigc::signal<void>& signal_settingsChanged() override
{
return _signalSettingsChanged;
}
};
}