f664289344aa1c601cea41d481d412d8f52e5447
[modest] / src / widgets / modest-validating-entry.h
1 /* Copyright (c) 2007, Nokia Corporation
2  * All rights reserved.
3  *
4  */
5
6 #ifndef _MODEST_VALIDATING_ENTRY
7 #define _MODEST_VALIDATING_ENTRY
8
9 #ifdef MODEST_TOOLKIT_HILDON2
10 #include <hildon/hildon-entry.h>
11 #else
12 #include <gtk/gtkentry.h>
13 #endif
14
15 G_BEGIN_DECLS
16
17 #define MODEST_TYPE_VALIDATING_ENTRY modest_validating_entry_get_type()
18
19 #define MODEST_VALIDATING_ENTRY(obj) \
20         (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
21         MODEST_TYPE_VALIDATING_ENTRY, ModestValidatingEntry))
22
23 #define MODEST_VALIDATING_ENTRY_CLASS(klass) \
24         (G_TYPE_CHECK_CLASS_CAST ((klass), \
25         MODEST_TYPE_VALIDATING_ENTRY, ModestValidatingEntryClass))
26
27 #define EASYSETUP_IS_VALIDATING_ENTRY(obj) \
28         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
29         MODEST_TYPE_VALIDATING_ENTRY))
30
31 #define EASYSETUP_IS_VALIDATING_ENTRY_CLASS(klass) \
32         (G_TYPE_CHECK_CLASS_TYPE ((klass), \
33         MODEST_TYPE_VALIDATING_ENTRY))
34
35 #define MODEST_VALIDATING_ENTRY_GET_CLASS(obj) \
36         (G_TYPE_INSTANCE_GET_CLASS ((obj), \
37         MODEST_TYPE_VALIDATING_ENTRY, ModestValidatingEntryClass))
38
39 typedef struct {
40 #ifdef MODEST_TOOLKIT_HILDON2
41         HildonEntry parent;
42 #else
43         GtkEntry parent;
44 #endif
45 } ModestValidatingEntry;
46
47 typedef struct {
48 #ifdef MODEST_TOOLKIT_HILDON2
49         HildonEntryClass parent_class;
50 #else
51         GtkEntryClass parent_class;
52 #endif
53 } ModestValidatingEntryClass;
54
55 GType modest_validating_entry_get_type (void);
56
57 ModestValidatingEntry* modest_validating_entry_new (void);
58
59 void modest_validating_entry_set_unallowed_characters (ModestValidatingEntry *self, GList *list);
60 void modest_validating_entry_set_unallowed_characters_whitespace (ModestValidatingEntry *self);
61
62 typedef void (* EasySetupValidatingEntryFunc) (ModestValidatingEntry *self, const gchar* character, gpointer user_data);
63 void modest_validating_entry_set_func (ModestValidatingEntry *self, EasySetupValidatingEntryFunc func, gpointer user_data);
64
65 typedef void (* EasySetupValidatingEntryMaxFunc) (ModestValidatingEntry *self, gpointer user_data);
66 void modest_validating_entry_set_max_func (ModestValidatingEntry *self, EasySetupValidatingEntryMaxFunc func, gpointer user_data);
67
68 G_END_DECLS
69
70 #endif /* _MODEST_VALIDATING_ENTRY */