void ssd_confirm_dialog_close (void) { confirm_dialog_context *data; ConfirmDialogCallback callback = NULL; SsdWidget dialog; int exit_code = dec_ok; dialog = ssd_dialog_context(); data = (confirm_dialog_context *) ssd_dialog_context(); if (data){ callback = (ConfirmDialogCallback)data->callback; if (data->default_yes) exit_code = dec_yes; else exit_code = dec_no; } callback = (ConfirmDialogCallback)data->callback; kill_messagebox_timer (); ssd_dialog_hide ("confirm_dialog", dec_ok); if (!roadmap_screen_refresh()) roadmap_screen_redraw(); if (callback) (*callback)(exit_code, data->context); }
void RealtimeAltRoutes_OnRouteResults (NavigateRouteRC rc, int num_res, const NavigateRouteResult *res){ int i; CalculatingAltRoutes = FALSE; if (num_res > MAX_ROUTES) num_res = MAX_ROUTES; if (rc != route_succeeded){ roadmap_main_remove_periodic(route_request_timeout); ssd_progress_msg_dialog_hide (); roadmap_log(ROADMAP_ERROR,"RealtimeAltRoutes_OnRouteResults failed rc=%d", rc ); return; } roadmap_log (ROADMAP_DEBUG,"RealtimeAltRoutes_OnRouteResults %d", num_res); altRoutesTrips.altRoutTrip[0].iNumRoutes = num_res; for (i = 0; i < num_res ; i++){ altRoutesTrips.altRoutTrip[0].pRouteResults[i] = *(res+i);//todo check } altRoutesTrips.altRoutTrip[0].iTripLenght = altRoutesTrips.altRoutTrip[0].pRouteResults[0].total_time; altRoutesTrips.altRoutTrip[0].iTripDistance = altRoutesTrips.altRoutTrip[0].pRouteResults[0].total_length; roadmap_alternative_routes_routes_dialog(gShowListFirst); roadmap_screen_refresh(); }
void RealtimeAltRoutes_OnTripRouteResults (NavigateRouteRC rc, int num_res, const NavigateRouteResult *res){ int i; if (num_res > MAX_ROUTES) num_res = MAX_ROUTES; if (rc != route_succeeded){ roadmap_log(ROADMAP_ERROR,"RealtimeAltRoutes_OnTripRouteResults failed rc=%d", rc ); return; } roadmap_log (ROADMAP_DEBUG,"RealtimeAltRoutes_OnRouteResults %d", num_res); altRoutesTrips.altRoutTrip[0].iNumRoutes = num_res; for (i = 0; i < num_res ; i++){ altRoutesTrips.altRoutTrip[0].pRouteResults[i] = *(res+i); } altRoutesTrips.altRoutTrip[0].iTripLenght = altRoutesTrips.altRoutTrip[0].pRouteResults[0].total_time; altRoutesTrips.altRoutTrip[0].iTripDistance = altRoutesTrips.altRoutTrip[0].pRouteResults[0].total_length; roadmap_trip_set_point ("Destination", &altRoutesTrips.altRoutTrip[0].destPosition); roadmap_trip_set_point ("Departure", &altRoutesTrips.altRoutTrip[0].srcPosition); roadmap_alternative_routes_suggest_route_dialog(); roadmap_screen_refresh(); }
static void on_option_selected( BOOL made_selection, ssd_cm_item_ptr item, void* context) { privacy_context_menu_items selection; int exit_code = dec_ok; g_context_menu_is_active = FALSE; if( !made_selection) return; selection = item->id; switch( selection) { case privacy_cm_save: save_changes(); ssd_dialog_hide_current(dec_close); break; case privacy_cm_exit: exit_code = dec_cancel; ssd_dialog_hide_all( exit_code); roadmap_screen_refresh (); break; default: break; } }
static void on_option_selected( BOOL made_selection, ssd_cm_item_ptr item, void* context) { contextmenu_items selection = cm__invalid; BOOL close = FALSE; BOOL do_nav = FALSE; s_menu = FALSE; if( !made_selection) return; selection = item->id; switch( selection) { case cm_navigate: do_nav = TRUE; // Roll down... case cm_show: close = navigate( do_nav); break; case cm_add_to_favorites: { int selected_list_item = get_selected_list_item(); const address_candidate* selection = generic_search_result( selected_list_item); RoadMapPosition position; position.latitude = (int)(selection->latitude*1000000); position.longitude= (int)(selection->longtitude*1000000); generic_search_add_address_to_history( ADDRESS_FAVORITE_CATEGORY, selection->city, selection->street, get_house_number__str( selection->house), selection->state, selection->name, &position); break; } case cm_cancel: close = FALSE; break; default: assert(0); break; } if( close) { ssd_dialog_hide_all( dec_close); if (!roadmap_screen_refresh ()) roadmap_screen_redraw(); } }
static void on_user_lang_downloaded(void){ clean_up(); ssd_progress_msg_dialog_hide(); roadmap_screen_refresh(); if (GeoConfigContext.callback) (*GeoConfigContext.callback)(); GeoConfigContext.callback = NULL; }
void RealtimeAltRoutes_OnTripRouteRC (NavigateRouteRC rc, int protocol_rc, const char *description){ if ((protocol_rc != 200) || (rc != route_succeeded)){ roadmap_log (ROADMAP_ERROR,"RealtimeAltRoutes_OnTripRouteRC - %s (rc=%d)", description, rc); if (roadmap_alternative_routes_suggest_dlg_active()){ ssd_dialog_hide_all(dec_close); if (!roadmap_screen_refresh()) roadmap_screen_redraw(); roadmap_messagebox_timeout("Oops", description, 5); } } }
int on_options(SsdWidget widget, const char *new_value, void *context) { int menu_x; BOOL add_cancel = TRUE; BOOL b_report_wrong_address = ( get_selected_list_item()== COULDNT_FIND_INDEX ) ; #ifdef TOUCH_SCREEN roadmap_screen_refresh(); #endif assert( !s_menu); if (ssd_widget_rtl (NULL)) menu_x = SSD_X_SCREEN_RIGHT; else menu_x = SSD_X_SCREEN_LEFT; ssd_contextmenu_show_item( &context_menu, cm_navigate, !generic_search_dlg_is_1st(search_address)&&(!b_report_wrong_address), FALSE); ssd_contextmenu_show_item( &context_menu, cm_show, !generic_search_dlg_is_1st(search_address)&&(!b_report_wrong_address), FALSE); ssd_contextmenu_show_item( &context_menu, cm_add_to_favorites, !generic_search_dlg_is_1st(search_address)&&(!b_report_wrong_address), FALSE); ssd_contextmenu_show_item( &context_menu, cm_send, b_report_wrong_address, FALSE); ssd_contextmenu_show_item( &context_menu, cm_cancel, add_cancel, FALSE); ssd_context_menu_show( menu_x, // X SSD_Y_SCREEN_BOTTOM, // Y &context_menu, on_option_selected, NULL, dir_default, 0); s_menu = TRUE; return 0; }
void RealtimeAltRoutes_OnRouteResults (NavigateRouteRC rc, int num_res, const NavigateRouteResult *res){ int i; if (num_res > MAX_ROUTES) num_res = MAX_ROUTES; altRoutesTrips.altRoutTrip[gTripId].iNumRoutes = num_res; if (rc != route_succeeded){ return; } for (i = 0; i < num_res ; i++){ altRoutesTrips.altRoutTrip[gTripId].pRouteResults[i] = *(res+i);//todo check } roadmap_alternative_routes_routes_dialog(); roadmap_screen_refresh(); }
static void update_button(void){ char button_txt[20]; SsdWidget button = ssd_widget_get(dialog, "Hide"); if (g_seconds != -1) sprintf(button_txt, "%s (%d)", roadmap_lang_get ("Hide"), g_seconds); else sprintf(button_txt, "%s", roadmap_lang_get ("Hide")); #ifdef TOUCH_SCREEN if (button) ssd_button_change_text(button,button_txt ); #else ssd_widget_set_right_softkey_text(dialog->parent, button_txt); ssd_dialog_refresh_current_softkeys(); #endif if (!roadmap_screen_refresh()) roadmap_screen_redraw(); }
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(); }
static void roadmap_address_done (RoadMapGeocode *selected, RoadMapAddressDialog *context, address_info_ptr ai) { PluginStreet street; PluginLine line; RoadMapPosition from; RoadMapPosition to; roadmap_locator_activate (selected->fips); roadmap_log (ROADMAP_DEBUG, "selected address at %d.%06d %c, %d.%06d %c", abs(selected->position.longitude)/1000000, abs(selected->position.longitude)%1000000, selected->position.longitude >= 0 ? 'E' : 'W', abs(selected->position.latitude)/1000000, abs(selected->position.latitude)%1000000, selected->position.latitude >= 0 ? 'N' : 'S'); roadmap_math_adjust_zoom (selected->square); roadmap_plugin_set_line (&line, ROADMAP_PLUGIN_ID, selected->line, -1, selected->square, selected->fips); roadmap_trip_set_point ("Selection", &selected->position); roadmap_trip_set_point ("Address", &selected->position); if (!context->navigate || !RoadMapAddressNavigate) { roadmap_trip_set_focus ("Address"); roadmap_display_activate ("Selected Street", &line, &selected->position, &street); roadmap_street_extend_line_ends (&line, &from, &to, FLAG_EXTEND_BOTH, NULL, NULL); roadmap_display_update_points ("Selected Street", &from, &to); roadmap_screen_refresh (); } else { if ((*RoadMapAddressNavigate) (&selected->position, &line, 0, ai) != -1) { } } }
void roadmap_geo_config_transaction_failed(void){ ssd_progress_msg_dialog_hide(); #ifdef J2ME roadmap_messagebox_cb ("Oops", "Network connection is not available. Please check your device's network settings.",roadmap_geo_config_failed_cb); #else roadmap_messagebox ("Oops", "Network connection is not available. Please check your device's network settings."); #endif clean_up(); //Remove timer roadmap_main_remove_periodic (GeoConfigTimer); roadmap_screen_refresh(); // on error, exit, don't continue. if (GeoConfigContext.callback) (*GeoConfigContext.callback)(); }
void GeoConfigTimer (void) { roadmap_log (ROADMAP_ERROR,"GeoServerConfig Timeout!! received %d out of %d", GeoConfigContext.num_received+1, GeoConfigContext.num_results ); ssd_progress_msg_dialog_hide(); roadmap_log(ROADMAP_ERROR,"Geo config timed out : exiting"); roadmap_messagebox_cb ("Oops", "Could not establish network connection. Please check your device's network settings.", roadmap_geo_config_failed_cb); clean_up(); roadmap_screen_refresh(); //Remove timer roadmap_main_remove_periodic (GeoConfigTimer); /* - if geo config failed - Exit. if (GeoConfigContext.callback) (*GeoConfigContext.callback)(); */ }
static void on_search(void) { SsdWidget list_cont; SsdWidget edit; const char* text; roadmap_result rc; const char* dl_prefix = roadmap_lang_get ("map:"); SsdWidget dlg = generic_search_dlg_get_search_dlg(search_address); edit = generic_search_dlg_get_search_edit_box(search_address); if ( !strcmp( DEBUG_LEVEL_SET_PATTERN, ssd_text_get_text( edit ) ) ) { roadmap_start_reset_debug_mode(); return; } if ( !strcmp( "##@il", ssd_text_get_text( edit ) ) ) { roadmap_geo_config_il(NULL); return; } if ( !strcmp( "##@usa", ssd_text_get_text( edit ) ) ) { roadmap_geo_config_usa(NULL); return; } if ( !strcmp( "##@heb", ssd_text_get_text( edit ) ) ) { roadmap_lang_set_system_lang("heb"); roadmap_messagebox("", "changed to hebrew, please restart wase"); return; } if ( !strcmp( "##@eng", ssd_text_get_text( edit ) ) ) { roadmap_messagebox("","changed to english, please restart wase"); roadmap_lang_set_system_lang("eng"); return; } if ( !strncmp( dl_prefix, ssd_text_get_text( edit ), strlen( dl_prefix ) ) ) { roadmap_map_download_region( ssd_text_get_text( edit ) + strlen( dl_prefix ), roadmap_locator_static_county() ); ssd_dialog_hide_all( dec_close); if (!roadmap_screen_refresh ()) roadmap_screen_redraw(); return; } s_searching = TRUE; roadmap_main_set_periodic( 100, search_progress_message_delayed ); text = ssd_text_get_text( edit ); list_cont= dlg->context; rc = address_search_resolve_address( list_cont, on_address_resolved, text ); if( succeeded == rc) { roadmap_main_set_cursor( ROADMAP_CURSOR_WAIT); roadmap_log(ROADMAP_DEBUG, "address_search_dlg::on_search() - Started Web-Service transaction: Resolve address"); } else { const char* err = roadmap_result_string( rc); s_searching = FALSE; roadmap_log(ROADMAP_ERROR, "address_search_dlg::on_search() - Resolve process transaction failed to start"); /* Close the progress message */ ssd_progress_msg_dialog_hide(); roadmap_messagebox_cb ( roadmap_lang_get( "Resolve Address"), roadmap_lang_get( err ), on_search_error_message ); } }
static void on_search(void) { SsdWidget list_cont; SsdWidget edit; const char* text; roadmap_result rc; const char* dl_prefix = roadmap_lang_get ("map:"); SsdWidget dlg = generic_search_dlg_get_search_dlg(search_address); edit = generic_search_dlg_get_search_edit_box(search_address); if ( !strcmp( DEBUG_LEVEL_SET_PATTERN, ssd_text_get_text( edit ) ) ) { roadmap_start_reset_debug_mode(); return; } if ( !strcmp( "##@coord", ssd_text_get_text( edit ) ) ) { roadmap_gps_reset_show_coordinates(); return; } if ( !strcmp( "##@il", ssd_text_get_text( edit ) ) ) { roadmap_geo_config_il(NULL); return; } if ( !strcmp( "##@usa", ssd_text_get_text( edit ) ) ) { roadmap_geo_config_usa(NULL); return; } if ( !strcmp( "##@other", ssd_text_get_text( edit ) ) ) { roadmap_geo_config_other(NULL); return; } if ( !strcmp( "##@stg", ssd_text_get_text( edit ) ) ) { roadmap_geo_config_stg(NULL); return; } if ( !strcmp( "##@heb", ssd_text_get_text( edit ) ) ) { roadmap_lang_set_system_lang("heb", TRUE); roadmap_messagebox("", "Language changed to Hebrew, please restart waze"); return; } if ( !strcmp( "##@eng", ssd_text_get_text( edit ) ) ) { roadmap_lang_set_system_lang("eng", TRUE); roadmap_messagebox("","Language changed to English, please restart waze"); return; } if ( !strcmp( "cc@tts", ssd_text_get_text( edit ) ) ) { tts_clear_cache(); roadmap_messagebox("","TTS cache has been cleared!"); return; } if ( !strcmp( "##@tts", ssd_text_get_text( edit ) ) ) { tts_set_feature_enabled( !tts_feature_enabled() ); if ( tts_feature_enabled() ) { roadmap_messagebox("","TTS Feature is enabled!\nPlease restart WAZE."); } else { roadmap_messagebox("","TTS Feature is disabled!"); } navigate_main_override_nav_settings(); return; } if ( !strcmp( "dbg@tts", ssd_text_get_text( edit ) ) ) { if ( !strcmp( tts_was_provider_voices_set(), TTS_WAS_VOICES_SET_PRODUCTION ) ) { tts_was_provider_apply_voices_set( TTS_WAS_VOICES_SET_DEBUG ); roadmap_messagebox("","TTS Feature is running in debug mode!\nPlease restart WAZE."); } else { tts_was_provider_apply_voices_set( TTS_WAS_VOICES_SET_PRODUCTION ); roadmap_messagebox("","TTS Feature is running in production mode!\nPlease restart WAZE."); } return; } if ( !strncmp( dl_prefix, ssd_text_get_text( edit ), strlen( dl_prefix ) ) ) { roadmap_map_download_region( ssd_text_get_text( edit ) + strlen( dl_prefix ), roadmap_locator_static_county() ); ssd_dialog_hide_all( dec_close); if (!roadmap_screen_refresh ()) roadmap_screen_redraw(); return; } s_searching = TRUE; roadmap_main_set_periodic( 100, search_progress_message_delayed ); text = ssd_text_get_text( edit ); list_cont= dlg->context; rc = address_search_resolve_address( list_cont, on_address_resolved, text ); if( succeeded == rc) { roadmap_main_set_cursor( ROADMAP_CURSOR_WAIT); roadmap_log(ROADMAP_DEBUG, "address_search_dlg::on_search() - Started Web-Service transaction: Resolve address"); } else { const char* err = roadmap_result_string( rc); s_searching = FALSE; roadmap_log(ROADMAP_ERROR, "address_search_dlg::on_search() - Resolve process transaction failed to start"); /* Close the progress message */ ssd_progress_msg_dialog_hide(); roadmap_messagebox_cb ( roadmap_lang_get( "Resolve Address"), roadmap_lang_get( err ), on_search_error_message ); } }
void roadmap_ticker_hide(void){ gTickerHide = TRUE; if (!roadmap_screen_refresh()) roadmap_screen_redraw(); }
void roadmap_ticker_supress_hide(void){ gTickerSupressHide = FALSE; if(!roadmap_screen_refresh()) roadmap_screen_redraw(); roadmap_main_remove_periodic (roadmap_ticker_supress_hide); }
int RealtimeBonus_PopUpNext (SsdWidget widget, const char *new_value) { SsdWidget popup, spacer, container, button, text, icon; char msg[512]; RTBonus *pbonus = g_pbonus; const char *title; char *text_color = "#ffffff"; int width; if (!pbonus) return 0; if (ssd_dialog_is_currently_active () && (!strcmp (ssd_dialog_currently_active_name (), "BonusPopUPDlg"))) ssd_dialog_hide_current (dec_cancel); if (pbonus->pBonusTitle){ title = roadmap_lang_get (pbonus->pBonusTitle); } else{ if (pbonus->iType == BONUS_TYPE_TREASURE) title = roadmap_lang_get ("Treasure chest"); } popup = ssd_popup_new ("BonusPopUPDlg", title, NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, &pbonus->position, SSD_POINTER_LOCATION | SSD_ROUNDED_BLACK,DIALOG_ANIMATION_FROM_TOP); spacer = ssd_container_new ("space", "", SSD_MIN_SIZE, 5, SSD_END_ROW); ssd_widget_set_color (spacer, NULL, NULL); ssd_widget_add (popup, spacer); container = ssd_container_new ("IconCon", "", 50, SSD_MIN_SIZE, SSD_ALIGN_RIGHT); ssd_widget_set_color (container, NULL, NULL); icon = ssd_bitmap_new ("bonusIcon", pbonus->pIconName, SSD_ALIGN_VCENTER | SSD_ALIGN_CENTER); ssd_widget_add (container, icon); ssd_widget_add (popup, container); if (pbonus->pBonusText){ snprintf (msg, sizeof(msg), "%s", pbonus->pBonusText); }else if (pbonus->iType == BONUS_TYPE_TREASURE){ if (!Realtime_is_random_user()) snprintf (msg, sizeof(msg), "%s", roadmap_lang_get ("There may be presents in this treasure chest! You'll know when you drive over it.")); else snprintf (msg, sizeof(msg), "%s", roadmap_lang_get ("There may be presents in this treasure chest! You'll know when you drive over it. Note: You need to be a registered user in order to receive the gift inside. Register in 'Settings > Profile'")); } if (roadmap_canvas_width() > roadmap_canvas_height()) width = roadmap_canvas_height() - 90; else width = roadmap_canvas_width() - 90; container = ssd_container_new ("IconCon", "", width, SSD_MIN_SIZE, 0); ssd_widget_set_color (container, NULL, NULL); text = ssd_text_new ("PointsTxt", msg, 16, SSD_END_ROW); if (pbonus->pBonusTextColor) text_color = pbonus->pBonusTextColor; ssd_text_set_color (text,text_color); ssd_widget_add (container, text); ssd_widget_add (popup, container); #ifdef TOUCH_SCREEN spacer = ssd_container_new ("space", "", SSD_MIN_SIZE, 5, SSD_END_ROW); ssd_widget_set_color (spacer, NULL, NULL); ssd_widget_add (popup, spacer); button = ssd_button_label ("Close_button", roadmap_lang_get ("Close"), SSD_ALIGN_CENTER, on_close); ssd_widget_add (popup, button); #endif //TOUCH_SCREEN ssd_dialog_activate ("BonusPopUPDlg", NULL); if (!roadmap_screen_refresh ()) { roadmap_screen_redraw (); } return 1; }
static void hide_timer(void){ ssd_progress_msg_dialog_hide(); if (!roadmap_screen_refresh()) roadmap_screen_redraw(); roadmap_main_remove_periodic (hide_timer); }
static void show_reminder_dlg(){ ssd_dialog_activate(REMINDER_POP_DLG_NAME, NULL); if (!roadmap_screen_refresh()){ roadmap_screen_redraw(); } }
static void on_recieved_completed (void) { char updateText[] = "We've made a few infrastructural changes that require re-start. Please exit and re-start waze."; const char *user_lang = roadmap_lang_get_user_lang();//"heb";//todomt const char *force_lang = roadmap_config_get( &RoadMapConfigForceLanguage); // compare the old and new server id's - if different, user needs to restart int oldServerId = roadmap_config_get_integer(&RoadMapConfigSystemServerId); int newServerId = GeoConfigContext.id; // Save the RT server ID. roadmap_config_set_integer (&RoadMapConfigSystemServerId, GeoConfigContext.id); #ifndef J2ME // in J2ME don't download the language until user chooses it manually // TODODAN //set the language if (!strcmp(force_lang, "")){ roadmap_lang_set_system_lang (GeoConfigContext.lang, NULL); }else{ roadmap_lang_set_system_lang (force_lang, NULL); } #endif // Save version roadmap_config_set_integer (&RoadMapConfigGeoConfigVersion, GeoConfigContext.version); //Save new configuration roadmap_config_save (0); //Remove timer roadmap_main_remove_periodic (GeoConfigTimer); roadmap_log (ROADMAP_DEBUG,"GeoServerConfig Completed setting all parameters!!" ); roadmap_log (ROADMAP_INFO, "GeoServerConfig: user_lang='%s' newServerId=%d", user_lang, newServerId ); if ((user_lang[0] == 0) && (newServerId != 2)){ roadmap_lang_download_conf_file(on_lang_conf_downloaded); return; } if ((user_lang[0] == 0) && (newServerId == 2)){ roadmap_lang_set_system_lang(GeoConfigContext.lang, NULL); } if ((oldServerId==-1)){ ssd_progress_msg_dialog_show("Downloading language"); roadmap_lang_download_lang_file(roadmap_lang_get_system_lang(), on_user_lang_downloaded); //on_user_lang_downloaded();//todomt return; } #ifndef J2ME roadmap_lang_download_lang_file(GeoConfigContext.lang, NULL); #endif ssd_progress_msg_dialog_hide(); clean_up(); roadmap_screen_refresh(); if (GeoConfigContext.callback) (*GeoConfigContext.callback)(); GeoConfigContext.callback = NULL; // if ((oldServerId!=newServerId)&&(oldServerId!=-1)){ // // roadmap_lang_set_update_time(""); //#ifndef J2ME // roadmap_lang_set_lang_file_update_time("heb",""); // roadmap_lang_set_lang_file_update_time("eng",""); //#endif // roadmap_prompts_set_update_time (""); // roadmap_splash_set_update_time (""); // roadmap_splash_reset_check_time(); // roadmap_config_save(FALSE); //#if (defined (IPHONE) || defined (ANDROID)) // roadmap_tile_remove_all(roadmap_locator_active()); //#endif // roadmap_messagebox_cb(roadmap_lang_get("Please restart Waze"), roadmap_lang_get(updateText), restart_msg_cb); // } }