Fixes NB#130154, remove deprecated gtk+ symbols
[modest] / src / hildon2 / modest-number-editor.h
1 /*
2  * Copyright (C) 2008 Nokia Corporation, all rights reserved.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are
7  * met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  *   notice, this list of conditions and the following disclaimer.
11  * * Redistributions in binary form must reproduce the above copyright
12  *   notice, this list of conditions and the following disclaimer in the
13  *   documentation and/or other materials provided with the distribution.
14  * * Neither the name of the Nokia Corporation nor the names of its
15  *   contributors may be used to endorse or promote products derived from
16  *   this software without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
19  * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
21  * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
22  * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
25  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
26  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
27  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29  */
30
31 #ifndef                                         __MODEST_NUMBER_EDITOR_H__
32 #define                                         __MODEST_NUMBER_EDITOR_H__
33
34 #include                                        <gtk/gtk.h>
35 #include                                        <hildon/hildon-entry.h>
36
37 G_BEGIN_DECLS
38
39 #define                                         MODEST_TYPE_NUMBER_EDITOR \
40                                                 (modest_number_editor_get_type())
41
42 #define                                         MODEST_NUMBER_EDITOR(obj) \
43                                                 (G_TYPE_CHECK_INSTANCE_CAST (obj, MODEST_TYPE_NUMBER_EDITOR, ModestNumberEditor))
44
45 #define                                         MODEST_NUMBER_EDITOR_CLASS(klass) \
46                                                 (G_TYPE_CHECK_CLASS_CAST ((klass), MODEST_TYPE_NUMBER_EDITOR, \
47                                                 ModestNumberEditorClass))
48
49 #define                                         MODEST_IS_NUMBER_EDITOR(obj) \
50                                                 (G_TYPE_CHECK_INSTANCE_TYPE (obj, MODEST_TYPE_NUMBER_EDITOR))
51
52 #define                                         MODEST_IS_NUMBER_EDITOR_CLASS(klass) \
53                                                 (G_TYPE_CHECK_CLASS_TYPE ((klass), MODEST_TYPE_NUMBER_EDITOR))
54
55 #define                                         MODEST_NUMBER_EDITOR_GET_CLASS(obj) \
56                                                 (G_TYPE_INSTANCE_GET_CLASS ((obj), MODEST_TYPE_NUMBER_EDITOR, \
57                                                 ModestNumberEditorClass))
58
59 typedef struct                                  _ModestNumberEditor ModestNumberEditor;
60
61 typedef struct                                  _ModestNumberEditorClass ModestNumberEditorClass;
62
63 struct                                          _ModestNumberEditor 
64 {
65     HildonEntry parent;
66 };
67
68 typedef enum
69 {
70     MODEST_NUMBER_EDITOR_ERROR_MAXIMUM_VALUE_EXCEED,
71     MODEST_NUMBER_EDITOR_ERROR_MINIMUM_VALUE_EXCEED,
72     MODEST_NUMBER_EDITOR_ERROR_ERRONEOUS_VALUE
73 }                                               ModestNumberEditorErrorType;
74
75 struct                                          _ModestNumberEditorClass 
76 {
77         HildonEntryClass parent_class;
78         
79         gboolean  (*range_error)  (ModestNumberEditor *editor, ModestNumberEditorErrorType type); 
80         void      (*valid_changed) (ModestNumberEditor *editor, gboolean valid);
81 };
82
83 GType G_GNUC_CONST
84 modest_number_editor_get_type                   (void);
85
86 GtkWidget*  
87 modest_number_editor_new                        (gint min, gint max);
88
89 void
90 modest_number_editor_set_range                  (ModestNumberEditor *editor, 
91                                                  gint min,
92                                                  gint max);
93
94 gint
95 modest_number_editor_get_value                  (ModestNumberEditor *editor);
96
97 void
98 modest_number_editor_set_value                  (ModestNumberEditor *editor, 
99                                                  gint value);
100
101 gboolean
102 modest_number_editor_is_valid                   (ModestNumberEditor *editor);
103
104
105 GType modest_number_editor_error_type_get_type (void);
106 #define MODEST_TYPE_NUMBER_EDITOR_ERROR_TYPE (modest_number_editor_error_type_get_type())
107
108 G_END_DECLS
109
110 #endif                                          /* __MODEST_NUMBER_EDITOR_H__ */