canvas HSV color serialization needs LocaleGuard
[ardour.git] / libs / canvas / canvas / utils.h
index 9db677b61b6ce7d8c00257f1d42ce38831988abb..97bbfb8fb84d38f1025232c85346a75616d9da0d 100644 (file)
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */
 
+#include <cairomm/context.h>
+
+#include "canvas/visibility.h"
 #include "canvas/types.h"
 
 namespace ArdourCanvas {
 
-       extern void color_to_hsv (Color color, double& h, double& s, double& v);
-       extern Color hsv_to_color (double h, double s, double v, double a);
+       extern LIBCANVAS_API void set_source_rgba (Cairo::RefPtr<Cairo::Context>, Color);
+       extern LIBCANVAS_API void set_source_rgb_a (Cairo::RefPtr<Cairo::Context>, Color, float alpha);  //override the color's alpha
 
-       extern void color_to_rgba (Color, double& r, double& g, double& b, double& a);
-       extern Color rgba_to_color (double r, double g, double b, double a);
+       extern LIBCANVAS_API void set_source_rgba (cairo_t*, Color);
+       extern LIBCANVAS_API void set_source_rgb_a (cairo_t*, Color, float alpha);  //override the color's alpha
 
-       extern void set_source_rgba (Cairo::RefPtr<Cairo::Context>, Color);
+       Distance LIBCANVAS_API distance_to_segment_squared (Duple const & p, Duple const & p1, Duple const & p2, double& t, Duple& at);
 }