sync with upstream
2007-09-01 Jens Granseuer <jensgr@gmx.net> * gedit-message-area.c: (gedit_message_area_init): sync with upstream svn path=/trunk/; revision=8064
This commit is contained in:
parent
c7c319f8af
commit
d36b3dbdd7
2 changed files with 75 additions and 71 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2007-09-01 Jens Granseuer <jensgr@gmx.net>
|
||||||
|
|
||||||
|
* gedit-message-area.c: (gedit_message_area_init): sync with upstream
|
||||||
|
|
||||||
2007-09-01 Jens Granseuer <jensgr@gmx.net>
|
2007-09-01 Jens Granseuer <jensgr@gmx.net>
|
||||||
|
|
||||||
* appearance-font.c: (font_render_load), (cb_show_details): break out
|
* appearance-font.c: (font_render_load), (cb_show_details): break out
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* gedit-message-area.c
|
* gedit-message-area.c
|
||||||
* This file is part of gedit
|
* This file is part of gedit
|
||||||
*
|
*
|
||||||
* Copyright (C) 2005 - Paolo Maggi
|
* Copyright (C) 2005 - Paolo Maggi
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
@ -16,20 +16,20 @@
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place, Suite 330,
|
* Foundation, Inc., 59 Temple Place, Suite 330,
|
||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Modified by the gedit Team, 2005. See the AUTHORS file for a
|
* Modified by the gedit Team, 2005. See the AUTHORS file for a
|
||||||
* list of people on the gedit Team.
|
* list of people on the gedit Team.
|
||||||
* See the ChangeLog files for a list of changes.
|
* See the ChangeLog files for a list of changes.
|
||||||
*
|
*
|
||||||
* $Id: gedit-message-area.c 5080 2006-08-09 15:17:37Z pborelli $
|
* $Id: gedit-message-area.c 5080 2006-08-09 15:17:37Z pborelli $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* TODO: Style properties */
|
/* TODO: Style properties */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -41,15 +41,17 @@
|
||||||
|
|
||||||
#include "gedit-message-area.h"
|
#include "gedit-message-area.h"
|
||||||
|
|
||||||
#define GEDIT_MESSAGE_AREA_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), GEDIT_TYPE_MESSAGE_AREA, GeditMessageAreaPrivate))
|
#define GEDIT_MESSAGE_AREA_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), \
|
||||||
|
GEDIT_TYPE_MESSAGE_AREA, \
|
||||||
|
GeditMessageAreaPrivate))
|
||||||
|
|
||||||
struct _GeditMessageAreaPrivate
|
struct _GeditMessageAreaPrivate
|
||||||
{
|
{
|
||||||
GtkWidget *main_hbox;
|
GtkWidget *main_hbox;
|
||||||
|
|
||||||
GtkWidget *contents;
|
GtkWidget *contents;
|
||||||
GtkWidget *action_area;
|
GtkWidget *action_area;
|
||||||
|
|
||||||
gboolean changing_style;
|
gboolean changing_style;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -71,12 +73,11 @@ static guint signals[LAST_SIGNAL];
|
||||||
G_DEFINE_TYPE(GeditMessageArea, gedit_message_area, GTK_TYPE_HBOX)
|
G_DEFINE_TYPE(GeditMessageArea, gedit_message_area, GTK_TYPE_HBOX)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gedit_message_area_finalize (GObject *object)
|
gedit_message_area_finalize (GObject *object)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
GeditMessageArea *message_area = GEDIT_MESSAGE_AREA (object);
|
GeditMessageArea *message_area = GEDIT_MESSAGE_AREA (object);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
G_OBJECT_CLASS (gedit_message_area_parent_class)->finalize (object);
|
G_OBJECT_CLASS (gedit_message_area_parent_class)->finalize (object);
|
||||||
|
@ -108,14 +109,14 @@ find_button (GeditMessageArea *message_area,
|
||||||
{
|
{
|
||||||
GList *children, *tmp_list;
|
GList *children, *tmp_list;
|
||||||
GtkWidget *child = NULL;
|
GtkWidget *child = NULL;
|
||||||
|
|
||||||
children = gtk_container_get_children (
|
children = gtk_container_get_children (
|
||||||
GTK_CONTAINER (message_area->priv->action_area));
|
GTK_CONTAINER (message_area->priv->action_area));
|
||||||
|
|
||||||
for (tmp_list = children; tmp_list; tmp_list = tmp_list->next)
|
for (tmp_list = children; tmp_list; tmp_list = tmp_list->next)
|
||||||
{
|
{
|
||||||
ResponseData *rd = get_response_data (tmp_list->data, FALSE);
|
ResponseData *rd = get_response_data (tmp_list->data, FALSE);
|
||||||
|
|
||||||
if (rd && rd->response_id == response_id)
|
if (rd && rd->response_id == response_id)
|
||||||
{
|
{
|
||||||
child = tmp_list->data;
|
child = tmp_list->data;
|
||||||
|
@ -135,8 +136,8 @@ gedit_message_area_close (GeditMessageArea *message_area)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* emit response signal */
|
/* emit response signal */
|
||||||
gedit_message_area_response (GEDIT_MESSAGE_AREA (message_area),
|
gedit_message_area_response (GEDIT_MESSAGE_AREA (message_area),
|
||||||
GTK_RESPONSE_CANCEL);
|
GTK_RESPONSE_CANCEL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
@ -144,7 +145,7 @@ paint_message_area (GtkWidget *widget,
|
||||||
GdkEventExpose *event,
|
GdkEventExpose *event,
|
||||||
gpointer user_data)
|
gpointer user_data)
|
||||||
{
|
{
|
||||||
gtk_paint_flat_box (widget->style,
|
gtk_paint_flat_box (widget->style,
|
||||||
widget->window,
|
widget->window,
|
||||||
GTK_STATE_NORMAL,
|
GTK_STATE_NORMAL,
|
||||||
GTK_SHADOW_OUT,
|
GTK_SHADOW_OUT,
|
||||||
|
@ -155,8 +156,8 @@ paint_message_area (GtkWidget *widget,
|
||||||
widget->allocation.y,
|
widget->allocation.y,
|
||||||
widget->allocation.width,
|
widget->allocation.width,
|
||||||
widget->allocation.height);
|
widget->allocation.height);
|
||||||
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -165,12 +166,12 @@ style_set (GtkWidget *widget,
|
||||||
{
|
{
|
||||||
GtkTooltips *tooltips;
|
GtkTooltips *tooltips;
|
||||||
GtkStyle *style;
|
GtkStyle *style;
|
||||||
|
|
||||||
GeditMessageArea *message_area = GEDIT_MESSAGE_AREA (widget);
|
GeditMessageArea *message_area = GEDIT_MESSAGE_AREA (widget);
|
||||||
|
|
||||||
if (message_area->priv->changing_style)
|
if (message_area->priv->changing_style)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
tooltips = gtk_tooltips_new ();
|
tooltips = gtk_tooltips_new ();
|
||||||
g_object_ref_sink (tooltips);
|
g_object_ref_sink (tooltips);
|
||||||
|
|
||||||
|
@ -182,25 +183,25 @@ style_set (GtkWidget *widget,
|
||||||
|
|
||||||
message_area->priv->changing_style = TRUE;
|
message_area->priv->changing_style = TRUE;
|
||||||
gtk_widget_set_style (GTK_WIDGET (widget), style);
|
gtk_widget_set_style (GTK_WIDGET (widget), style);
|
||||||
message_area->priv->changing_style = FALSE;
|
message_area->priv->changing_style = FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_object_unref (tooltips);
|
g_object_unref (tooltips);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gedit_message_area_class_init (GeditMessageAreaClass *klass)
|
gedit_message_area_class_init (GeditMessageAreaClass *klass)
|
||||||
{
|
{
|
||||||
GObjectClass *object_class;
|
GObjectClass *object_class;
|
||||||
GtkWidgetClass *widget_class;
|
GtkWidgetClass *widget_class;
|
||||||
GtkBindingSet *binding_set;
|
GtkBindingSet *binding_set;
|
||||||
|
|
||||||
object_class = G_OBJECT_CLASS (klass);
|
object_class = G_OBJECT_CLASS (klass);
|
||||||
widget_class = GTK_WIDGET_CLASS (klass);
|
widget_class = GTK_WIDGET_CLASS (klass);
|
||||||
object_class->finalize = gedit_message_area_finalize;
|
object_class->finalize = gedit_message_area_finalize;
|
||||||
|
|
||||||
widget_class->style_set = style_set;
|
widget_class->style_set = style_set;
|
||||||
|
|
||||||
klass->close = gedit_message_area_close;
|
klass->close = gedit_message_area_close;
|
||||||
|
|
||||||
g_type_class_add_private (object_class, sizeof(GeditMessageAreaPrivate));
|
g_type_class_add_private (object_class, sizeof(GeditMessageAreaPrivate));
|
||||||
|
@ -221,9 +222,9 @@ gedit_message_area_class_init (GeditMessageAreaClass *klass)
|
||||||
NULL, NULL,
|
NULL, NULL,
|
||||||
g_cclosure_marshal_VOID__VOID,
|
g_cclosure_marshal_VOID__VOID,
|
||||||
G_TYPE_NONE, 0);
|
G_TYPE_NONE, 0);
|
||||||
|
|
||||||
binding_set = gtk_binding_set_by_class (klass);
|
binding_set = gtk_binding_set_by_class (klass);
|
||||||
|
|
||||||
gtk_binding_entry_add_signal (binding_set, GDK_Escape, 0, "close", 0);
|
gtk_binding_entry_add_signal (binding_set, GDK_Escape, 0, "close", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -234,30 +235,29 @@ gedit_message_area_init (GeditMessageArea *message_area)
|
||||||
|
|
||||||
message_area->priv->main_hbox = gtk_hbox_new (FALSE, 16); /* FIXME: use style properties */
|
message_area->priv->main_hbox = gtk_hbox_new (FALSE, 16); /* FIXME: use style properties */
|
||||||
gtk_widget_show (message_area->priv->main_hbox);
|
gtk_widget_show (message_area->priv->main_hbox);
|
||||||
gtk_container_set_border_width (GTK_CONTAINER (message_area->priv->main_hbox),
|
gtk_container_set_border_width (GTK_CONTAINER (message_area->priv->main_hbox),
|
||||||
8); /* FIXME: use style properties */
|
8); /* FIXME: use style properties */
|
||||||
|
|
||||||
message_area->priv->action_area = gtk_vbox_new (TRUE, 10); /* FIXME: use style properties */
|
message_area->priv->action_area = gtk_vbox_new (TRUE, 10); /* FIXME: use style properties */
|
||||||
gtk_widget_show (message_area->priv->action_area);
|
gtk_widget_show (message_area->priv->action_area);
|
||||||
gtk_box_pack_end (GTK_BOX (message_area->priv->main_hbox),
|
gtk_box_pack_end (GTK_BOX (message_area->priv->main_hbox),
|
||||||
message_area->priv->action_area,
|
message_area->priv->action_area,
|
||||||
FALSE,
|
FALSE,
|
||||||
TRUE,
|
TRUE,
|
||||||
0);
|
0);
|
||||||
|
|
||||||
gtk_box_pack_start (GTK_BOX (message_area),
|
gtk_box_pack_start (GTK_BOX (message_area),
|
||||||
message_area->priv->main_hbox,
|
message_area->priv->main_hbox,
|
||||||
TRUE,
|
TRUE,
|
||||||
TRUE,
|
TRUE,
|
||||||
0);
|
0);
|
||||||
|
|
||||||
/* CHECK: do we really need it? */
|
gtk_widget_set_app_paintable (GTK_WIDGET (message_area), TRUE);
|
||||||
gtk_widget_set_name (GTK_WIDGET (message_area), "gtk-tooltips");
|
|
||||||
|
|
||||||
g_signal_connect (message_area,
|
g_signal_connect (message_area,
|
||||||
"expose_event",
|
"expose_event",
|
||||||
G_CALLBACK (paint_message_area),
|
G_CALLBACK (paint_message_area),
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static gint
|
static gint
|
||||||
|
@ -277,7 +277,7 @@ static void
|
||||||
action_widget_activated (GtkWidget *widget, GeditMessageArea *message_area)
|
action_widget_activated (GtkWidget *widget, GeditMessageArea *message_area)
|
||||||
{
|
{
|
||||||
gint response_id;
|
gint response_id;
|
||||||
|
|
||||||
response_id = get_response_for_widget (message_area, widget);
|
response_id = get_response_for_widget (message_area, widget);
|
||||||
|
|
||||||
gedit_message_area_response (message_area, response_id);
|
gedit_message_area_response (message_area, response_id);
|
||||||
|
@ -290,7 +290,7 @@ gedit_message_area_add_action_widget (GeditMessageArea *message_area,
|
||||||
{
|
{
|
||||||
ResponseData *ad;
|
ResponseData *ad;
|
||||||
guint signal_id;
|
guint signal_id;
|
||||||
|
|
||||||
g_return_if_fail (GEDIT_IS_MESSAGE_AREA (message_area));
|
g_return_if_fail (GEDIT_IS_MESSAGE_AREA (message_area));
|
||||||
g_return_if_fail (GTK_IS_WIDGET (child));
|
g_return_if_fail (GTK_IS_WIDGET (child));
|
||||||
|
|
||||||
|
@ -325,7 +325,7 @@ gedit_message_area_add_action_widget (GeditMessageArea *message_area,
|
||||||
FALSE,
|
FALSE,
|
||||||
FALSE,
|
FALSE,
|
||||||
0);
|
0);
|
||||||
else
|
else
|
||||||
gtk_box_pack_end (GTK_BOX (message_area->priv->action_area),
|
gtk_box_pack_end (GTK_BOX (message_area->priv->action_area),
|
||||||
child,
|
child,
|
||||||
FALSE,
|
FALSE,
|
||||||
|
@ -341,11 +341,11 @@ gedit_message_area_set_contents (GeditMessageArea *message_area,
|
||||||
g_return_if_fail (GTK_IS_WIDGET (contents));
|
g_return_if_fail (GTK_IS_WIDGET (contents));
|
||||||
|
|
||||||
message_area->priv->contents = contents;
|
message_area->priv->contents = contents;
|
||||||
gtk_box_pack_start (GTK_BOX (message_area->priv->main_hbox),
|
gtk_box_pack_start (GTK_BOX (message_area->priv->main_hbox),
|
||||||
message_area->priv->contents,
|
message_area->priv->contents,
|
||||||
TRUE,
|
TRUE,
|
||||||
TRUE,
|
TRUE,
|
||||||
0);
|
0);
|
||||||
}
|
}
|
||||||
|
|
||||||
GtkWidget*
|
GtkWidget*
|
||||||
|
@ -354,16 +354,16 @@ gedit_message_area_add_button (GeditMessageArea *message_area,
|
||||||
gint response_id)
|
gint response_id)
|
||||||
{
|
{
|
||||||
GtkWidget *button;
|
GtkWidget *button;
|
||||||
|
|
||||||
g_return_val_if_fail (GEDIT_IS_MESSAGE_AREA (message_area), NULL);
|
g_return_val_if_fail (GEDIT_IS_MESSAGE_AREA (message_area), NULL);
|
||||||
g_return_val_if_fail (button_text != NULL, NULL);
|
g_return_val_if_fail (button_text != NULL, NULL);
|
||||||
|
|
||||||
button = gtk_button_new_from_stock (button_text);
|
button = gtk_button_new_from_stock (button_text);
|
||||||
|
|
||||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||||
|
|
||||||
gtk_widget_show (button);
|
gtk_widget_show (button);
|
||||||
|
|
||||||
gedit_message_area_add_action_widget (message_area,
|
gedit_message_area_add_action_widget (message_area,
|
||||||
button,
|
button,
|
||||||
response_id);
|
response_id);
|
||||||
|
@ -380,23 +380,23 @@ add_buttons_valist (GeditMessageArea *message_area,
|
||||||
gint response_id;
|
gint response_id;
|
||||||
|
|
||||||
g_return_if_fail (GEDIT_IS_MESSAGE_AREA (message_area));
|
g_return_if_fail (GEDIT_IS_MESSAGE_AREA (message_area));
|
||||||
|
|
||||||
if (first_button_text == NULL)
|
if (first_button_text == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
text = first_button_text;
|
text = first_button_text;
|
||||||
response_id = va_arg (args, gint);
|
response_id = va_arg (args, gint);
|
||||||
|
|
||||||
while (text != NULL)
|
while (text != NULL)
|
||||||
{
|
{
|
||||||
gedit_message_area_add_button (message_area,
|
gedit_message_area_add_button (message_area,
|
||||||
text,
|
text,
|
||||||
response_id);
|
response_id);
|
||||||
|
|
||||||
text = va_arg (args, gchar*);
|
text = va_arg (args, gchar*);
|
||||||
if (text == NULL)
|
if (text == NULL)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
response_id = va_arg (args, int);
|
response_id = va_arg (args, int);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -405,7 +405,7 @@ void
|
||||||
gedit_message_area_add_buttons (GeditMessageArea *message_area,
|
gedit_message_area_add_buttons (GeditMessageArea *message_area,
|
||||||
const gchar *first_button_text,
|
const gchar *first_button_text,
|
||||||
...)
|
...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
|
|
||||||
va_start (args, first_button_text);
|
va_start (args, first_button_text);
|
||||||
|
@ -413,10 +413,10 @@ gedit_message_area_add_buttons (GeditMessageArea *message_area,
|
||||||
add_buttons_valist (message_area,
|
add_buttons_valist (message_area,
|
||||||
first_button_text,
|
first_button_text,
|
||||||
args);
|
args);
|
||||||
|
|
||||||
va_end (args);
|
va_end (args);
|
||||||
}
|
}
|
||||||
|
|
||||||
GtkWidget *
|
GtkWidget *
|
||||||
gedit_message_area_new (void)
|
gedit_message_area_new (void)
|
||||||
{
|
{
|
||||||
|
@ -429,7 +429,7 @@ gedit_message_area_new_with_buttons (const gchar *first_button_text,
|
||||||
{
|
{
|
||||||
GeditMessageArea *message_area;
|
GeditMessageArea *message_area;
|
||||||
va_list args;
|
va_list args;
|
||||||
|
|
||||||
message_area = GEDIT_MESSAGE_AREA (gedit_message_area_new ());
|
message_area = GEDIT_MESSAGE_AREA (gedit_message_area_new ());
|
||||||
|
|
||||||
va_start (args, first_button_text);
|
va_start (args, first_button_text);
|
||||||
|
@ -437,7 +437,7 @@ gedit_message_area_new_with_buttons (const gchar *first_button_text,
|
||||||
add_buttons_valist (message_area,
|
add_buttons_valist (message_area,
|
||||||
first_button_text,
|
first_button_text,
|
||||||
args);
|
args);
|
||||||
|
|
||||||
va_end (args);
|
va_end (args);
|
||||||
|
|
||||||
return GTK_WIDGET (message_area);
|
return GTK_WIDGET (message_area);
|
||||||
|
@ -489,7 +489,7 @@ gedit_message_area_set_default_response (GeditMessageArea *message_area,
|
||||||
|
|
||||||
if (rd && rd->response_id == response_id)
|
if (rd && rd->response_id == response_id)
|
||||||
gtk_widget_grab_default (widget);
|
gtk_widget_grab_default (widget);
|
||||||
|
|
||||||
tmp_list = g_list_next (tmp_list);
|
tmp_list = g_list_next (tmp_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -509,13 +509,13 @@ gedit_message_area_response (GeditMessageArea *message_area,
|
||||||
}
|
}
|
||||||
|
|
||||||
GtkWidget *
|
GtkWidget *
|
||||||
gedit_message_area_add_stock_button_with_text (GeditMessageArea *message_area,
|
gedit_message_area_add_stock_button_with_text (GeditMessageArea *message_area,
|
||||||
const gchar *text,
|
const gchar *text,
|
||||||
const gchar *stock_id,
|
const gchar *stock_id,
|
||||||
gint response_id)
|
gint response_id)
|
||||||
{
|
{
|
||||||
GtkWidget *button;
|
GtkWidget *button;
|
||||||
|
|
||||||
g_return_val_if_fail (GEDIT_IS_MESSAGE_AREA (message_area), NULL);
|
g_return_val_if_fail (GEDIT_IS_MESSAGE_AREA (message_area), NULL);
|
||||||
g_return_val_if_fail (text != NULL, NULL);
|
g_return_val_if_fail (text != NULL, NULL);
|
||||||
g_return_val_if_fail (stock_id != NULL, NULL);
|
g_return_val_if_fail (stock_id != NULL, NULL);
|
||||||
|
@ -526,9 +526,9 @@ gedit_message_area_add_stock_button_with_text (GeditMessageArea *message_area,
|
||||||
GTK_ICON_SIZE_BUTTON));
|
GTK_ICON_SIZE_BUTTON));
|
||||||
|
|
||||||
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
|
||||||
|
|
||||||
gtk_widget_show (button);
|
gtk_widget_show (button);
|
||||||
|
|
||||||
gedit_message_area_add_action_widget (message_area,
|
gedit_message_area_add_action_widget (message_area,
|
||||||
button,
|
button,
|
||||||
response_id);
|
response_id);
|
||||||
|
|
Loading…
Add table
Reference in a new issue