use italic font if not in user-override mode.

2007-08-13  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpnumberpairentry.c: use italic font if not in
	user-override mode.

	* app/tools/gimprectangleoptions.c: removed auto-mode icon.

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-auto-mode-16.png
	* libgimpwidgets/gimpnumberpairentry.[ch]: removed
	GIMP_STOCK_AUTO_MODE.


svn path=/trunk/; revision=23231
This commit is contained in:
Sven Neumann
2007-08-13 09:25:27 +00:00
committed by Sven Neumann
parent b4a5338865
commit 5df43c2cbb
7 changed files with 67 additions and 57 deletions

View File

@ -86,6 +86,9 @@ typedef struct
*/
gboolean user_override;
/* Is the font style currently set to ITALIC or NORMAL ? */
gboolean font_italic;
/* What separators that are valid when parsing input, e.g. when the
* widget is used for aspect ratio, valid separators are typically
* ':' and '/'.
@ -123,6 +126,7 @@ static void gimp_number_pair_entry_get_property (GObject
guint property_id,
GValue *value,
GParamSpec *pspec);
static void gimp_number_pair_entry_changed (GimpNumberPairEntry *entry);
static gboolean gimp_number_pair_entry_events (GtkWidget *widgett,
GdkEvent *event);
@ -276,12 +280,16 @@ gimp_number_pair_entry_init (GimpNumberPairEntry *entry)
priv->default_left_number = 1.0;
priv->default_right_number = 1.0;
priv->user_override = FALSE;
priv->font_italic = FALSE;
priv->separators = NULL;
priv->num_separators = 0;
priv->allow_simplification = FALSE;
priv->min_valid_value = G_MINDOUBLE;
priv->max_valid_value = G_MAXDOUBLE;
g_signal_connect (entry, "changed",
G_CALLBACK (gimp_number_pair_entry_changed),
NULL);
g_signal_connect (entry, "focus-out-event",
G_CALLBACK (gimp_number_pair_entry_events),
NULL);
@ -636,6 +644,35 @@ gimp_number_pair_entry_get_aspect (GimpNumberPairEntry *entry)
}
}
static void
gimp_number_pair_entry_modify_font (GimpNumberPairEntry *entry,
gboolean italic)
{
GimpNumberPairEntryPrivate *priv = GIMP_NUMBER_PAIR_ENTRY_GET_PRIVATE (entry);
GtkRcStyle *rc_style;
if (priv->font_italic == italic)
return;
rc_style = gtk_widget_get_modifier_style (GTK_WIDGET (entry));
if (! rc_style->font_desc)
{
PangoContext *context = gtk_widget_get_pango_context (GTK_WIDGET (entry));
rc_style->font_desc = pango_font_description_copy (pango_context_get_font_description (context));
}
pango_font_description_set_style (rc_style->font_desc,
italic ?
PANGO_STYLE_ITALIC : PANGO_STYLE_NORMAL);
gtk_widget_modify_style (GTK_WIDGET (entry), rc_style);
priv->font_italic = italic;
}
/**
* gimp_number_pair_entry_set_user_override:
* @entry: A #GimpNumberPairEntry widget.
@ -660,13 +697,15 @@ gimp_number_pair_entry_set_user_override (GimpNumberPairEntry *entry,
priv->user_override = user_override;
if (!priv->user_override)
if (! user_override)
{
gimp_number_pair_entry_set_default_values (entry,
priv->default_left_number,
priv->default_right_number);
}
gimp_number_pair_entry_modify_font (entry, ! user_override);
g_object_notify (G_OBJECT (entry), "user-override");
}
@ -690,6 +729,12 @@ gimp_number_pair_entry_get_user_override (GimpNumberPairEntry *entry)
return priv->user_override;
}
static void
gimp_number_pair_entry_changed (GimpNumberPairEntry *entry)
{
gimp_number_pair_entry_modify_font (entry, FALSE);
}
static gboolean
gimp_number_pair_entry_events (GtkWidget *widget,
GdkEvent *event)
@ -824,9 +869,14 @@ gimp_number_pair_entry_update_text (GimpNumberPairEntry *entry)
buffer = gimp_number_pair_entry_strdup_number_pair_string (entry,
priv->left_number,
priv->right_number);
gtk_entry_set_text (GTK_ENTRY (entry), buffer);
g_signal_handlers_block_by_func (entry,
gimp_number_pair_entry_changed, NULL);
gtk_entry_set_text (GTK_ENTRY (entry), buffer);
g_free (buffer);
g_signal_handlers_unblock_by_func (entry,
gimp_number_pair_entry_changed, NULL);
}
static gboolean

View File

@ -176,8 +176,6 @@ static const GtkStockItem gimp_stock_items[] =
{ GIMP_STOCK_TEXT_DIR_RTL, NULL, 0, 0, LIBGIMP_DOMAIN },
{ GIMP_STOCK_PRINT_RESOLUTION, NULL, 0, 0, LIBGIMP_DOMAIN },
{ GIMP_STOCK_AUTO_MODE, NULL, 0, 0, LIBGIMP_DOMAIN },
{ GIMP_STOCK_CONVERT_RGB, NULL, 0, 0, LIBGIMP_DOMAIN },
{ GIMP_STOCK_CONVERT_GRAYSCALE, NULL, 0, 0, LIBGIMP_DOMAIN },
{ GIMP_STOCK_CONVERT_INDEXED, NULL, 0, 0, LIBGIMP_DOMAIN },
@ -491,8 +489,6 @@ gimp_stock_menu_pixbufs[] =
{
{ GIMP_STOCK_CENTER, stock_center_16 },
{ GIMP_STOCK_AUTO_MODE, stock_auto_mode_16 },
{ GIMP_STOCK_CONVERT_RGB, stock_convert_rgb_16 },
{ GIMP_STOCK_CONVERT_GRAYSCALE, stock_convert_grayscale_16 },
{ GIMP_STOCK_CONVERT_INDEXED, stock_convert_indexed_16 },

View File

@ -142,8 +142,6 @@ G_BEGIN_DECLS
/* in menu size: */
#define GIMP_STOCK_AUTO_MODE "gimp-auto-mode"
#define GIMP_STOCK_CONVERT_RGB "gimp-convert-rgb"
#define GIMP_STOCK_CONVERT_GRAYSCALE "gimp-convert-grayscale"
#define GIMP_STOCK_CONVERT_INDEXED "gimp-convert-indexed"