2 * This file is a part of hildon
4 * Copyright (C) 2005, 2006 Nokia Corporation, all rights reserved.
6 * Contact: Michael Dominic Kostrzewa <michael.kostrzewa@nokia.com>
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public License
10 * as published by the Free Software Foundation; version 2.1 of
13 * This library is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
25 #ifndef __HILDON_DEFINES_H__
26 #define __HILDON_DEFINES_H__
28 #include <gtk/gtkwindow.h>
29 #include <gdk/gdkkeysyms.h>
33 typedef struct _HildonIconSizes HildonIconSizes;
35 struct _HildonIconSizes
37 GtkIconSize icon_size_list;
38 GtkIconSize icon_size_small;
39 GtkIconSize icon_size_toolbar;
40 GtkIconSize icon_size_widg;
41 GtkIconSize icon_size_widg_wizard;
42 GtkIconSize icon_size_grid;
43 GtkIconSize icon_size_big_note;
44 GtkIconSize icon_size_note;
45 GtkIconSize icon_size_statusbar;
46 GtkIconSize icon_size_indi_video_player_pre_roll;
47 GtkIconSize icon_size_indi_key_pad_lock;
48 GtkIconSize icon_size_indi_copy;
49 GtkIconSize icon_size_indi_delete;
50 GtkIconSize icon_size_indi_process;
51 GtkIconSize icon_size_indi_progressball;
52 GtkIconSize icon_size_indi_send;
53 GtkIconSize icon_size_indi_offmode_charging;
54 GtkIconSize icon_size_indi_tap_and_hold;
55 GtkIconSize icon_size_indi_send_receive;
56 GtkIconSize icon_size_indi_wlan_strength;
57 GtkIconSize image_size_indi_nokia_logo;
58 GtkIconSize image_size_indi_startup_failed;
59 GtkIconSize image_size_indi_startup_nokia_logo;
60 GtkIconSize image_size_indi_nokia_hands;
63 extern const HildonIconSizes *hildoniconsizes;
65 #define HILDON_ICON_SIZE_CHECK_AND_GET(iconvar) \
67 hildon_icon_sizes_init (), hildoniconsizes->iconvar : \
68 hildoniconsizes->iconvar)
70 #define HILDON_ICON_SIZE_LIST \
71 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_list)
73 #define HILDON_ICON_SIZE_SMALL \
74 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_small)
76 #define HILDON_ICON_SIZE_TOOLBAR \
77 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_toolbar)
79 #define HILDON_ICON_SIZE_WIDG \
80 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_widg)
82 #define HILDON_ICON_SIZE_WIDG_WIZARD \
83 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_widg_wizard)
85 #define HILDON_ICON_SIZE_GRID \
86 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_grid)
88 #define HILDON_ICON_SIZE_BIG_NOTE \
89 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_big_note)
91 #define HILDON_ICON_SIZE_NOTE \
92 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_note)
94 #define HILDON_ICON_SIZE_STATUSBAR \
95 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_statusbar)
97 #define HILDON_ICON_SIZE_INDI_VIDEO_PLAYER_PRE_ROLL \
98 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_video_player_pre_roll)
100 #define HILDON_ICON_SIZE_INDI_COPY \
101 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_copy)
103 #define HILDON_ICON_SIZE_INDI_DELETE \
104 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_delete)
106 #define HILDON_ICON_SIZE_INDI_PROCESS \
107 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_process)
109 #define HILDON_ICON_SIZE_INDI_PROGRESSBALL \
110 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_progressball)
112 #define HILDON_ICON_SIZE_INDI_SEND \
113 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_send)
115 #define HILDON_ICON_SIZE_INDI_OFFMODE_CHARGING \
116 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_offmode)
118 #define HILDON_ICON_SIZE_INDI_TAP_AND_HOLD \
119 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_tap_and_hold)
121 #define HILDON_ICON_SIZE_INDI_SEND_RECEIVE \
122 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_send_receive)
124 #define HILDON_ICON_SIZE_INDI_WLAN_STRENGTH \
125 HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_wlan_strength)
127 #define HILDON_IMAGE_SIZE_INDI_NOKIA_LOGO \
128 HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_nokia_logo)
130 #define HILDON_IMAGE_SIZE_INDI_STARTUP_FAILED \
131 HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_startup_nokia_failed)
133 #define HILDON_IMAGE_SIZE_INDI_STARTUP_NOKIA_LOGO \
134 HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_startup_nokia_logo)
136 #define HILDON_IMAGE_SIZE_INDI_NOKIA_HAND \
137 HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_nokia_hands)
139 /* Actual icon sizes */
141 #define HILDON_ICON_PIXEL_SIZE_LIST 64
143 #define HILDON_ICON_PIXEL_SIZE_SMALL 26
145 #define HILDON_ICON_PIXEL_SIZE_TOOLBAR 26
147 #define HILDON_ICON_PIXEL_SIZE_WIDG 26
149 #define HILDON_ICON_PIXEL_SIZE_WIDG_WIZARD 50
151 #define HILDON_ICON_PIXEL_SIZE_GRID 64
153 #define HILDON_ICON_PIXEL_SIZE_BIG_NOTE 50
155 #define HILDON_ICON_PIXEL_SIZE_NOTE 26
157 #define HILDON_ICON_PIXEL_SIZE_STATUSBAR 40
159 #define HILDON_ICON_PIXEL_SIZE_INDI_VIDEO_PLAYER_PRE_ROLL 64
161 #define HILDON_ICON_PIXEL_SIZE_INDI_KEY_PAD_LOCK 50
163 #define HILDON_ICON_PIXEL_SIZE_INDI_COPY 64
165 #define HILDON_ICON_PIXEL_SIZE_INDI_DELETE 64
167 #define HILDON_ICON_PIXEL_SIZE_INDI_PROCESS 64
169 #define HILDON_ICON_PIXEL_SIZE_INDI_PROGRESSBALL 64
171 #define HILDON_ICON_PIXEL_SIZE_INDI_SEND 64
173 #define HILDON_ICON_PIXEL_SIZE_INDI_OFFMODE_CHARGING 50
175 #define HILDON_ICON_PIXEL_SIZE_INDI_TAP_AND_HOLD 34
177 #define HILDON_ICON_PIXEL_SIZE_INDI_SEND_RECEIVE 64
179 #define HILDON_ICON_PIXEL_SIZE_INDI_WLAN_STRENGTH 64
181 /* Actual image sizes */
183 #define HILDON_IMAGE_PIXEL_SIZE_INDI_NOKIA_LOGO 64
185 #define HILDON_IMAGE_PIXEL_SIZE_INDI_STARTUP_FAILED 64
187 #define HILDON_IMAGE_PIXEL_SIZE_INDI_STARTUP_NOKIA_LOGO 64
189 #define HILDON_IMAGE_PIXEL_SIZE_INDI_NOKIA_HANDS 64
191 #define HILDON_MARGIN_HALF 3
193 #define HILDON_MARGIN_DEFAULT 6
195 #define HILDON_MARGIN_DOUBLE 12
197 #define HILDON_MARGIN_TRIPLE 18
201 #define HILDON_HARDKEY_UP GDK_Up
203 #define HILDON_HARDKEY_LEFT GDK_Left
205 #define HILDON_HARDKEY_RIGHT GDK_Right
207 #define HILDON_HARDKEY_DOWN GDK_Down
209 #define HILDON_HARDKEY_SELECT GDK_Return
211 #define HILDON_HARDKEY_MENU GDK_F4
213 #define HILDON_HARDKEY_HOME GDK_F5
215 #define HILDON_HARDKEY_ESC GDK_Escape
217 #define HILDON_HARDKEY_FULLSCREEN GDK_F6
219 #define HILDON_HARDKEY_INCREASE GDK_F7
221 #define HILDON_HARDKEY_DECREASE GDK_F8
224 hildon_icon_sizes_init (void);
228 #endif /* HILDON_DEFINES_H */