#ifndef _COLOR_TOOLS_H
#define _COLOR_TOOLS_H

#include <interface/GraphicsDefs.h>
#include <interface/InterfaceDefs.h>

#ifndef B_BEOS_VERSION_DANO

namespace BExperimental {

inline rgb_color make_color(uint8 red, uint8 green, uint8 blue, uint8 alpha=255)
{
	rgb_color c;
	c.red = red;
	c.green = green;
	c.blue = blue;
	c.alpha = alpha;
	return c;
}

inline bool operator==(const rgb_color c1, const rgb_color c2)
{
	return (*((uint32*)&c1)) == (*((uint32*)&c2));
}

inline bool operator!=(const rgb_color c1, const rgb_color c2)
{
	return (*((uint32*)&c1)) != (*((uint32*)&c2));
}

rgb_color mix_color(const rgb_color color1, const rgb_color color2, uint8 amount);
rgb_color disable_color(const rgb_color color, const rgb_color background);

};

using namespace BExperimental;

#endif

#endif
