c++11 tidying.
[libsub.git] / src / colour.cc
index f1634246a497461e9f013777c1cd83ff9ba66fda..a47e63347a1f48d035ff3574c69e678baea25b92 100644 (file)
 using std::string;
 using namespace sub;
 
-Colour::Colour (string argb_hex)
+Colour
+Colour::from_argb_hex (string argb_hex)
 {
        int alpha, ir, ig, ib;
        if (sscanf (argb_hex.c_str(), "%2x%2x%2x%2x", &alpha, &ir, &ig, &ib) < 4) {
                throw XMLError ("could not parse colour string");
        }
 
-       r = float (ir) / 255;
-       g = float (ig) / 255;
-       b = float (ib) / 255;
+       return Colour (float (ir) / 255, float (ig) / 255, float (ib) / 255);
+}
+
+Colour
+Colour::from_rgb_hex (string rgb_hex)
+{
+       int ir, ig, ib;
+       if (sscanf (rgb_hex.c_str(), "%2x%2x%2x", &ir, &ig, &ib) < 3) {
+               throw XMLError ("could not parse colour string");
+       }
+
+       return Colour (float (ir) / 255, float (ig) / 255, float (ib) / 255);
 }
 
 bool