2 * This file is part of hildon-libs
4 * Copyright (C) 2005 Nokia Corporation.
6 * Contact: Luc Pionchon <luc.pionchon@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; either version 2.1 of
11 * the License, or (at your option) any later version.
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 "hildon-appview.h"
33 void hildon_icon_sizes_init (void);
35 typedef struct _HildonIconSizes HildonIconSizes;
37 struct _HildonIconSizes
39 GtkIconSize icon_size_list;
40 GtkIconSize icon_size_small;
41 GtkIconSize icon_size_toolbar;
42 GtkIconSize icon_size_widg;
43 GtkIconSize icon_size_widg_wizard;
44 GtkIconSize icon_size_grid;
45 GtkIconSize icon_size_big_note;
46 GtkIconSize icon_size_note;
47 GtkIconSize icon_size_statusbar;
48 GtkIconSize icon_size_indi_video_player_pre_roll;
49 GtkIconSize icon_size_indi_key_pad_lock;
50 GtkIconSize icon_size_indi_copy;
51 GtkIconSize icon_size_indi_delete;
52 GtkIconSize icon_size_indi_process;
53 GtkIconSize icon_size_indi_progressball;
54 GtkIconSize icon_size_indi_send;
55 GtkIconSize icon_size_indi_offmode_charging;
56 GtkIconSize icon_size_indi_tap_and_hold;
57 GtkIconSize icon_size_indi_send_receive;
58 GtkIconSize icon_size_indi_wlan_strength;
59 GtkIconSize image_size_indi_nokia_logo;
60 GtkIconSize image_size_indi_startup_failed;
61 GtkIconSize image_size_indi_startup_nokia_logo;
62 GtkIconSize image_size_indi_nokia_hands;
65 extern HildonIconSizes *hildoniconsizes;
67 #define HILDON_ICON_SIZE_CHECK_AND_GET(iconvar) (!hildoniconsizes ? hildon_icon_sizes_init (), hildoniconsizes->iconvar : hildoniconsizes->iconvar)
69 #define HILDON_ICON_SIZE_LIST HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_list)
70 #define HILDON_ICON_SIZE_SMALL HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_small)
71 #define HILDON_ICON_SIZE_TOOLBAR HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_toolbar)
72 #define HILDON_ICON_SIZE_WIDG HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_widg)
73 #define HILDON_ICON_SIZE_WIDG_WIZARD HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_widg_wizard)
74 #define HILDON_ICON_SIZE_GRID HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_grid)
75 #define HILDON_ICON_SIZE_BIG_NOTE HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_big_note)
76 #define HILDON_ICON_SIZE_NOTE HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_note)
77 #define HILDON_ICON_SIZE_STATUSBAR HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_statusbar)
78 #define HILDON_ICON_SIZE_INDI_VIDEO_PLAYER_PRE_ROLL HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_video_player_pre_roll)
79 #define HILDON_ICON_SIZE_INDI_COPY HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_copy)
80 #define HILDON_ICON_SIZE_INDI_DELETE HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_delete)
81 #define HILDON_ICON_SIZE_INDI_PROCESS HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_process)
82 #define HILDON_ICON_SIZE_INDI_PROGRESSBALL HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_progressball)
83 #define HILDON_ICON_SIZE_INDI_SEND HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_send)
84 #define HILDON_ICON_SIZE_INDI_OFFMODE_CHARGING HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_offmode)
85 #define HILDON_ICON_SIZE_INDI_TAP_AND_HOLD HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_tap_and_hold)
86 #define HILDON_ICON_SIZE_INDI_SEND_RECEIVE HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_send_receive)
87 #define HILDON_ICON_SIZE_INDI_WLAN_STRENGTH HILDON_ICON_SIZE_CHECK_AND_GET(icon_size_indi_wlan_strength)
89 #define HILDON_IMAGE_SIZE_INDI_NOKIA_LOGO HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_nokia_logo)
90 #define HILDON_IMAGE_SIZE_INDI_STARTUP_FAILED HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_startup_nokia_failed)
91 #define HILDON_IMAGE_SIZE_INDI_STARTUP_NOKIA_LOGO HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_startup_nokia_logo)
92 #define HILDON_IMAGE_SIZE_INDI_NOKIA_HAND HILDON_ICON_SIZE_CHECK_AND_GET(image_size_indi_nokia_hands)
94 #define HILDON_ICON_PIXEL_SIZE_LIST 64
95 #define HILDON_ICON_PIXEL_SIZE_SMALL 26
96 #define HILDON_ICON_PIXEL_SIZE_TOOLBAR 26
97 #define HILDON_ICON_PIXEL_SIZE_WIDG 26
98 #define HILDON_ICON_PIXEL_SIZE_WIDG_WIZARD 50
99 #define HILDON_ICON_PIXEL_SIZE_GRID 64
100 #define HILDON_ICON_PIXEL_SIZE_BIG_NOTE 50
101 #define HILDON_ICON_PIXEL_SIZE_NOTE 26
102 #define HILDON_ICON_PIXEL_SIZE_STATUSBAR 40
103 #define HILDON_ICON_PIXEL_SIZE_INDI_VIDEO_PLAYER_PRE_ROLL 64
104 #define HILDON_ICON_PIXEL_SIZE_INDI_KEY_PAD_LOCK 50
105 #define HILDON_ICON_PIXEL_SIZE_INDI_COPY 64
106 #define HILDON_ICON_PIXEL_SIZE_INDI_DELETE 64
107 #define HILDON_ICON_PIXEL_SIZE_INDI_PROCESS 64
108 #define HILDON_ICON_PIXEL_SIZE_INDI_PROGRESSBALL 64
109 #define HILDON_ICON_PIXEL_SIZE_INDI_SEND 64
110 #define HILDON_ICON_PIXEL_SIZE_INDI_OFFMODE_CHARGING 50
111 #define HILDON_ICON_PIXEL_SIZE_INDI_TAP_AND_HOLD 34
112 #define HILDON_ICON_PIXEL_SIZE_INDI_SEND_RECEIVE 64
113 #define HILDON_ICON_PIXEL_SIZE_INDI_WLAN_STRENGTH 64
115 #define HILDON_IMAGE_PIXEL_SIZE_INDI_NOKIA_LOGO 64
116 #define HILDON_IMAGE_PIXEL_SIZE_INDI_STARTUP_FAILED 64
117 #define HILDON_IMAGE_PIXEL_SIZE_INDI_STARTUP_NOKIA_LOGO 64
118 #define HILDON_IMAGE_PIXEL_SIZE_INDI_NOKIA_HANDS 64
120 #define HILDON_MARGIN_HALF 3
121 #define HILDON_MARGIN_DEFAULT 6
122 #define HILDON_MARGIN_DOUBLE 12
123 #define HILDON_MARGIN_TRIPLE 18
125 #define HILDON_HARDKEY_UP GDK_Up
126 #define HILDON_HARDKEY_LEFT GKD_Left
127 #define HILDON_HARDKEY_RIGHT GDK_Right
128 #define HILDON_HARDKEY_DOWN GDK_Down
129 #define HILDON_HARDKEY_SELECT GDK_Return
130 #define HILDON_HARDKEY_MENU GDK_F4
131 #define HILDON_HARDKEY_HOME GDK_F5
132 #define HILDON_HARDKEY_ESC GDK_Escape
133 #define HILDON_HARDKEY_FULLSCREEN GDK_F6
134 #define HILDON_HARDKEY_INCREASE GDK_F7
135 #define HILDON_HARDKEY_DECREASE GDK_F8
137 gulong hildon_gtk_widget_set_logical_font (GtkWidget *widget, gchar *logicalfontname);
138 gulong hildon_gtk_widget_set_logical_color (GtkWidget *widget, GtkRcFlags rcflags,
139 GtkStateType state, gchar *logicalcolorname);
142 #endif /* HILDON_DEFINES_H */