gnumeric r16819 - trunk/src/dialogs



Author: guelzow
Date: Mon Sep 22 00:00:41 2008
New Revision: 16819
URL: http://svn.gnome.org/viewvc/gnumeric?rev=16819&view=rev

Log:
2008-09-21  Andreas J. Guelzow <aguelzow pyrshep ca>

	* dialog-analysis-tools.c (average_tool_update_sensitivity_cb):
	  use warning field in the dialog




Modified:
   trunk/src/dialogs/ChangeLog
   trunk/src/dialogs/dialog-analysis-tools.c

Modified: trunk/src/dialogs/dialog-analysis-tools.c
==============================================================================
--- trunk/src/dialogs/dialog-analysis-tools.c	(original)
+++ trunk/src/dialogs/dialog-analysis-tools.c	Mon Sep 22 00:00:41 2008
@@ -2429,21 +2429,38 @@
 average_tool_update_sensitivity_cb (G_GNUC_UNUSED GtkWidget *dummy,
 				    AverageToolState *state)
 {
-	gboolean ready  = FALSE;
 	int interval, err;
         GSList *input_range;
 
         input_range = gnm_expr_entry_parse_as_list (
 		GNM_EXPR_ENTRY (state->base.input_entry), state->base.sheet);
-	err = entry_to_int (GTK_ENTRY (state->interval_entry), &interval, FALSE);
+	if (input_range == NULL) {
+		gtk_label_set_text (GTK_LABEL (state->base.warning),
+				    _("The input range is invalid."));
+		gtk_widget_set_sensitive (state->base.ok_button, FALSE);
+		return;
+	} else
+		range_list_destroy (input_range);
+
+		err = entry_to_int (GTK_ENTRY (state->interval_entry), &interval, FALSE);
 
-	ready = ((input_range != NULL) &&
-                 (err == 0 && interval > 0) &&
-                 gnm_dao_is_ready (GNM_DAO (state->base.gdao)));
+		if (err!= 0 || interval <= 0)  {
+			gtk_label_set_text (GTK_LABEL (state->base.warning),
+					    _("The given interval is invalid."));
+			gtk_widget_set_sensitive (state->base.ok_button, FALSE);
+			return;
+		}
 
-        if (input_range != NULL) range_list_destroy (input_range);
+	if (!gnm_dao_is_ready (GNM_DAO (state->base.gdao))) {
+		gtk_label_set_text (GTK_LABEL (state->base.warning),
+				    _("The output specification "
+				      "is invalid."));
+		gtk_widget_set_sensitive (state->base.ok_button, FALSE);
+		return;
+	}
 
-	gtk_widget_set_sensitive (state->base.ok_button, ready);
+	gtk_label_set_text (GTK_LABEL (state->base.warning), "");
+	gtk_widget_set_sensitive (state->base.ok_button, TRUE);
 }
 
 /**



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]