[gnome-games] gnobots2: Remove deprecated GdkColor usage
- From: Robert Ancell <rancell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-games] gnobots2: Remove deprecated GdkColor usage
- Date: Sun, 5 Feb 2012 07:08:57 +0000 (UTC)
commit efb4e106a9b6c1b80c297fee895e8472f0dc5b2b
Author: Robert Ancell <robert ancell canonical com>
Date: Sun Feb 5 18:08:49 2012 +1100
gnobots2: Remove deprecated GdkColor usage
gnobots2/src/graphics.c | 31 ++++++++++++++++---------------
gnobots2/src/graphics.h | 2 +-
gnobots2/src/properties.c | 14 +++++++-------
3 files changed, 24 insertions(+), 23 deletions(-)
---
diff --git a/gnobots2/src/graphics.c b/gnobots2/src/graphics.c
index ed180a9..e0da667 100644
--- a/gnobots2/src/graphics.c
+++ b/gnobots2/src/graphics.c
@@ -52,8 +52,8 @@ static GamesPreimage *theme_preimage = NULL;
static GdkPixbuf *theme_pixbuf = NULL;
static gboolean rerender_needed = TRUE;
-static GdkColor light_background;
-static GdkColor dark_background;
+static GdkRGBA light_background;
+static GdkRGBA dark_background;
static GdkPixbuf *aieee_pixbuf = NULL;
static GdkPixbuf *yahoo_pixbuf = NULL;
@@ -281,9 +281,9 @@ set_game_graphics (gchar * name)
}
void
-set_background_color (GdkColor color)
+set_background_color (GdkRGBA color)
{
- guint32 brightness;
+ gdouble brightness;
if (game_area == NULL)
return;
@@ -292,20 +292,21 @@ set_background_color (GdkColor color)
* which actually depends on how light or dark the base colour is. */
brightness = color.red + color.green + color.blue;
- if (brightness > 0xe8ba) { /* 0xe8ba = 0x10000/1.1 */
+ if (brightness > (1.0 / 1.1)) {
/* Darken light colours. */
light_background.red = 0.9 * color.red;
light_background.green = 0.9 * color.green;
light_background.blue = 0.9 * color.blue;
- } else if (brightness > 0xa00) { /* Lighten darker colours. */
+ } else if (brightness > 0.04) { /* Lighten darker colours. */
light_background.red = 1.1 * color.red;
light_background.green = 1.1 * color.green;
light_background.blue = 1.1 * color.blue;
- } else { /* Very dark colours, add ratehr than multiply. */
- light_background.red += 0xa00;
- light_background.green += 0xa00;
- light_background.blue += 0xa00;
+ } else { /* Very dark colours, add rather than multiply. */
+ light_background.red += 0.04;
+ light_background.green += 0.04;
+ light_background.blue += 0.04;
}
+ light_background.alpha = 1.0;
dark_background = color;
@@ -315,13 +316,13 @@ set_background_color (GdkColor color)
void
set_background_color_from_name (gchar * name)
{
- GdkColor color;
+ GdkRGBA color;
if (name == NULL)
return;
- if (!gdk_color_parse (name, &color)) {
- gdk_color_parse ("#7590AE", &color);
+ if (!gdk_rgba_parse (&color, name)) {
+ gdk_rgba_parse (&color, "#7590AE");
}
set_background_color (color);
}
@@ -342,9 +343,9 @@ static void
draw_tile_pixmap (gint tileno, gint x, gint y, cairo_t * cr)
{
if ((x & 1) ^ (y & 1)) {
- gdk_cairo_set_source_color (cr, &dark_background);
+ gdk_cairo_set_source_rgba (cr, &dark_background);
} else {
- gdk_cairo_set_source_color (cr, &light_background);
+ gdk_cairo_set_source_rgba (cr, &light_background);
}
x *= tile_width;
diff --git a/gnobots2/src/graphics.h b/gnobots2/src/graphics.h
index 4e18767..936c002 100644
--- a/gnobots2/src/graphics.h
+++ b/gnobots2/src/graphics.h
@@ -14,7 +14,7 @@ gboolean load_game_graphics (void);
gboolean free_game_graphics (void);
gint num_game_graphics (void);
void set_game_graphics (gchar *);
-void set_background_color (GdkColor color);
+void set_background_color (GdkRGBA color);
void set_background_color_from_name (gchar * name);
void add_yahoo_bubble (gint, gint);
diff --git a/gnobots2/src/properties.c b/gnobots2/src/properties.c
index e8898a3..34e3aa0 100644
--- a/gnobots2/src/properties.c
+++ b/gnobots2/src/properties.c
@@ -76,7 +76,7 @@ struct _GnobotsProperties {
gboolean super_safe_moves;
gboolean sound;
gboolean show_toolbar;
- GdkColor bgcolour;
+ GdkRGBA bgcolour;
gint selected_config;
guint keys[N_KEYS];
gchar *themename;
@@ -116,7 +116,7 @@ static void safe_cb (GtkWidget *, gpointer);
static void sound_cb (GtkWidget *, gpointer);
static void defkey_cb (GtkWidget *, gpointer);
static void fill_typemenu (GtkWidget *);
-static void conf_set_background_color (GdkColor * c);
+static void conf_set_background_color (GdkRGBA * c);
/**********************************************************************/
@@ -379,7 +379,7 @@ make_theme_menu (void)
static void
bg_color_callback (GtkWidget * widget, gpointer data)
{
- gtk_color_button_get_color (GTK_COLOR_BUTTON (widget),
+ gtk_color_button_get_rgba (GTK_COLOR_BUTTON (widget),
&properties.bgcolour);
set_background_color (properties.bgcolour);
clear_game_area ();
@@ -526,7 +526,7 @@ show_properties_dialog (void)
gtk_grid_attach (GTK_GRID (grid), label, 0, 1, 1, 1);
w = gtk_color_button_new ();
- gtk_color_button_set_color (GTK_COLOR_BUTTON (w), &properties.bgcolour);
+ gtk_color_button_set_rgba (GTK_COLOR_BUTTON (w), &properties.bgcolour);
g_signal_connect (G_OBJECT (w), "color_set",
G_CALLBACK (bg_color_callback), NULL);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), w);
@@ -604,7 +604,7 @@ load_properties (void)
load_keys ();
bgcolour = g_settings_get_string (settings, KEY_BACKGROUND_COLOR);
- gdk_color_parse (bgcolour, &properties.bgcolour);
+ gdk_rgba_parse (&properties.bgcolour, bgcolour);
set_background_color (properties.bgcolour);
properties.themename = g_settings_get_string (settings, KEY_THEME);
@@ -657,11 +657,11 @@ conf_set_theme (gchar * value)
}
static void
-conf_set_background_color (GdkColor * c)
+conf_set_background_color (GdkRGBA * c)
{
char colour[64];
- g_snprintf (colour, sizeof (colour), "#%04x%04x%04x", c->red, c->green, c->blue);
+ g_snprintf (colour, sizeof (colour), "#%04x%04x%04x", (int) (c->red * 65535 + 0.5), (int) (c->green * 65535 + 0.5), (int) (c->blue * 65535 + 0.5));
g_settings_set_string (settings, KEY_BACKGROUND_COLOR, colour);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]