This is a manual merge of branch drop split view intro trunk.
[modest] / src / hildon2 / modest-number-editor.h
1 /*
2  * This file is a part of modest
3  *
4  * Copyright (C) 2005, 2006, 2008 Nokia Corporation, all rights reserved.
5  *
6  */
7
8 #ifndef                                         __MODEST_NUMBER_EDITOR_H__
9 #define                                         __MODEST_NUMBER_EDITOR_H__
10
11 #include                                        <gtk/gtk.h>
12 #include                                        <hildon/hildon-entry.h>
13
14 G_BEGIN_DECLS
15
16 #define                                         MODEST_TYPE_NUMBER_EDITOR \
17                                                 (modest_number_editor_get_type())
18
19 #define                                         MODEST_NUMBER_EDITOR(obj) \
20                                                 (GTK_CHECK_CAST (obj, MODEST_TYPE_NUMBER_EDITOR, ModestNumberEditor))
21
22 #define                                         MODEST_NUMBER_EDITOR_CLASS(klass) \
23                                                 (GTK_CHECK_CLASS_CAST ((klass), MODEST_TYPE_NUMBER_EDITOR, \
24                                                 ModestNumberEditorClass))
25
26 #define                                         MODEST_IS_NUMBER_EDITOR(obj) \
27                                                 (GTK_CHECK_TYPE (obj, MODEST_TYPE_NUMBER_EDITOR))
28
29 #define                                         MODEST_IS_NUMBER_EDITOR_CLASS(klass) \
30                                                 (GTK_CHECK_CLASS_TYPE ((klass), MODEST_TYPE_NUMBER_EDITOR))
31
32 #define                                         MODEST_NUMBER_EDITOR_GET_CLASS(obj) \
33                                                 ((ModestNumberEditorClass *) G_OBJECT_GET_CLASS(obj))
34
35 typedef struct                                  _ModestNumberEditor ModestNumberEditor;
36
37 typedef struct                                  _ModestNumberEditorClass ModestNumberEditorClass;
38
39 struct                                          _ModestNumberEditor 
40 {
41     HildonEntry parent;
42 };
43
44 typedef enum
45 {
46     MODEST_NUMBER_EDITOR_ERROR_MAXIMUM_VALUE_EXCEED,
47     MODEST_NUMBER_EDITOR_ERROR_MINIMUM_VALUE_EXCEED,
48     MODEST_NUMBER_EDITOR_ERROR_ERRONEOUS_VALUE
49 }                                               ModestNumberEditorErrorType;
50
51 struct                                          _ModestNumberEditorClass 
52 {
53     GtkEntryClass parent_class;
54   
55     gboolean  (*range_error)  (ModestNumberEditor *editor, ModestNumberEditorErrorType type); 
56 };
57
58 GType G_GNUC_CONST
59 modest_number_editor_get_type                   (void);
60
61 GtkWidget*  
62 modest_number_editor_new                        (gint min, gint max);
63
64 void
65 modest_number_editor_set_range                  (ModestNumberEditor *editor, 
66                                                  gint min,
67                                                  gint max);
68
69 gint
70 modest_number_editor_get_value                  (ModestNumberEditor *editor);
71
72 void
73 modest_number_editor_set_value                  (ModestNumberEditor *editor, 
74                                                  gint value);
75
76
77 GType modest_number_editor_error_type_get_type (void);
78 #define MODEST_TYPE_NUMBER_EDITOR_ERROR_TYPE (modest_number_editor_error_type_get_type())
79
80 G_END_DECLS
81
82 #endif                                          /* __MODEST_NUMBER_EDITOR_H__ */