From fc25e074acf44343e58d26accf6a317b6363a416 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Wed, 10 Jun 2020 14:10:52 -0600 Subject: [PATCH] add Gtkmm2ext::random_color() --- libs/gtkmm2ext/colors.cc | 7 +++++++ libs/gtkmm2ext/gtkmm2ext/colors.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/libs/gtkmm2ext/colors.cc b/libs/gtkmm2ext/colors.cc index a072cc4996..b2534b60be 100644 --- a/libs/gtkmm2ext/colors.cc +++ b/libs/gtkmm2ext/colors.cc @@ -21,6 +21,7 @@ #include #include #include +#include #include "pbd/failed_constructor.h" #include "pbd/string_convert.h" @@ -698,3 +699,9 @@ Gtkmm2ext::set_source_rgb_a (cairo_t *cr, Color color, float alpha) alpha ); } + +Color +Gtkmm2ext::random_color () +{ + return ((random() % 16777215) << 8 | 0xff); +} diff --git a/libs/gtkmm2ext/gtkmm2ext/colors.h b/libs/gtkmm2ext/gtkmm2ext/colors.h index 426a51aa44..56707cb509 100644 --- a/libs/gtkmm2ext/gtkmm2ext/colors.h +++ b/libs/gtkmm2ext/gtkmm2ext/colors.h @@ -31,6 +31,8 @@ namespace Gtkmm2ext typedef uint32_t Color; +extern LIBGTKMM2EXT_API Color random_color (); + /* conventient way to use Gtkmm2ext::Color with libcairo */ extern LIBGTKMM2EXT_API void set_source_rgba (Cairo::RefPtr, Gtkmm2ext::Color); extern LIBGTKMM2EXT_API void set_source_rgb_a (Cairo::RefPtr, Gtkmm2ext::Color, float alpha); //override the color's alpha