diff --git a/aegisub/libaegisub/common/color.cpp b/aegisub/libaegisub/common/color.cpp index 1822779115b1cd8b11a77c599e466e9555902af7..027632effcd92c131146cab6f4435bc49e3043ac 100644 --- a/aegisub/libaegisub/common/color.cpp +++ b/aegisub/libaegisub/common/color.cpp @@ -43,7 +43,9 @@ std::string Color::GetSsaFormatted() const { return boost::lexical_cast<std::string>((a << 24) + (b << 16) + (g << 8) + r); } -std::string Color::GetHexFormatted() const { +std::string Color::GetHexFormatted(bool rgba) const { + if (rgba) + return str(boost::format("#%02X%02X%02X%02X") % (int)r % (int)g % (int)b % (int)a); return str(boost::format("#%02X%02X%02X") % (int)r % (int)g % (int)b); } diff --git a/aegisub/libaegisub/include/libaegisub/color.h b/aegisub/libaegisub/include/libaegisub/color.h index b45b58fb93c24b85bea2bfa0e1a6f8b4ed9eeaa0..7b415b0eada7cf00f085b1cac7220821112243ef 100644 --- a/aegisub/libaegisub/include/libaegisub/color.h +++ b/aegisub/libaegisub/include/libaegisub/color.h @@ -33,7 +33,7 @@ namespace agi { std::string GetAssStyleFormatted() const; std::string GetAssOverrideFormatted() const; std::string GetSsaFormatted() const; - std::string GetHexFormatted() const; + std::string GetHexFormatted(bool rgba=false) const; std::string GetRgbFormatted() const; operator std::string() const { return GetRgbFormatted(); } diff --git a/aegisub/src/auto4_lua_dialog.cpp b/aegisub/src/auto4_lua_dialog.cpp index 2b60282c83447b1669e575cc4d2938bda532468f..2ae6d3fd2eca82a4e2cccb124754d0e74d6a1189 100644 --- a/aegisub/src/auto4_lua_dialog.cpp +++ b/aegisub/src/auto4_lua_dialog.cpp @@ -206,7 +206,7 @@ namespace Automation4 { } bool CanSerialiseValue() const override { return true; } - std::string SerialiseValue() const override { return inline_string_encode(color.GetHexFormatted()); } + std::string SerialiseValue() const override { return inline_string_encode(color.GetHexFormatted(alpha)); } void UnserialiseValue(const std::string &serialised) override { color = inline_string_decode(serialised); } wxControl *Create(wxWindow *parent) override { @@ -216,7 +216,7 @@ namespace Automation4 { } void LuaReadBack(lua_State *L) override { - lua_pushstring(L, color.GetHexFormatted().c_str()); + lua_pushstring(L, color.GetHexFormatted(alpha).c_str()); } };