/*
* Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 2001-2007 Hiroyuki Yamamoto & The Claws Mail Team
+ * Copyright (C) 2001-2009 Hiroyuki Yamamoto & The Claws Mail Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#include <glib.h>
#include <glib/gi18n.h>
#include <gtk/gtk.h>
-#include <gtk/gtkwidget.h>
-#include <gtk/gtkimage.h>
-#include <gtk/gtkmenu.h>
-#include <gtk/gtkcheckmenuitem.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtkmenuitem.h>
-#include <gtk/gtkalignment.h>
-#include <gtk/gtkhbox.h>
-#include <gtk/gtkvbox.h>
-#include <gtk/gtkwindow.h>
-#include <gtk/gtkdrawingarea.h>
+#include <gdk/gdkkeysyms.h>
#include "colorlabel.h"
#include "utils.h"
#define LABEL_COLORS_ELEMS (sizeof label_colors[0] / sizeof label_colors[0][0])
#define G_RETURN_VAL_IF_INVALID_COLOR(color, val) \
- g_return_val_if_fail((color) >= 0 && (color) < LABEL_COLORS_ELEMS, (val))
+ do if ((color) < 0 || (color) >= LABEL_COLORS_ELEMS) { \
+ return val; \
+ } while(0)
#define INTCOLOR_TO_GDKCOLOR(intcolor, gdkcolor) \
gdkcolor.red = ((intcolor >> 16UL) & 0xFFUL) << 8UL; \
TRUE, 1, 1, widget->allocation.width - 2,
widget->allocation.height - 2);
- gdk_gc_unref(gc);
+ g_object_unref(gc);
return FALSE;
}
continue;
widget = colorlabel_create_color_widget(label_colors[i][color].color);
- g_return_if_fail(widget);
+ cm_return_if_fail(widget);
if (label_colors[i][color].widget)
gtk_widget_destroy(label_colors[i][color].widget);
gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 4);
if (color_index < 9) {
- accel = g_strdup_printf(gettext("Ctrl+%c"), '1'+color_index);
+ accel = gtk_accelerator_get_label(GDK_1+color_index, GDK_CONTROL_MASK);
label = gtk_label_new(accel);
gtk_widget_show(label);
gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5);
g_free(accel);
gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 4);
+ g_object_set_data(G_OBJECT(item), "accel_label", label);
+ } else {
+ label = gtk_label_new("");
+ gtk_widget_show(label);
+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5);
+ gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 4);
+ g_object_set_data(G_OBJECT(item), "accel_label", label);
}
return item;
}
g_object_set_data(G_OBJECT(item), "color", GUINT_TO_POINTER(0));
gtk_widget_show(item);
+ item = gtk_separator_menu_item_new();
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
+ gtk_widget_show(item);
+
/* and the color items */
for (i = 0; i < LABEL_COLORS_ELEMS; i++) {
GtkWidget *hbox;