Re: [evolution-patches] patch for bug 48759
- From: Jeffrey Stedfast <fejj ximian com>
- To: Charles Zhang <Charles Zhang Sun Com>
- Cc: evolution-patches <evolution-patches lists ximian com>
- Subject: Re: [evolution-patches] patch for bug 48759
- Date: Thu, 25 Sep 2003 11:07:04 -0400
On Thu, 2003-09-25 at 03:07, Charles Zhang wrote:
[snip]
> Index: composer/e-msg-composer-select-file.c
> ===================================================================
> RCS file: /cvs/gnome/evolution/composer/e-msg-composer-select-file.c,v
> retrieving revision 1.25
> diff -u -p -r1.25 e-msg-composer-select-file.c
> --- composer/e-msg-composer-select-file.c 2 Apr 2003 18:51:01 -0000 1.25
> +++ composer/e-msg-composer-select-file.c 25 Sep 2003 06:55:07 -0000
> @@ -38,6 +38,29 @@
>
> #include "e-msg-composer-select-file.h"
>
> +static gboolean
> +ok_press_callback (GtkWidget *okbutton,
> + GdkEventButton *event,
> + GtkFileSelection *selection)
please follow the coding standards
static gboolean
ok_press_callback (GtkWidget *ok_button, GdkEventButton *event,
GtkFileSelection *selection)
> +{
> + char *filename = gtk_file_selection_get_filename (selection);
> + char *pathname = g_path_get_dirname (filename);
> + gboolean ret = FALSE;
> + struct stat st;
> +
> + if (stat (pathname, &st) == -1 || (! S_ISDIR (st.st_mode))) {
!S_ISDIR...
> + /* pathdir doesn't exist or isn't a valid dir */
> + ret = TRUE;
> + }
} else if
> + else if (stat (filename, &st) == 0 && (! S_ISREG (st.st_mode))) {
!S_ISREG...
> + /* file exists but isn't a regular file */
> + ret = TRUE;
> + }
> +
> + g_free (pathname);
> + return ret;
> +}
> +
> static GtkFileSelection *
> run_selector(EMsgComposer *composer, const char *title, int multi, gboolean *showinline_p)
> {
> @@ -52,6 +75,10 @@ run_selector(EMsgComposer *composer, con
> gnome_window_icon_set_from_file((GtkWindow *)selection, EVOLUTION_DATADIR "/images/evolution/compose-message.png");
> gtk_file_selection_set_select_multiple((GtkFileSelection *)selection, multi);
>
> + g_signal_connect (((GtkFileSelection *) selection)->ok_button,
> + "button_press_event", G_CALLBACK (ok_press_callback),
> + (gpointer) selection);
> +
> /* restore last path used */
> path = g_object_get_data((GObject *)composer, "attach_path");
> if (path == NULL) {
> @@ -98,6 +125,9 @@ e_msg_composer_select_file (EMsgComposer
> {
> GtkFileSelection *selection;
> char *name = NULL;
> +
> + /* FIXME: the next instrument should be "run_selector(composer, title, FALSE, NULL)",
> + otherwise this dialog's title is wrong and more than one file can be selected. */
>
> selection = run_selector(composer, _("Attach file(s)"), TRUE, NULL);
> if (selection) {
--
Jeffrey Stedfast
Evolution Hacker - Ximian, Inc.
fejj ximian com - www.ximian.com
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]