#include <sys/types.h>
#include <glib.h>
#include <gdk/gdkkeysyms.h>
#include <liberdm/display.h>
#include <libermanifest/ermanifest.h>
#include "contentListerLog.h"
#include "gtkErrorScreen.h"
#include "displayUpdate.h"
#include "stack.h"
#include "erConnect.h"
#include "system.h"
#include "gtkPincodeScreen.h"
#include "control.h"
Go to the source code of this file.
Functions | |
gboolean | error_screen_expose_event (GtkWidget *widget, GdkEventExpose *event, gpointer data) |
static void | on_error_screen_destroy (GtkWidget *widget, gpointer data) |
guint | error_screen_keypress (GtkWidget *widget, GdkEventKey *event, gpointer data) |
static void | gtk_error_screen_class_init (GtkErrorScreenClass *klass) |
static void | gtk_error_screen_init (GtkErrorScreen *error_screen) |
static void | error_screen_init_images (void) |
static void | error_screen_destroy_images (void) |
GdkPixbuf * | error_screen_get_image (unsigned int error_ID) |
GtkWidget * | gtk_error_screen_new () |
GType | gtk_error_screen_get_type (void) |
void | gtk_error_screen_set_text (GtkErrorScreen *error_screen, const gchar *text) |
void | gtk_error_screen_set_image (GtkErrorScreen *error_screen, ctrlErrorIcon_e icon) |
Variables | |
static GdkPixbuf * | g_error_images [ctrlLastIcon] |
static void error_screen_destroy_images | ( | void | ) | [static] |
Definition at line 297 of file gtkErrorScreen.c.
00298 { 00299 int index; 00300 00301 CL_LOGPRINTF("entry"); 00302 00303 for (index = 0; index < ctrlLastIcon; index++) 00304 { 00305 if (g_error_images[index]) 00306 { 00307 g_free(g_error_images[index]); 00308 g_error_images[index] = NULL; 00309 } 00310 } 00311 }
gboolean error_screen_expose_event | ( | GtkWidget * | widget, | |
GdkEventExpose * | event, | |||
gpointer | data | |||
) |
Definition at line 243 of file gtkErrorScreen.c.
00244 { 00245 CL_SCREENPRINTF("entry"); 00246 display_update_request_screen_refresh(LISTER_EXPOSE_LEVEL); 00247 return FALSE; 00248 }
GdkPixbuf * error_screen_get_image | ( | unsigned int | error_ID | ) |
Definition at line 313 of file gtkErrorScreen.c.
00314 { 00315 if ((error_ID < ctrlLastIcon)) 00316 { 00317 return g_error_images[error_ID]; 00318 } 00319 else 00320 { 00321 return NULL; 00322 } 00323 }
static void error_screen_init_images | ( | void | ) | [static] |
Definition at line 250 of file gtkErrorScreen.c.
00251 { 00252 GError *error = NULL; 00253 00254 g_error_images[ctrlWarningIcon] = gdk_pixbuf_new_from_file(DATA_DIR "/Warning.png", &error); 00255 if (NULL == g_error_images[ctrlWarningIcon]) 00256 { 00257 CL_ERRORPRINTF("ctrlWarningIcon - error %s", error->message); 00258 } 00259 00260 g_error_images[ctrlInfoIcon] = gdk_pixbuf_new_from_file(DATA_DIR "/Info.png", &error); 00261 if (NULL == g_error_images[ctrlInfoIcon]) 00262 { 00263 CL_ERRORPRINTF("ctrlInfoIcon - error %s", error->message); 00264 } 00265 00266 g_error_images[ctrlErrorIcon] = gdk_pixbuf_new_from_file(DATA_DIR "/Error.png", &error); 00267 if (NULL == g_error_images[ctrlErrorIcon]) 00268 { 00269 CL_ERRORPRINTF("ctrlErrorIcon - error %s", error->message); 00270 } 00271 00272 g_error_images[ctrlProhibitedIcon] = gdk_pixbuf_new_from_file(DATA_DIR "/Prohibited.png", &error); 00273 if (NULL == g_error_images[ctrlProhibitedIcon]) 00274 { 00275 CL_ERRORPRINTF("ctrlProhibitedIcon - error %s", error->message); 00276 } 00277 00278 g_error_images[ctrlDontDisconnectNWIcon] = gdk_pixbuf_new_from_file(DATA_DIR "/DontDisconnect-NW.png", &error); 00279 if (NULL == g_error_images[ctrlDontDisconnectNWIcon]) 00280 { 00281 CL_ERRORPRINTF("ctrlDontDisconnectNWIcon - error %s", error->message); 00282 } 00283 00284 g_error_images[ctrlBatteryLowIcon] = gdk_pixbuf_new_from_file(DATA_DIR "/BatteryLow.png", &error); 00285 if (NULL == g_error_images[ctrlBatteryLowIcon]) 00286 { 00287 CL_ERRORPRINTF("ctrlBatteryLowIcon - error %s", error->message); 00288 } 00289 00290 g_error_images[ctrlSystemShutdownIcon] = gdk_pixbuf_new_from_file(DATA_DIR "/Shutdown.png", &error); 00291 if (NULL == g_error_images[ctrlSystemShutdownIcon]) 00292 { 00293 CL_ERRORPRINTF("ctrlSystemShutdownIcon - error %s", error->message); 00294 } 00295 }
guint error_screen_keypress | ( | GtkWidget * | widget, | |
GdkEventKey * | event, | |||
gpointer | data | |||
) |
Definition at line 172 of file gtkErrorScreen.c.
00173 { 00174 int returnValue = 0; // return FALSE => default gtk handling 00175 00176 CL_LOGPRINTF("receiving keypress 0x%x", event->keyval); 00177 00178 switch (event->keyval) 00179 { 00180 case GDK_Page_Down: 00181 case GDK_F1: 00182 case GDK_Page_Up: 00183 case GDK_F2: 00184 case GDK_Home: 00185 case GDK_F5: 00186 case GDK_Return: 00187 case GDK_Up: 00188 case GDK_F4: 00189 case GDK_Down: 00190 case GDK_F3: 00191 CL_SCREENPRINTF("invalid key press"); 00192 display_update_request_screen_refresh(MAIN_WINDOW_EXPOSE_LEVEL); 00193 break; 00194 00195 #ifdef COMMAND_LINE_INPUT 00196 case GDK_F12: 00197 // test case 00198 ctrl_contentType_button_clicked(st_ContentTypeBooks); 00199 break; 00200 case GDK_F11: 00201 // test case 00202 ctrl_contentType_button_clicked(st_ContentTypeNews); 00203 break; 00204 case GDK_F10: 00205 // test case 00206 ctrl_contentType_button_clicked(st_ContentTypeDocs); 00207 break; 00208 case GDK_F9: 00209 // test case 00210 ctrl_contentType_button_clicked(st_ContentTypeNotes); 00211 break; 00212 case GDK_F8: 00213 // test case 00214 ctrl_mode_button_clicked(); 00215 break; 00216 #endif //COMMAND_LINE_INPUT 00217 } 00218 return returnValue; 00219 }
static void gtk_error_screen_class_init | ( | GtkErrorScreenClass * | klass | ) | [static] |
GType gtk_error_screen_get_type | ( | void | ) |
returns type of GtkErrorScreen widget
Definition at line 78 of file gtkErrorScreen.c.
00079 { 00080 static GType error_screen_type = 0; 00081 00082 if (!error_screen_type) 00083 { 00084 static const GTypeInfo error_screen_info = { 00085 sizeof(GtkErrorScreenClass), 00086 NULL, /* base_init */ 00087 NULL, /* base_finalize */ 00088 (GClassInitFunc) gtk_error_screen_class_init, 00089 NULL, /* class_finalize */ 00090 NULL, /* class_data */ 00091 sizeof(GtkErrorScreen), 00092 0, /* n_preallocs */ 00093 (GInstanceInitFunc) gtk_error_screen_init, 00094 }; 00095 00096 error_screen_type = g_type_register_static(GTK_TYPE_EVENT_BOX, "ErrorScreen", &error_screen_info, 0); 00097 } 00098 return error_screen_type; 00099 }
static void gtk_error_screen_init | ( | GtkErrorScreen * | error_screen | ) | [static] |
Definition at line 116 of file gtkErrorScreen.c.
00117 { 00118 GtkWidget *vbox; 00119 GtkWidget *topLevelVBox; 00120 00121 error_screen_init_images(); 00122 00123 // error_screen 00124 gtk_widget_set_name(GTK_WIDGET(error_screen), "error_screen_background"); 00125 00126 // topLevelVBox - not homogenous, zero spacing, for bottom/top border 00127 topLevelVBox = gtk_vbox_new(FALSE, 0); 00128 gtk_container_add(GTK_CONTAINER(error_screen), topLevelVBox); 00129 00130 // vbox 00131 vbox = gtk_vbox_new(TRUE, VBOX_TEXT_IMAGE_SPACING); 00132 gtk_container_set_border_width(GTK_CONTAINER(vbox), VBOX_BORDER); 00133 gtk_box_pack_start(GTK_BOX(topLevelVBox), vbox, FALSE, FALSE, BOTTOM_TOP_BORDER); 00134 00135 // error_screen->image 00136 error_screen->image = gtk_image_new(); 00137 gtk_widget_set_size_request(GTK_WIDGET(error_screen->image), ERROR_IMAGE_MIN_WIDTH, ERROR_IMAGE_MIN_HEIGHT); 00138 gtk_box_pack_start(GTK_BOX(vbox), error_screen->image, FALSE, FALSE, 0); 00139 error_screen->pixmap = NULL; 00140 00141 // error_screen->text 00142 error_screen->text = gtk_label_new(NULL); 00143 gtk_widget_set_name(GTK_WIDGET(error_screen->text), "error_screen_text"); 00144 gtk_widget_set_size_request(GTK_WIDGET(error_screen->text), ERROR_DESCRIPTION_WIDTH, (-1)); 00145 gtk_misc_set_alignment(GTK_MISC(error_screen->text), 0.5, 0.0); 00146 gtk_label_set_single_line_mode(GTK_LABEL(error_screen->text), FALSE); 00147 gtk_label_set_line_wrap(GTK_LABEL(error_screen->text), TRUE); 00148 gtk_label_set_justify(GTK_LABEL(error_screen->text), GTK_JUSTIFY_CENTER); 00149 gtk_box_pack_start(GTK_BOX(vbox), error_screen->text, FALSE, FALSE, 0); 00150 00151 // signal handlers 00152 g_signal_connect(G_OBJECT(error_screen), "key_press_event", G_CALLBACK(error_screen_keypress), NULL); 00153 g_signal_connect(G_OBJECT(error_screen), "expose-event", G_CALLBACK(error_screen_expose_event), NULL); 00154 g_signal_connect(G_OBJECT(error_screen), "destroy", G_CALLBACK(on_error_screen_destroy), NULL); 00155 00156 gtk_widget_show_all(GTK_WIDGET(topLevelVBox)); 00157 }
GtkWidget* gtk_error_screen_new | ( | ) |
creates a new GtkErrorScreen widget
- |
Definition at line 66 of file gtkErrorScreen.c.
00067 { 00068 GtkErrorScreen *errorScreen; 00069 00070 errorScreen = (GtkErrorScreen *) g_object_new(GTK_ERROR_SCREEN_TYPE, NULL); 00071 00072 CL_LOGPRINTF("error screen 0x%x", (unsigned int) errorScreen); 00073 00074 return GTK_WIDGET(errorScreen); 00075 }
void gtk_error_screen_set_image | ( | GtkErrorScreen * | error_screen, | |
ctrlErrorIcon_e | icon | |||
) |
Set thumb of GtkErrorScreen widget
item | the GtkErrorScreen widget | |
location | of the image |
Definition at line 232 of file gtkErrorScreen.c.
00233 { 00234 g_return_if_fail(IS_GTK_ERROR_SCREEN(error_screen)); 00235 00236 error_screen->pixmap = error_screen_get_image(icon); 00237 gtk_image_set_from_pixbuf(GTK_IMAGE(error_screen->image), error_screen->pixmap); 00238 //gtk_widget_show(GTK_WIDGET(error_screen->image)); 00239 return; 00240 }
void gtk_error_screen_set_text | ( | GtkErrorScreen * | screen, | |
const gchar * | text | |||
) |
Set text of GtkErrorScreen widget
item | the GtkListItem widget | |
text |
Definition at line 222 of file gtkErrorScreen.c.
00223 { 00224 g_return_if_fail(IS_GTK_ERROR_SCREEN(error_screen)); 00225 g_return_if_fail(text != NULL); 00226 00227 CL_LOGPRINTF("text %s", text); 00228 00229 gtk_label_set_text(GTK_LABEL(error_screen->text), text); 00230 }
static void on_error_screen_destroy | ( | GtkWidget * | widget, | |
gpointer | data | |||
) | [static] |
Definition at line 159 of file gtkErrorScreen.c.
00160 { 00161 GtkErrorScreen *error_screen = (GtkErrorScreen *) widget; 00162 00163 CL_WARNPRINTF("entry"); 00164 00165 // unref pixbuf object 00166 gtk_image_set_from_pixbuf(GTK_IMAGE(error_screen->image), NULL); 00167 00168 error_screen_destroy_images(); 00169 }
GdkPixbuf* g_error_images[ctrlLastIcon] [static] |
Definition at line 50 of file gtkErrorScreen.c.