From d871f9035e20faa29e0e83790e716301fe191672 Mon Sep 17 00:00:00 2001 From: Sven Neumann Date: Mon, 17 Sep 2001 12:01:27 +0000 Subject: [PATCH] resurrected mail plug-in. Thanks to David Odin for 2001-09-17 Sven Neumann * plug-ins/common/mail.c: resurrected mail plug-in. Thanks to David Odin for the patch. * plug-ins/common/.cvsignore * plug-ins/common/Makefile.am * plug-ins/common/plugin-defs.pl: build mail, nlfilt and plugindetails plug-ins again. * tips/Makefile.am * tips/gimp_conseils.fr.txt: removed ... * tips/gimp_tips.fr.txt: ... and readded under this name. --- plug-ins/common/.cvsignore | 3 + plug-ins/common/Makefile.am | 45 +++++++++ plug-ins/common/mail.c | 95 ++++++++++--------- plug-ins/common/plugin-defs.pl | 6 +- po/ChangeLog | 4 + po/fr.po | 4 +- tips/Makefile.am | 2 +- ...{gimp_conseils.fr.txt => gimp_tips.fr.txt} | 0 8 files changed, 108 insertions(+), 51 deletions(-) rename tips/{gimp_conseils.fr.txt => gimp_tips.fr.txt} (100%) diff --git a/plug-ins/common/.cvsignore b/plug-ins/common/.cvsignore index 601e77e337..9c5ff69f2b 100644 --- a/plug-ins/common/.cvsignore +++ b/plug-ins/common/.cvsignore @@ -67,11 +67,13 @@ jigsaw jpeg laplace lic +mail mapcolor max_rgb mblur mpeg newsprint +nlfilt noisify normalize nova @@ -82,6 +84,7 @@ pcx pix pixelize plasma +plugindetails png pnm polar diff --git a/plug-ins/common/Makefile.am b/plug-ins/common/Makefile.am index bd3ef3d248..405481066b 100644 --- a/plug-ins/common/Makefile.am +++ b/plug-ins/common/Makefile.am @@ -86,11 +86,13 @@ libexec_PROGRAMS = @STRIP_BEGIN@ \ $(JPEG) \ laplace \ lic \ + mail \ mapcolor \ max_rgb \ mblur \ $(MPEG) \ newsprint \ + nlfilt \ noisify \ normalize \ nova \ @@ -101,6 +103,7 @@ libexec_PROGRAMS = @STRIP_BEGIN@ \ pix \ pixelize \ plasma \ + plugindetails \ $(PNG) \ pnm \ polar \ @@ -1061,6 +1064,20 @@ lic_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ +mail_SOURCES = @STRIP_BEGIN@ \ + mail.c \ +@STRIP_END@ + +mail_LDADD = @STRIP_BEGIN@ \ + $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ + $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ + $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ + $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ + $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ + $(GTK_LIBS) \ + $(INTLLIBS) \ +@STRIP_END@ + mapcolor_SOURCES = @STRIP_BEGIN@ \ mapcolor.c \ @STRIP_END@ @@ -1130,6 +1147,20 @@ newsprint_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ +nlfilt_SOURCES = @STRIP_BEGIN@ \ + nlfilt.c \ +@STRIP_END@ + +nlfilt_LDADD = @STRIP_BEGIN@ \ + $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ + $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ + $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ + $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ + $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ + $(GTK_LIBS) \ + $(INTLLIBS) \ +@STRIP_END@ + noisify_SOURCES = @STRIP_BEGIN@ \ noisify.c \ @STRIP_END@ @@ -1268,6 +1299,20 @@ plasma_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ +plugindetails_SOURCES = @STRIP_BEGIN@ \ + plugindetails.c \ +@STRIP_END@ + +plugindetails_LDADD = @STRIP_BEGIN@ \ + $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ + $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ + $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ + $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ + $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ + $(GTK_LIBS) \ + $(INTLLIBS) \ +@STRIP_END@ + png_SOURCES = @STRIP_BEGIN@ \ png.c \ @STRIP_END@ diff --git a/plug-ins/common/mail.c b/plug-ins/common/mail.c index a05957e84d..7342a04102 100644 --- a/plug-ins/common/mail.c +++ b/plug-ins/common/mail.c @@ -140,12 +140,12 @@ static GimpPDBStatusType save_image (gchar *filename, gint32 run_mode); static gint save_dialog (void); -static void ok_callback (GtkWidget *widget, - gpointer data); -static void mail_entry_callback (GtkWidget *widget, - gpointer data); -static void mesg_body_callback (GtkWidget *widget, - gpointer data); +static void ok_callback (GtkWidget *widget, + gpointer data); +static void mail_entry_callback (GtkWidget *widget, + gpointer data); +static void mesg_body_callback (GtkTextBuffer *buffer, + gpointer data); static gint valid_file (gchar *filename); static void create_headers (FILE *mailpipe); @@ -189,7 +189,7 @@ static m_info mail_info = if you prefer that as the default */ }; -static gchar * mesg_body = "\0"; +static gchar * mesg_body = NULL; static gint run_flag = 0; MAIN () @@ -436,14 +436,14 @@ save_image (gchar *filename, static gint save_dialog (void) { - GtkWidget *dlg; - GtkWidget *entry; - GtkWidget *table; - GtkWidget *table2; - GtkWidget *label; - GtkWidget *vbox; - GtkWidget *text; - GtkWidget *vscrollbar; + GtkWidget *dlg; + GtkWidget *entry; + GtkWidget *table; + GtkWidget *label; + GtkWidget *vbox; + GtkWidget *scrolled_window; + GtkWidget *text_view; + GtkTextBuffer *text_buffer; gchar buffer[BUFFER_SIZE]; gchar *gump_from; @@ -545,34 +545,30 @@ save_dialog (void) &mail_info.filename); /* comment */ - table2 = gtk_table_new (2, 2, FALSE); - gtk_table_set_row_spacing (GTK_TABLE (table2), 0, 2); - gtk_table_set_col_spacing (GTK_TABLE (table2), 0, 2); + scrolled_window = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), + GTK_POLICY_AUTOMATIC, + GTK_POLICY_AUTOMATIC); + gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 4); + gtk_table_attach (GTK_TABLE (table), scrolled_window, + 0, 2, 5, 6, + GTK_EXPAND | GTK_FILL, + GTK_EXPAND | GTK_FILL, + 0, 0); + gtk_widget_show (scrolled_window); - gtk_table_attach (GTK_TABLE (table), table2, - 0, 2, 5, 6, - GTK_EXPAND | GTK_FILL, - GTK_EXPAND | GTK_FILL, - 0, 0); + text_buffer = gtk_text_buffer_new (NULL); - text = gtk_text_new (NULL, NULL); - gtk_text_set_editable (GTK_TEXT (text), TRUE); - gtk_table_attach (GTK_TABLE (table2), text, - 0, 1, 0, 1, - GTK_EXPAND | GTK_FILL, - GTK_EXPAND | GTK_FILL, - 0, 0); - gtk_widget_set_usize (text, 200, 100); - gtk_widget_show (text); - gtk_signal_connect (GTK_OBJECT (text), "changed", - GTK_SIGNAL_FUNC (mesg_body_callback), - mesg_body); - gtk_widget_show (table2); + text_view = gtk_text_view_new_with_buffer (text_buffer); + gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (text_view), GTK_WRAP_WORD); + gtk_container_add (GTK_CONTAINER (scrolled_window), text_view); + gtk_widget_show (text_view); - vscrollbar = gtk_vscrollbar_new (GTK_TEXT (text)->vadj); - gtk_table_attach (GTK_TABLE (table2), vscrollbar, 1, 2, 0, 1, - GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); - gtk_widget_show (vscrollbar); + g_object_unref (G_OBJECT (text_buffer)); + + g_signal_connect (G_OBJECT (text_buffer), "changed", + G_CALLBACK (mesg_body_callback), + NULL); /* Encapsulation label */ label = gtk_label_new (_("Encapsulation:")); @@ -724,11 +720,19 @@ mail_entry_callback (GtkWidget *widget, } static void -mesg_body_callback (GtkWidget *widget, - gpointer data) +mesg_body_callback (GtkTextBuffer *buffer, + gpointer data) { - mesg_body = gtk_editable_get_chars (GTK_EDITABLE (widget), 0, - gtk_text_get_length (GTK_TEXT (widget))); + GtkTextIter start_iter; + GtkTextIter end_iter; + gchar *text; + + gtk_text_buffer_get_bounds (buffer, &start_iter, &end_iter); + gtk_text_iter_backward_char (&end_iter); + + if (mesg_body) + g_free (mesg_body); + mesg_body = gtk_text_buffer_get_text (buffer, &start_iter, &end_iter, FALSE); } static void @@ -757,7 +761,8 @@ create_headers (FILE *mailpipe) } fprintf (mailpipe, mail_info.comment); fprintf (mailpipe, "\n\n"); - fprintf (mailpipe, mesg_body); + if (mesg_body) + fprintf (mailpipe, mesg_body); fprintf (mailpipe, "\n\n"); if (mail_info.encapsulation == ENCAPSULATION_MIME ) { diff --git a/plug-ins/common/plugin-defs.pl b/plug-ins/common/plugin-defs.pl index 882e3a5214..e38e1daad3 100644 --- a/plug-ins/common/plugin-defs.pl +++ b/plug-ins/common/plugin-defs.pl @@ -64,13 +64,13 @@ 'jpeg' => { libdep => 'gtk', ui => 1, optional => 1 }, 'laplace' => { libdep => 'glib', ui => 1 }, 'lic' => { libdep => 'gtk', ui => 1 }, -# 'mail' => { libdep => 'gtk', ui => 1 }, + 'mail' => { libdep => 'gtk', ui => 1 }, 'mapcolor' => { libdep => 'gtk', ui => 1 }, 'max_rgb' => { libdep => 'gtk', ui => 1 }, 'mblur' => { libdep => 'gtk', ui => 1 }, 'mpeg' => { libdep => 'gtk', optional => 1 }, 'newsprint' => { libdep => 'gtk', ui => 1 }, -# 'nlfilt' => { libdep => 'gtk', ui => 1 }, + 'nlfilt' => { libdep => 'gtk', ui => 1 }, 'noisify' => { libdep => 'gtk', ui => 1 }, 'normalize' => { libdep => 'glib' }, 'nova' => { libdep => 'gtk', ui => 1 }, @@ -81,7 +81,7 @@ 'pix' => { libdep => 'gtk', ui => 1 }, 'pixelize' => { libdep => 'gtk', ui => 1 }, 'plasma' => { libdep => 'gtk', ui => 1 }, -# 'plugindetails' => { libdep => 'gtk', ui => 1 }, + 'plugindetails' => { libdep => 'gtk', ui => 1 }, 'png' => { libdep => 'gtk', ui => 1, optional => 1 }, 'pnm' => { libdep => 'gtk', ui => 1 }, 'polar' => { libdep => 'gtk', ui => 1 }, diff --git a/po/ChangeLog b/po/ChangeLog index 4874d707fa..fc6998719b 100644 --- a/po/ChangeLog +++ b/po/ChangeLog @@ -1,3 +1,7 @@ +2001-09-17 Sven Neumann + + * fr.po: changed gimp_conseils.fr.txt to gimp_tips.fr.txt. + 2001-09-17 Andras Timar * hu.po: converted to UTF-8. diff --git a/po/fr.po b/po/fr.po index 2559714399..7199d2ea2a 100644 --- a/po/fr.po +++ b/po/fr.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: gimp 1.3.0\n" "POT-Creation-Date: 2001-08-29 10:12+0200\n" -"PO-Revision-Date: 2001-08-29 10:12+0200\n" +"PO-Revision-Date: 2001-09-17 13:29+0200\n" "Last-Translator: Christophe Merlet (RedFox) \n" "Language-Team: GNOME French Team \n" "MIME-Version: 1.0\n" @@ -4791,7 +4791,7 @@ msgstr "pr #: app/gui/tips-dialog.c:81 msgid "gimp_tips.txt" -msgstr "gimp_conseils.fr.txt" +msgstr "gimp_tips.fr.txt" #: app/gui/tips-dialog.c:96 msgid "GIMP Tip of the Day" diff --git a/tips/Makefile.am b/tips/Makefile.am index 056d59c4ac..7e4e7e8a2e 100644 --- a/tips/Makefile.am +++ b/tips/Makefile.am @@ -7,7 +7,7 @@ tipsdata_DATA = \ gimp_tips.cs.txt \ gimp_tips.de.txt \ gimp_tips.es.txt \ - gimp_conseils.fr.txt \ + gimp_tips.fr.txt \ gimp_tips.it.txt \ gimp_tips.ja.txt \ gimp_tips.ko.txt \ diff --git a/tips/gimp_conseils.fr.txt b/tips/gimp_tips.fr.txt similarity index 100% rename from tips/gimp_conseils.fr.txt rename to tips/gimp_tips.fr.txt