/* === M A C R O S ========================================================= */
+#define use_colorspace_gamma() App::use_colorspace_gamma
+#define colorspace_gamma() (2.2f)
+#define gamma_in(x) ((x>=0) ? pow((float)x,1.0f/colorspace_gamma()) : -pow((float)-x,1.0f/colorspace_gamma()))
+#define gamma_out(x) ((x>=0) ? pow((float)x, colorspace_gamma()) : -pow((float)-x, colorspace_gamma()))
+
#ifdef WIN32
#include <float.h>
#ifndef isnan
private:
value_type a_, r_, g_, b_;
- static String hex_;
public:
+ const String get_string(void)const;
+
Color &
operator+=(const Color &rhs)
{
static const String real2hex(ColorReal c);
//! Returns the color as a 6 character hex sting
- const String& get_hex()const { return hex_ = real2hex(r_)+real2hex(g_)+real2hex(b_); }
+ const String get_hex()const { return String(real2hex(r_)+real2hex(g_)+real2hex(b_)); }
//! Sets the color's R, G, and B from a 3 or 6 character hex string
void set_hex(String& hex);