-void config_set_sensor_color(const char *sid, const struct color *color)
-{
- char *scolor;
-
- scolor = color_to_str(color);
+void config_set_sensor_color(const char *sid, const GdkRGBA *color)
+{
+ gchar *str;
+
+ str = gdk_rgba_to_string(color);
+
+ sensor_set_str(sid, ATT_SENSOR_COLOR, str);
+
+ g_free(str);
+}
+
+static const char *next_default_color(void)
+{
+ /* copied from the default colors of the gtk color color
+ * chooser. */
+ const char *default_colors[27] = {
+ "#ef2929", /* Scarlet Red */
+ "#fcaf3e", /* Orange */
+ "#fce94f", /* Butter */
+ "#8ae234", /* Chameleon */
+ "#729fcf", /* Sky Blue */
+ "#ad7fa8", /* Plum */
+ "#e9b96e", /* Chocolate */
+ "#888a85", /* Aluminum 1 */
+ "#eeeeec", /* Aluminum 2 */
+ "#cc0000",
+ "#f57900",
+ "#edd400",
+ "#73d216",
+ "#3465a4",
+ "#75507b",
+ "#c17d11",
+ "#555753",
+ "#d3d7cf",
+ "#a40000",
+ "#ce5c00",
+ "#c4a000",
+ "#4e9a06",
+ "#204a87",
+ "#5c3566",
+ "#8f5902",
+ "#2e3436",
+ "#babdb6"
+ };
+ static int next_idx;
+ const char *c;
+
+ c = default_colors[next_idx % 27];
+
+ next_idx++;