summaryrefslogtreecommitdiff
path: root/src/util/string.cpp
diff options
context:
space:
mode:
authorThomas--S <Thomas--S@users.noreply.github.com>2018-04-23 19:50:50 +0200
committerrubenwardy <rw@rubenwardy.com>2018-04-23 18:50:50 +0100
commit9577a4396aa139a748878a11eec8922ce92de575 (patch)
treeef2f879b20af3ef260397492dfa24ebdced5c3c7 /src/util/string.cpp
parent12a8f8826d54362d70aae8524aa88118f2d84692 (diff)
downloadminetest-9577a4396aa139a748878a11eec8922ce92de575.tar.gz
minetest-9577a4396aa139a748878a11eec8922ce92de575.tar.bz2
minetest-9577a4396aa139a748878a11eec8922ce92de575.zip
Formspecs: Allow setting alpha value for the box[] element
Diffstat (limited to 'src/util/string.cpp')
-rw-r--r--src/util/string.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/util/string.cpp b/src/util/string.cpp
index 3eabcbe11..25f573420 100644
--- a/src/util/string.cpp
+++ b/src/util/string.cpp
@@ -43,7 +43,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#define BSD_ICONV_USED
#endif
-static bool parseHexColorString(const std::string &value, video::SColor &color);
+static bool parseHexColorString(const std::string &value, video::SColor &color,
+ unsigned char default_alpha = 0xff);
static bool parseNamedColorString(const std::string &value, video::SColor &color);
#ifndef _WIN32
@@ -464,12 +465,13 @@ u64 read_seed(const char *str)
return num;
}
-bool parseColorString(const std::string &value, video::SColor &color, bool quiet)
+bool parseColorString(const std::string &value, video::SColor &color, bool quiet,
+ unsigned char default_alpha)
{
bool success;
if (value[0] == '#')
- success = parseHexColorString(value, color);
+ success = parseHexColorString(value, color, default_alpha);
else
success = parseNamedColorString(value, color);
@@ -479,9 +481,10 @@ bool parseColorString(const std::string &value, video::SColor &color, bool quiet
return success;
}
-static bool parseHexColorString(const std::string &value, video::SColor &color)
+static bool parseHexColorString(const std::string &value, video::SColor &color,
+ unsigned char default_alpha)
{
- unsigned char components[] = { 0x00, 0x00, 0x00, 0xff }; // R,G,B,A
+ unsigned char components[] = { 0x00, 0x00, 0x00, default_alpha }; // R,G,B,A
if (value[0] != '#')
return false;