summaryrefslogtreecommitdiff
path: root/src/gui/interface/CopyTextButton.cpp
diff options
context:
space:
mode:
authorjacob1 <jfu614@gmail.com>2013-06-09 21:13:57 (GMT)
committer jacob1 <jfu614@gmail.com>2013-06-09 21:13:57 (GMT)
commit52ec8f438b6ce3373c9258cbde402b4caef92b1e (patch)
treef72ab1060435d30ed7781f463dbfb05bbcb50d91 /src/gui/interface/CopyTextButton.cpp
parenta6ee8e2af156e42fa3b5311afa4d3144d1566ca0 (diff)
downloadpowder-52ec8f438b6ce3373c9258cbde402b4caef92b1e.zip
powder-52ec8f438b6ce3373c9258cbde402b4caef92b1e.tar.gz
add the single saveID copytext button into the save preview too
Diffstat (limited to 'src/gui/interface/CopyTextButton.cpp')
-rw-r--r--src/gui/interface/CopyTextButton.cpp44
1 files changed, 44 insertions, 0 deletions
diff --git a/src/gui/interface/CopyTextButton.cpp b/src/gui/interface/CopyTextButton.cpp
new file mode 100644
index 0000000..8bdc2df
--- /dev/null
+++ b/src/gui/interface/CopyTextButton.cpp
@@ -0,0 +1,44 @@
+#include "CopyTextButton.h"
+#include "Colour.h"
+#include "gui/Style.h"
+
+namespace ui
+{
+ CopyTextButton::CopyTextButton(Point position, Point size, std::string buttonText, Label *copyTextLabel_):
+ Button(position, size, buttonText)
+ {
+ copyTextLabel = copyTextLabel_;
+ Appearance.HorizontalAlign = ui::Appearance::AlignCentre;
+ Appearance.VerticalAlign = ui::Appearance::AlignMiddle;
+ Appearance.TextInactive = ui::Colour(150, 150, 150);
+ Appearance.TextActive = ui::Colour(230, 255, 230);
+ Appearance.BorderActive = ui::Colour(230, 255, 230);
+ Appearance.BackgroundActive = style::Colour::InactiveBackground;
+ }
+
+ void CopyTextButton::OnMouseClick(int x, int y, unsigned int button)
+ {
+ ui::Button::OnMouseClick(x, y, button);
+ ClipboardPush((char*)ButtonText.c_str());
+
+ int textWidth = Graphics::textwidth("Copied!");
+ copyTextLabel->SetText("Copied!");
+
+ Appearance.TextInactive = ui::Colour(180, 230, 180);
+ Appearance.TextHover = ui::Colour(180, 230, 180);
+ Appearance.BorderInactive = ui::Colour(180, 230, 180);
+ Appearance.BorderHover = ui::Colour(180, 230, 180);
+ }
+
+ void CopyTextButton::OnMouseEnter(int x, int y)
+ {
+ ui::Button::OnMouseEnter(x, y);
+ copyTextLabel->SetTextColour(ui::Colour(230, 230, 230));
+ }
+
+ void CopyTextButton::OnMouseLeave(int x, int y)
+ {
+ ui::Button::OnMouseLeave(x, y);
+ copyTextLabel->SetTextColour(ui::Colour(150, 150, 150));
+ }
+} /* namespace ui */