diff options
Diffstat (limited to 'src/interface')
| -rw-r--r-- | src/interface/Button.cpp | 17 | ||||
| -rw-r--r-- | src/interface/Button.h | 2 |
2 files changed, 16 insertions, 3 deletions
diff --git a/src/interface/Button.cpp b/src/interface/Button.cpp index e0f5172..2694de5 100644 --- a/src/interface/Button.cpp +++ b/src/interface/Button.cpp @@ -26,7 +26,10 @@ Button::Button(Window* parent_state, std::string buttonText): textPosition(ui::Point(0, 0)), textVAlign(AlignMiddle), textHAlign(AlignCentre), - Enabled(true) + Enabled(true), + colr(0), + colg(0), + colb(0) { TextPosition(); } @@ -42,7 +45,10 @@ Button::Button(Point position, Point size, std::string buttonText): textPosition(ui::Point(0, 0)), textVAlign(AlignMiddle), textHAlign(AlignCentre), - Enabled(true) + Enabled(true), + colr(0), + colg(0), + colb(0) { TextPosition(); } @@ -58,7 +64,10 @@ Button::Button(std::string buttonText): textPosition(ui::Point(0, 0)), textVAlign(AlignMiddle), textHAlign(AlignCentre), - Enabled(true) + Enabled(true), + colr(0), + colg(0), + colb(0) { TextPosition(); } @@ -135,6 +144,8 @@ void Button::Draw(const Point& screenPos) { if(isMouseInside) g->fillrect(Position.X, Position.Y, Size.X, Size.Y, 20, 20, 20, 255); + else + g->fillrect(Position.X, Position.Y, Size.X, Size.Y, colr, colg, colb, 255); g->drawrect(Position.X, Position.Y, Size.X, Size.Y, 255, 255, 255, 255); g->drawtext(Position.X+textPosition.X, Position.Y+textPosition.Y, ButtonText, 255, 255, 255, 255); } diff --git a/src/interface/Button.h b/src/interface/Button.h index a137aac..bff54c9 100644 --- a/src/interface/Button.h +++ b/src/interface/Button.h @@ -59,7 +59,9 @@ public: HorizontalAlignment GetHAlignment() { return textHAlign; } VerticalAlignment GetVAlignment() { return textVAlign; } void SetAlignment(HorizontalAlignment hAlign, VerticalAlignment vAlign) { textHAlign = hAlign; textVAlign = vAlign; TextPosition(); } + void SetBackgroundColour(int colr, int colg, int colb) { this->colr = colr; this->colg = colg; this->colb = colb; } protected: + int colr, colg, colb; bool isButtonDown, state, isMouseInside, isTogglable, toggle; ButtonAction * actionCallback; ui::Point textPosition; |
