} else {
missing = FALSE;
}
+
+ if (!missing && ppriv->full && !modest_number_editor_is_valid (MODEST_NUMBER_EDITOR (ppriv->port_view)))
+ missing = TRUE;
/* Emit a signal to notify if mandatory data is missing */
g_signal_emit_by_name (G_OBJECT (self), "missing_mandatory_data",
missing, NULL);
}
+void
+on_valid_changed (ModestNumberEditor *editor,
+ gboolean valid,
+ ModestSecurityOptionsView *self)
+{
+ on_entry_changed (NULL, (gpointer) self);
+}
+
static void
create_outgoing_security (ModestSecurityOptionsView* self,
GtkSizeGroup *title_size_group,
G_CALLBACK (on_auth_changed), self);
g_signal_connect (G_OBJECT (ppriv->user_entry), "changed",
G_CALLBACK (on_entry_changed), self);
+ g_signal_connect (G_OBJECT (ppriv->port_view), "valid-changed",
+ G_CALLBACK (on_valid_changed), self);
}
/* Initialize widgets */
g_signal_new ("valid_changed", MODEST_TYPE_NUMBER_EDITOR,
G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET
(ModestNumberEditorClass, valid_changed),
- g_signal_accumulator_true_handled, NULL,
+ NULL, NULL,
g_cclosure_marshal_VOID__BOOLEAN,
G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
}
}
if (priv->is_valid != is_valid) {
- g_signal_emit (editor, ModestNumberEditor_signal[VALID_CHANGED], 0, is_valid);
priv->is_valid = is_valid;
+ g_signal_emit (editor, ModestNumberEditor_signal[VALID_CHANGED], 0, is_valid);
}
}