/* Called if an error occures */ void roadmap_net_mon_error (const char *text) { LastErrorText = text; CurrentState = NET_MON_ERROR; if(show_net_mon()) roadmap_message_set('!', text); update_activity(); }
/* Called when a connection initialization is about to be attempted. * For mobile phones this should be called when a connection * module is started. */ void roadmap_net_mon_start (void) { assert (CurrentState == NET_MON_DISABLED || CurrentState == NET_MON_OFFLINE); CurrentState = NET_MON_START; if(show_net_mon()) roadmap_message_set('!', roadmap_lang_get("Accessing network...")); // roadmap_screen_mark_redraw (); update_activity(); }
/* Called after data is sent over the net */ void roadmap_net_mon_send (size_t size) { assert (CurrentState != NET_MON_DISABLED); CurrentState = NET_MON_DATA; SendBytesCount += size; #ifndef J2ME if(show_net_mon()) roadmap_message_set('!', "%d KB", roadmap_net_mon_get_count() / 1024); #endif update_activity(); }
/* Called after data is received from the net */ void roadmap_net_mon_recv (size_t size) { #ifndef _WIN32 assert (CurrentState != NET_MON_DISABLED); #endif CurrentState = NET_MON_DATA; RecvBytesCount += size; if(show_net_mon()) roadmap_message_set('!', "%d KB", roadmap_net_mon_get_count() / 1024); update_activity(); }
void roadmap_ticker_show(void){ char text[256]; gTickerHide = FALSE; if (! roadmap_message_format (text, sizeof(text), "%*|%X")) { roadmap_message_set('*', "%d", 0); roadmap_ticker_set_last_event(default_event); } if (gTickerSupressHide) roadmap_main_remove_periodic (roadmap_ticker_supress_hide); roadmap_main_set_periodic (15000, roadmap_ticker_supress_hide); gTickerSupressHide = TRUE; if (!roadmap_screen_refresh()) roadmap_screen_redraw(); }
void roadmap_ticker_display() { char text[256]; char points[20]; char rank[20]; int text_width, ascent, descent; RoadMapGuiPoint position; RoadMapGuiPoint text_position; RoadMapImage image; int start,end, start_x; int iMyTotalPoints; int iMyRanking; int allign; int width; int text_offset_y = 25; int point_start_x = 190; int rank_start_x = 270; int new_pnts_start_x = 50; RoadMapImage x_image = NULL; const char * point_text = NULL; if ( roadmap_screen_is_hd_screen() ) { text_offset_y = 22; point_start_x = 200; rank_start_x = 280; new_pnts_start_x = 65; } width = roadmap_canvas_width(); if (!gInitialized) return ; if (!ticker_cfg_on() && !gTickerSupressHide){ gTickerOn = FALSE; return; } if (gTickerHide ){ gTickerOn = FALSE; return; } if (!roadmap_message_format (text, sizeof(text), "%X|%*")) { if (gTickerSupressHide){ roadmap_message_set('*', "%d", 0); roadmap_message_format (text, sizeof(text), "%*"); } else{ show_close_icon(); gTickerOn = FALSE; return; } } gTickerOn = TRUE; roadmap_canvas_get_text_extents (text, 14, &text_width, &ascent, &descent, NULL); roadmap_canvas_select_pen (RoadMapTickerPen); end = roadmap_canvas_width(); start = 1; start_x = 1; image = (RoadMapImage) roadmap_res_get(RES_BITMAP, RES_SKIN, TICKER_MIDDLE_IMAGE); if ( image ) { while (start < end){ position.x = start; position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset(); roadmap_canvas_draw_image ( image, &position, 0, IMAGE_NORMAL); start += roadmap_canvas_image_width( image ); } } position.x = 0; if (ssd_widget_rtl(NULL)){ allign = ROADMAP_CANVAS_RIGHT; text_position.x = roadmap_canvas_width() -4; } else{ allign = ROADMAP_CANVAS_LEFT; text_position.x = 4; } text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + 2; roadmap_canvas_draw_string_size (&text_position, allign |ROADMAP_CANVAS_TOP, 14,roadmap_lang_get("Your Points (updated daily)")); text_position.x = 4; text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + 2 +TICKER_TOP_BAR_TEXT_OFFSET; switch( gLastUpdateEvent ) { case default_event: point_text = roadmap_lang_get("New points"); break; case report_event: point_text = roadmap_lang_get("Road report"); break; case comment_event: point_text = roadmap_lang_get("Event comment"); break; case confirm_event: point_text= roadmap_lang_get("Prompt response"); break; case road_munching_event : point_text= roadmap_lang_get("Road munching"); break; case user_contribution_event : point_text= roadmap_lang_get("Traffic detection"); break; case bonus_points : point_text= roadmap_lang_get("Bonus points"); break; } roadmap_canvas_draw_string_size (&text_position, ROADMAP_CANVAS_LEFT|ROADMAP_CANVAS_TOP, 14,point_text); image = (RoadMapImage) roadmap_res_get(RES_BITMAP, RES_SKIN, TICKER_DIVIDER); if ( image ) { position.y = roadmap_bar_top_height() + TICKER_TOP_BAR_DIVIDER_OFFSET; position.x = width /3 +4 + 30; roadmap_canvas_draw_image ( image, &position, 0, IMAGE_NORMAL); position.y = roadmap_bar_top_height() + TICKER_TOP_BAR_DIVIDER_OFFSET; position.x = 2*width/3+4 +15; roadmap_canvas_draw_image ( image, &position, 0, IMAGE_NORMAL); } text_position.x = (width/3) + (width/3)/4 + 30; text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + 2 + TICKER_TOP_BAR_TEXT_OFFSET; roadmap_canvas_draw_string_size (&text_position, ROADMAP_CANVAS_LEFT|ROADMAP_CANVAS_TOP, 14,roadmap_lang_get("Total")); text_position.x = (width/3) + (width/3)/4+ 30; text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + text_offset_y +TICKER_TOP_BAR_TEXT_OFFSET; iMyTotalPoints = editor_points_get_total_points(); if (iMyTotalPoints != -1){ if (iMyTotalPoints < 10000){ sprintf(points,"%d", iMyTotalPoints); } else{ sprintf(points,"%dK", (int)iMyTotalPoints/1000); } } else{ strcpy(points,""); } roadmap_canvas_draw_string_size (&text_position, ROADMAP_CANVAS_LEFT|ROADMAP_CANVAS_TOP, 14,points); text_position.x = width - (width/3) + (width/3)/4+ 15; text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + 2 +TICKER_TOP_BAR_TEXT_OFFSET; iMyRanking = RealTime_GetMyRanking(); if (iMyRanking == -1) strcpy(rank,""); else sprintf(rank, "%d", iMyRanking); roadmap_canvas_draw_string_size (&text_position, ROADMAP_CANVAS_LEFT|ROADMAP_CANVAS_TOP, 14,roadmap_lang_get("Rank")); text_position.x = width - (width/3) + (width/3)/4+ 12; text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + text_offset_y +TICKER_TOP_BAR_TEXT_OFFSET; roadmap_canvas_draw_string_size (&text_position, ROADMAP_CANVAS_LEFT|ROADMAP_CANVAS_TOP, 14,rank); if (strcmp(text,"0")){ text_position.x = new_pnts_start_x - start_x + 30; text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + text_offset_y +TICKER_TOP_BAR_TEXT_OFFSET; roadmap_canvas_draw_string_size (&text_position, ROADMAP_CANVAS_LEFT|ROADMAP_CANVAS_TOP, 14,"+"); text_position.x = new_pnts_start_x - start_x + 40; text_position.y = roadmap_bar_top_height() + roadmap_ticker_top_bar_offset() + text_offset_y +TICKER_TOP_BAR_TEXT_OFFSET; roadmap_canvas_draw_string_size (&text_position, ROADMAP_CANVAS_LEFT|ROADMAP_CANVAS_TOP, 14,text); } #ifdef TOUCH_SCREEN x_image = (RoadMapImage) roadmap_res_get(RES_BITMAP, RES_SKIN, "x_close"); if ( x_image ) { position.x = roadmap_canvas_width() - roadmap_canvas_image_width(x_image) - 5; position.y = roadmap_bar_top_height() + gMiddleImageSize.height -roadmap_canvas_image_height(x_image) -5; roadmap_canvas_draw_image ( x_image, &position, 0, IMAGE_NORMAL); } #endif }
/* Called when user chose not to connect */ void roadmap_net_mon_offline (void) { CurrentState = NET_MON_OFFLINE; if(show_net_mon()) roadmap_message_set('!', roadmap_lang_get("Offline")); roadmap_start_exit (); }
int roadmap_display_activate (const char *title, const PluginLine *line, const RoadMapPosition *position, PluginStreet *street) { int street_has_changed; int message_has_changed; const char *format; char text[256]; RoadMapSign *sign; PluginStreetProperties properties; roadmap_log_push ("roadmap_display_activate"); sign = roadmap_display_search_sign (title); if (sign == NULL) { roadmap_log_pop (); return -1; } if (sign->format_descriptor.category == NULL) { return -1; /* This is not a sign: this is a text. */ } format = roadmap_config_get (&sign->format_descriptor); street_has_changed = 0; if (!roadmap_plugin_same_line (&sign->line, line)) { roadmap_plugin_get_street (line, street); if (sign->id != NULL) { free (sign->id); } sign->id = strdup (roadmap_plugin_street_full_name (line)); sign->line = *line; sign->was_visible = 0; if (!roadmap_plugin_same_street (street, &sign->street)) { sign->street = *street; street_has_changed = 1; } } roadmap_message_set ('F', sign->id); roadmap_plugin_get_street_properties (line, &properties, 0); roadmap_message_set ('#', properties.address); roadmap_message_set ('N', properties.street); //roadmap_message_set ('T', properties.street_t2s); roadmap_message_set ('C', properties.city); if (!strcmp(title, "Current Street")){ roadmap_message_set ('Y', properties.street); roadmap_message_set ('Z', properties.city); } if (! roadmap_message_format (text, sizeof(text), roadmap_lang_get(format))) { roadmap_log_pop (); *street = sign->street; return 0; } message_has_changed = (sign->content == NULL || strcmp (sign->content, text) != 0); if (roadmap_config_get_integer (&RoadMapConfigDisplayDuration) == -1) { sign->deadline = -1; } else { sign->deadline = time(NULL) + roadmap_config_get_integer (&RoadMapConfigDisplayDuration); } if (street_has_changed) { roadmap_voice_announce (sign->title); } if (message_has_changed) { if (sign->content != NULL) { free (sign->content); } if (text[0] == 0) { sign->content = strdup("(this street has no name)"); } else { sign->content = strdup (text); } } roadmap_plugin_line_from (line, &sign->endpoint[0]); roadmap_plugin_line_to (line, &sign->endpoint[1]); if (position == NULL) { sign->has_position = 0; } else { sign->has_position = 1; sign->position = *position; } roadmap_log_pop (); *street = sign->street; return 0; }