+2007-04-24 Murray Cumming <murrayc@murrayc.com>
+
+ * src/maemo/easysetup/modest-easysetup-wizard.c:
+ * src/maemo/modest-connection-specific-smtp-edit-window.c:
+ * src/widgets/modest-validating-entry.c:
+ * src/widgets/modest-validating-entry.h: Rename the validating widget so it has a
+ Modest prefix instead of an EasySetup prefix.
+
2007-04-23 Murray Cumming <murrayc@murrayc.com>
* src/widgets/modest-validating-entry.h:
}
static void
-on_entry_max (EasysetupValidatingEntry *self, gpointer user_data)
+on_entry_max (ModestValidatingEntry *self, gpointer user_data)
{
ModestEasysetupWizardDialog *dialog = MODEST_EASYSETUP_WIZARD_DIALOG (user_data);
show_error (GTK_WINDOW (dialog), _("ckdg_ib_maximum_characters_reached"));
/* The description widgets: */
- self->entry_account_title = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_account_title = GTK_WIDGET (modest_validating_entry_new ());
/* Set a default account title, choosing one that does not already exist: */
/* Note that this is irrelevant to the non-user visible name, which we will create later. */
list_prevent = g_list_append (list_prevent, ">");
list_prevent = g_list_append (list_prevent, "|");
list_prevent = g_list_append (list_prevent, "^");
- easysetup_validating_entry_set_unallowed_characters (
- EASYSETUP_VALIDATING_ENTRY (self->entry_account_title), list_prevent);
+ modest_validating_entry_set_unallowed_characters (
+ MODEST_VALIDATING_ENTRY (self->entry_account_title), list_prevent);
g_list_free (list_prevent);
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_account_title), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_account_title),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_account_title),
on_entry_max, self);
gtk_widget_show (GTK_WIDGET (box));
GtkSizeGroup* sizegroup = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
/* The name widgets: */
- self->entry_user_name = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_user_name = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (self->entry_user_name), HILDON_GTK_INPUT_MODE_FULL);
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_user_name), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_user_name),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_user_name),
on_entry_max, self);
GtkWidget *caption = create_caption_new_with_asterix (self, sizegroup,
_("mcen_li_emailsetup_name"), self->entry_user_name, NULL, HILDON_CAPTION_OPTIONAL);
GList *list_prevent = NULL;
list_prevent = g_list_append (list_prevent, "<");
list_prevent = g_list_append (list_prevent, ">");
- easysetup_validating_entry_set_unallowed_characters (
- EASYSETUP_VALIDATING_ENTRY (self->entry_user_name), list_prevent);
+ modest_validating_entry_set_unallowed_characters (
+ MODEST_VALIDATING_ENTRY (self->entry_user_name), list_prevent);
g_list_free (list_prevent);
/* The username widgets: */
- self->entry_user_username = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_user_username = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (self->entry_user_username), HILDON_GTK_INPUT_MODE_FULL);
caption = create_caption_new_with_asterix (self, sizegroup, _("mail_fi_username"),
/* Prevent the use of some characters in the username,
* as required by our UI specification: */
- easysetup_validating_entry_set_unallowed_characters_whitespace (
- EASYSETUP_VALIDATING_ENTRY (self->entry_user_username));
+ modest_validating_entry_set_unallowed_characters_whitespace (
+ MODEST_VALIDATING_ENTRY (self->entry_user_username));
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_user_username), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_user_username),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_user_username),
on_entry_max, self);
/* The password widgets: */
gtk_widget_show (caption);
/* The email address widgets: */
- self->entry_user_email = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_user_email = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (self->entry_user_email), HILDON_GTK_INPUT_MODE_FULL);
caption = create_caption_new_with_asterix (self, sizegroup,
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_user_email), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_user_email),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_user_email),
on_entry_max, self);
static void
-on_entry_max (EasysetupValidatingEntry *self, gpointer user_data)
+on_entry_max (ModestValidatingEntry *self, gpointer user_data)
{
ModestAccountSettingsDialog *dialog = MODEST_ACCOUNT_SETTINGS_DIALOG (user_data);
show_error (GTK_WINDOW (dialog), _("ckdg_ib_maximum_characters_reached"));
GtkSizeGroup* sizegroup = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
/* The description widgets: */
- self->entry_account_title = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_account_title = GTK_WIDGET (modest_validating_entry_new ());
GtkWidget *caption = create_caption_new_with_asterix (self, sizegroup, _("mcen_fi_account_title"),
self->entry_account_title, NULL, HILDON_CAPTION_MANDATORY);
gtk_widget_show (self->entry_account_title);
list_prevent = g_list_append (list_prevent, ">");
list_prevent = g_list_append (list_prevent, "|");
list_prevent = g_list_append (list_prevent, "^");
- easysetup_validating_entry_set_unallowed_characters (
- EASYSETUP_VALIDATING_ENTRY (self->entry_account_title), list_prevent);
+ modest_validating_entry_set_unallowed_characters (
+ MODEST_VALIDATING_ENTRY (self->entry_account_title), list_prevent);
g_list_free (list_prevent);
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_account_title), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_account_title),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_account_title),
on_entry_max, self);
/* The retrieve combobox: */
GtkSizeGroup* sizegroup = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
/* The name widgets: */
- self->entry_user_name = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_user_name = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (self->entry_user_name), HILDON_GTK_INPUT_MODE_FULL);
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_user_name), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_user_name),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_user_name),
on_entry_max, self);
GtkWidget *caption = create_caption_new_with_asterix (self, sizegroup,
_("mcen_li_emailsetup_name"), self->entry_user_name, NULL, HILDON_CAPTION_OPTIONAL);
GList *list_prevent = NULL;
list_prevent = g_list_append (list_prevent, "<");
list_prevent = g_list_append (list_prevent, ">");
- easysetup_validating_entry_set_unallowed_characters (
- EASYSETUP_VALIDATING_ENTRY (self->entry_user_name), list_prevent);
+ modest_validating_entry_set_unallowed_characters (
+ MODEST_VALIDATING_ENTRY (self->entry_user_name), list_prevent);
g_list_free (list_prevent);
/* The username widgets: */
- self->entry_user_username = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_user_username = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (self->entry_user_username), HILDON_GTK_INPUT_MODE_FULL);
caption = create_caption_new_with_asterix (self, sizegroup, _("mail_fi_username"),
/* Prevent the use of some characters in the username,
* as required by our UI specification: */
- easysetup_validating_entry_set_unallowed_characters_whitespace (
- EASYSETUP_VALIDATING_ENTRY (self->entry_user_username));
+ modest_validating_entry_set_unallowed_characters_whitespace (
+ MODEST_VALIDATING_ENTRY (self->entry_user_username));
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_user_username), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_user_username),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_user_username),
on_entry_max, self);
/* The password widgets: */
gtk_widget_show (caption);
/* The email address widgets: */
- self->entry_user_email = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_user_email = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (self->entry_user_email), HILDON_GTK_INPUT_MODE_FULL);
caption = create_caption_new_with_asterix (self, sizegroup,
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_user_email), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_user_email),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_user_email),
on_entry_max, self);
/* Signature button: */
g_signal_connect (G_OBJECT (self->combo_outgoing_auth), "changed", (GCallback)on_combo_outgoing_auth_changed, self);
/* The username widgets: */
- self->entry_outgoing_username = GTK_WIDGET (easysetup_validating_entry_new ());
+ self->entry_outgoing_username = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (self->entry_outgoing_username), HILDON_GTK_INPUT_MODE_FULL);
self->caption_outgoing_username = create_caption_new_with_asterix (self, sizegroup, _("mail_fi_username"),
/* Prevent the use of some characters in the username,
* as required by our UI specification: */
- easysetup_validating_entry_set_unallowed_characters_whitespace (
- EASYSETUP_VALIDATING_ENTRY (self->entry_outgoing_username));
+ modest_validating_entry_set_unallowed_characters_whitespace (
+ MODEST_VALIDATING_ENTRY (self->entry_outgoing_username));
/* Set max length as in the UI spec:
* The UI spec seems to want us to show a dialog if we hit the maximum. */
gtk_entry_set_max_length (GTK_ENTRY (self->entry_outgoing_username), 64);
- easysetup_validating_entry_set_max_func (EASYSETUP_VALIDATING_ENTRY (self->entry_outgoing_username),
+ modest_validating_entry_set_max_func (MODEST_VALIDATING_ENTRY (self->entry_outgoing_username),
on_entry_max, self);
/* The password widgets: */
gtk_widget_show (caption);
/* The username widgets: */
- priv->entry_user_username = GTK_WIDGET (easysetup_validating_entry_new ());
+ priv->entry_user_username = GTK_WIDGET (modest_validating_entry_new ());
/* Auto-capitalization is the default, so let's turn it off: */
hildon_gtk_entry_set_input_mode (GTK_ENTRY (priv->entry_user_username), HILDON_GTK_INPUT_MODE_FULL);
caption = hildon_caption_new (sizegroup, _("mail_fi_username"),
/* Prevent the use of some characters in the username,
* as required by our UI specification: */
- easysetup_validating_entry_set_unallowed_characters_whitespace (
- EASYSETUP_VALIDATING_ENTRY (priv->entry_user_username));
+ modest_validating_entry_set_unallowed_characters_whitespace (
+ MODEST_VALIDATING_ENTRY (priv->entry_user_username));
/* Set max length as in the UI spec:
* TODO: The UI spec seems to want us to show a dialog if we hit the maximum. */
#include <config.h>
#endif
-G_DEFINE_TYPE (EasysetupValidatingEntry, easysetup_validating_entry, GTK_TYPE_ENTRY);
+G_DEFINE_TYPE (ModestValidatingEntry, modest_validating_entry, GTK_TYPE_ENTRY);
#define VALIDATING_ENTRY_GET_PRIVATE(o) \
- (G_TYPE_INSTANCE_GET_PRIVATE ((o), EASYSETUP_TYPE_VALIDATING_ENTRY, EasysetupValidatingEntryPrivate))
+ (G_TYPE_INSTANCE_GET_PRIVATE ((o), MODEST_TYPE_VALIDATING_ENTRY, ModestValidatingEntryPrivate))
-typedef struct _EasysetupValidatingEntryPrivate EasysetupValidatingEntryPrivate;
+typedef struct _ModestValidatingEntryPrivate ModestValidatingEntryPrivate;
-struct _EasysetupValidatingEntryPrivate
+struct _ModestValidatingEntryPrivate
{
/* A list of gunichar, rather than char*,
* because gunichar is easier to deal with internally,
};
static void
-easysetup_validating_entry_get_property (GObject *object, guint property_id,
+modest_validating_entry_get_property (GObject *object, guint property_id,
GValue *value, GParamSpec *pspec)
{
switch (property_id) {
}
static void
-easysetup_validating_entry_set_property (GObject *object, guint property_id,
+modest_validating_entry_set_property (GObject *object, guint property_id,
const GValue *value, GParamSpec *pspec)
{
switch (property_id) {
}
static void
-easysetup_validating_entry_dispose (GObject *object)
+modest_validating_entry_dispose (GObject *object)
{
- if (G_OBJECT_CLASS (easysetup_validating_entry_parent_class)->dispose)
- G_OBJECT_CLASS (easysetup_validating_entry_parent_class)->dispose (object);
+ if (G_OBJECT_CLASS (modest_validating_entry_parent_class)->dispose)
+ G_OBJECT_CLASS (modest_validating_entry_parent_class)->dispose (object);
}
static void
-easysetup_validating_entry_finalize (GObject *object)
+modest_validating_entry_finalize (GObject *object)
{
- EasysetupValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (object);
+ ModestValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (object);
/* Free the list and its items: */
if (priv->list_prevent) {
g_list_free (priv->list_prevent);
}
- G_OBJECT_CLASS (easysetup_validating_entry_parent_class)->finalize (object);
+ G_OBJECT_CLASS (modest_validating_entry_parent_class)->finalize (object);
}
static void
-easysetup_validating_entry_class_init (EasysetupValidatingEntryClass *klass)
+modest_validating_entry_class_init (ModestValidatingEntryClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
- g_type_class_add_private (klass, sizeof (EasysetupValidatingEntryPrivate));
+ g_type_class_add_private (klass, sizeof (ModestValidatingEntryPrivate));
- object_class->get_property = easysetup_validating_entry_get_property;
- object_class->set_property = easysetup_validating_entry_set_property;
- object_class->dispose = easysetup_validating_entry_dispose;
- object_class->finalize = easysetup_validating_entry_finalize;
+ object_class->get_property = modest_validating_entry_get_property;
+ object_class->set_property = modest_validating_entry_set_property;
+ object_class->dispose = modest_validating_entry_dispose;
+ object_class->finalize = modest_validating_entry_finalize;
}
static gint
gint *position,
gpointer user_data)
{
- EasysetupValidatingEntry *self = EASYSETUP_VALIDATING_ENTRY (user_data);
- EasysetupValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
+ ModestValidatingEntry *self = MODEST_VALIDATING_ENTRY (user_data);
+ ModestValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
if(!new_text_length)
return;
}
static void
-easysetup_validating_entry_init (EasysetupValidatingEntry *self)
+modest_validating_entry_init (ModestValidatingEntry *self)
{
/* Connect to the GtkEditable::insert-text signal
* so we can filter out some characters:
g_signal_connect (G_OBJECT (self), "insert-text", (GCallback)&on_insert_text, self);
}
-EasysetupValidatingEntry*
-easysetup_validating_entry_new (void)
+ModestValidatingEntry*
+modest_validating_entry_new (void)
{
- return g_object_new (EASYSETUP_TYPE_VALIDATING_ENTRY, NULL);
+ return g_object_new (MODEST_TYPE_VALIDATING_ENTRY, NULL);
}
/** Specify characters that may not be entered into this GtkEntry.
*
* list: A list of gchar* strings. Each one identifies a UTF-8 character.
*/
-void easysetup_validating_entry_set_unallowed_characters (EasysetupValidatingEntry *self, GList *list)
+void modest_validating_entry_set_unallowed_characters (ModestValidatingEntry *self, GList *list)
{
- EasysetupValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
+ ModestValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
/* Free the list and its items: */
if (priv->list_prevent) {
/** Specify that no whitespace characters may be entered into this GtkEntry.
*
*/
-void easysetup_validating_entry_set_unallowed_characters_whitespace (EasysetupValidatingEntry *self)
+void modest_validating_entry_set_unallowed_characters_whitespace (ModestValidatingEntry *self)
{
- EasysetupValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
+ ModestValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
priv->prevent_whitespace = TRUE;
}
/** Set a callback to be called when the maximum number of characters have been entered.
* This may be used to show an informative dialog.
*/
-void easysetup_validating_entry_set_max_func (EasysetupValidatingEntry *self, EasySetupValidatingEntryMaxFunc func, gpointer user_data)
+void modest_validating_entry_set_max_func (ModestValidatingEntry *self, EasySetupValidatingEntryMaxFunc func, gpointer user_data)
{
- EasysetupValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
+ ModestValidatingEntryPrivate *priv = VALIDATING_ENTRY_GET_PRIVATE (self);
priv->max_func = func;
priv->max_func_user_data = user_data;
}
*
*/
-#ifndef _EASYSETUP_VALIDATING_ENTRY
-#define _EASYSETUP_VALIDATING_ENTRY
+#ifndef _MODEST_VALIDATING_ENTRY
+#define _MODEST_VALIDATING_ENTRY
#include <gtk/gtkentry.h>
G_BEGIN_DECLS
-#define EASYSETUP_TYPE_VALIDATING_ENTRY easysetup_validating_entry_get_type()
+#define MODEST_TYPE_VALIDATING_ENTRY modest_validating_entry_get_type()
-#define EASYSETUP_VALIDATING_ENTRY(obj) \
+#define MODEST_VALIDATING_ENTRY(obj) \
(G_TYPE_CHECK_INSTANCE_CAST ((obj), \
- EASYSETUP_TYPE_VALIDATING_ENTRY, EasysetupValidatingEntry))
+ MODEST_TYPE_VALIDATING_ENTRY, ModestValidatingEntry))
-#define EASYSETUP_VALIDATING_ENTRY_CLASS(klass) \
+#define MODEST_VALIDATING_ENTRY_CLASS(klass) \
(G_TYPE_CHECK_CLASS_CAST ((klass), \
- EASYSETUP_TYPE_VALIDATING_ENTRY, EasysetupValidatingEntryClass))
+ MODEST_TYPE_VALIDATING_ENTRY, ModestValidatingEntryClass))
#define EASYSETUP_IS_VALIDATING_ENTRY(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
- EASYSETUP_TYPE_VALIDATING_ENTRY))
+ MODEST_TYPE_VALIDATING_ENTRY))
#define EASYSETUP_IS_VALIDATING_ENTRY_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE ((klass), \
- EASYSETUP_TYPE_VALIDATING_ENTRY))
+ MODEST_TYPE_VALIDATING_ENTRY))
-#define EASYSETUP_VALIDATING_ENTRY_GET_CLASS(obj) \
+#define MODEST_VALIDATING_ENTRY_GET_CLASS(obj) \
(G_TYPE_INSTANCE_GET_CLASS ((obj), \
- EASYSETUP_TYPE_VALIDATING_ENTRY, EasysetupValidatingEntryClass))
+ MODEST_TYPE_VALIDATING_ENTRY, ModestValidatingEntryClass))
typedef struct {
GtkEntry parent;
-} EasysetupValidatingEntry;
+} ModestValidatingEntry;
typedef struct {
GtkEntryClass parent_class;
-} EasysetupValidatingEntryClass;
+} ModestValidatingEntryClass;
-GType easysetup_validating_entry_get_type (void);
+GType modest_validating_entry_get_type (void);
-EasysetupValidatingEntry* easysetup_validating_entry_new (void);
+ModestValidatingEntry* modest_validating_entry_new (void);
-void easysetup_validating_entry_set_unallowed_characters (EasysetupValidatingEntry *self, GList *list);
-void easysetup_validating_entry_set_unallowed_characters_whitespace (EasysetupValidatingEntry *self);
+void modest_validating_entry_set_unallowed_characters (ModestValidatingEntry *self, GList *list);
+void modest_validating_entry_set_unallowed_characters_whitespace (ModestValidatingEntry *self);
-typedef void (* EasySetupValidatingEntryMaxFunc) (EasysetupValidatingEntry *self, gpointer user_data);
-void easysetup_validating_entry_set_max_func (EasysetupValidatingEntry *self, EasySetupValidatingEntryMaxFunc func, gpointer user_data);
+typedef void (* EasySetupValidatingEntryMaxFunc) (ModestValidatingEntry *self, gpointer user_data);
+void modest_validating_entry_set_max_func (ModestValidatingEntry *self, EasySetupValidatingEntryMaxFunc func, gpointer user_data);
G_END_DECLS
-#endif /* _EASYSETUP_VALIDATING_ENTRY */
+#endif /* _MODEST_VALIDATING_ENTRY */