2 * Copyright (C) 2008 Nokia Corporation, all rights reserved.
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
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.
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.
31 #ifndef __MODEST_NUMBER_EDITOR_H__
32 #define __MODEST_NUMBER_EDITOR_H__
35 #include <hildon/hildon-entry.h>
39 #define MODEST_TYPE_NUMBER_EDITOR \
40 (modest_number_editor_get_type())
42 #define MODEST_NUMBER_EDITOR(obj) \
43 (GTK_CHECK_CAST (obj, MODEST_TYPE_NUMBER_EDITOR, ModestNumberEditor))
45 #define MODEST_NUMBER_EDITOR_CLASS(klass) \
46 (GTK_CHECK_CLASS_CAST ((klass), MODEST_TYPE_NUMBER_EDITOR, \
47 ModestNumberEditorClass))
49 #define MODEST_IS_NUMBER_EDITOR(obj) \
50 (GTK_CHECK_TYPE (obj, MODEST_TYPE_NUMBER_EDITOR))
52 #define MODEST_IS_NUMBER_EDITOR_CLASS(klass) \
53 (GTK_CHECK_CLASS_TYPE ((klass), MODEST_TYPE_NUMBER_EDITOR))
55 #define MODEST_NUMBER_EDITOR_GET_CLASS(obj) \
56 ((ModestNumberEditorClass *) G_OBJECT_GET_CLASS(obj))
58 typedef struct _ModestNumberEditor ModestNumberEditor;
60 typedef struct _ModestNumberEditorClass ModestNumberEditorClass;
62 struct _ModestNumberEditor
69 MODEST_NUMBER_EDITOR_ERROR_MAXIMUM_VALUE_EXCEED,
70 MODEST_NUMBER_EDITOR_ERROR_MINIMUM_VALUE_EXCEED,
71 MODEST_NUMBER_EDITOR_ERROR_ERRONEOUS_VALUE
72 } ModestNumberEditorErrorType;
74 struct _ModestNumberEditorClass
76 HildonEntryClass parent_class;
78 gboolean (*range_error) (ModestNumberEditor *editor, ModestNumberEditorErrorType type);
79 void (*valid_changed) (ModestNumberEditor *editor, gboolean valid);
83 modest_number_editor_get_type (void);
86 modest_number_editor_new (gint min, gint max);
89 modest_number_editor_set_range (ModestNumberEditor *editor,
94 modest_number_editor_get_value (ModestNumberEditor *editor);
97 modest_number_editor_set_value (ModestNumberEditor *editor,
101 modest_number_editor_is_valid (ModestNumberEditor *editor);
104 GType modest_number_editor_error_type_get_type (void);
105 #define MODEST_TYPE_NUMBER_EDITOR_ERROR_TYPE (modest_number_editor_error_type_get_type())
109 #endif /* __MODEST_NUMBER_EDITOR_H__ */