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 (G_TYPE_CHECK_INSTANCE_CAST (obj, MODEST_TYPE_NUMBER_EDITOR, ModestNumberEditor))
45 #define MODEST_NUMBER_EDITOR_CLASS(klass) \
46 (G_TYPE_CHECK_CLASS_CAST ((klass), MODEST_TYPE_NUMBER_EDITOR, \
47 ModestNumberEditorClass))
49 #define MODEST_IS_NUMBER_EDITOR(obj) \
50 (G_TYPE_CHECK_INSTANCE_TYPE (obj, MODEST_TYPE_NUMBER_EDITOR))
52 #define MODEST_IS_NUMBER_EDITOR_CLASS(klass) \
53 (G_TYPE_CHECK_CLASS_TYPE ((klass), MODEST_TYPE_NUMBER_EDITOR))
55 #define MODEST_NUMBER_EDITOR_GET_CLASS(obj) \
56 (G_TYPE_INSTANCE_GET_CLASS ((obj), MODEST_TYPE_NUMBER_EDITOR, \
57 ModestNumberEditorClass))
59 typedef struct _ModestNumberEditor ModestNumberEditor;
61 typedef struct _ModestNumberEditorClass ModestNumberEditorClass;
63 struct _ModestNumberEditor
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;
75 struct _ModestNumberEditorClass
77 HildonEntryClass parent_class;
79 gboolean (*range_error) (ModestNumberEditor *editor, ModestNumberEditorErrorType type);
80 void (*valid_changed) (ModestNumberEditor *editor, gboolean valid);
84 modest_number_editor_get_type (void);
87 modest_number_editor_new (gint min, gint max);
90 modest_number_editor_set_range (ModestNumberEditor *editor,
95 modest_number_editor_get_value (ModestNumberEditor *editor);
98 modest_number_editor_set_value (ModestNumberEditor *editor,
102 modest_number_editor_is_valid (ModestNumberEditor *editor);
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())
110 #endif /* __MODEST_NUMBER_EDITOR_H__ */