void editor_track_toggle_new_roads (void) { if ( Realtime_is_random_user() ){ roadmap_messagebox ("Error", "Sorry, only registered users can record new roads. Go to Settings > Profile to register."); return; } if (EditorAllowNewRoads) EditorAllowNewRoads = 0; else EditorAllowNewRoads = 1; ssd_dialog_hide_all(dec_close); if (EditorAllowNewRoads) { editor_track_set_fuzzy (); roadmap_messagebox ("New roads", "New Road Recording is ON. Please turn it off once you've finished recording a new road."); } else { if (editor_line_get_count () > 0) roadmap_messagebox ("New roads", "Road successfully recorded. A link to edit it will be sent to your email and to you Dashboard on www.waze.com. (May take 24 hrs.)"); else roadmap_messagebox ("New roads", "New Road Recording is now OFF"); roadmap_fuzzy_reset_cycle (); } if (NumUpdateToggles == MAX_UPDATE_TOGGLES) { NumUpdateToggles--; memmove (UpdateToggleTimes, UpdateToggleTimes + 1, NumUpdateToggles * sizeof (UpdateToggleTimes[0])); } UpdateToggleTimes[NumUpdateToggles++] = LastGpsUpdate; roadmap_screen_redraw (); }
void RealtimeBonus_FloatingPopUp (RTBonus *pbonus, SsdCallback on_next_cb) { char msg[512]; const char *title; if (!pbonus) return; if (pbonus->pBonusTitle){ title = roadmap_lang_get (pbonus->pBonusTitle); } else{ if (pbonus->iType == BONUS_TYPE_POINTS) title = roadmap_lang_get ("Bonus points"); else if (pbonus->iType == BONUS_TYPE_TREASURE) title = roadmap_lang_get ("Treasure chest"); } if (pbonus->iType == BONUS_TYPE_POINTS){ if (pbonus->pBonusText){ snprintf (msg, sizeof(msg), "%s", roadmap_lang_get(pbonus->pBonusText)); } else if (pbonus->iType == BONUS_TYPE_POINTS){ snprintf (msg, sizeof(msg), "%d %s",pbonus->iNumPoints, roadmap_lang_get ("points!")); } else{ msg[0] = 0; } } else{ if (pbonus->pBonusText){ snprintf (msg, sizeof(msg), "%s", roadmap_lang_get(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'")); } } ssd_popup_show_float("BonusPopUPDlg", title, pbonus->pBonusTitleColor, msg, pbonus->pBonusTextColor, pbonus->pIconName, &pbonus->position, ADJ_SCALE(-20), NULL, on_next_cb, "More", (void *)pbonus); }
int RealtimeBonus_HandleEvent (int iID) { RTBonus *pbonus = RealtimeBonus_Get (iID); if (!pbonus) return TRUE; if (pbonus->collected) return TRUE; pbonus->collected = TRUE; if (roadmap_map_settings_road_goodies()){ if ((pbonus->iType == BONUS_TYPE_TREASURE) && Realtime_is_random_user()){ roadmap_messagebox_timeout("", roadmap_lang_get ("There may be presents in this treasure chest but you need to be a registered user in order to get them. Register in 'Settings > Profile'"), 10); return TRUE; } roadmap_log( ROADMAP_DEBUG, "Yeahhh Collecting a gift id=%d)", iID); Play_Animation_Sound (); RealtimeBonus_Animate_Pacman (); } if (pbonus->bIsCustomeBonus){ Realtime_CollectCustomBonus(iID, roadmap_twitter_is_munching_enabled() && roadmap_twitter_logged_in(), roadmap_facebook_is_munching_enabled() && roadmap_facebook_logged_in()); editor_points_add_new_points (pbonus->iNumPoints); } else{ Realtime_CollectBonus(iID, pbonus->iToken, roadmap_twitter_is_munching_enabled() && roadmap_twitter_logged_in(), roadmap_facebook_is_munching_enabled() && roadmap_facebook_logged_in()); } onBonusDelete(pbonus); return TRUE; }
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; }
///////////////////////////////////////////////////////////////////// // Way to go dialog ///////////////////////////////////////////////////////////////////// void welcome_wizard_way_to_go( void ) { SsdWidget dialog; SsdWidget group, box; SsdWidget group_title, text; SsdWidget button, separator, way_to_go_bmp; const char* explanation_text; const char* icons[3]; #define WAY_TO_GO_TEXT_1_WIDTH 225 #define WAY_TO_GO_TEXT_2_WIDTH 290 dialog = ssd_dialog_new( WELCOME_WIZ_DLG_WAY_TO_GO_NAME, roadmap_lang_get( WELCOME_WIZ_DLG_WAY_TO_GO_TITLE ), NULL, SSD_CONTAINER_TITLE ); ssd_dialog_add_vspace( dialog, ADJ_SCALE( 5 ), 0 ); box = ssd_container_new ( "Way to go box", NULL, ssd_container_get_width(), SSD_MIN_SIZE, SSD_END_ROW | SSD_ALIGN_CENTER | SSD_CONTAINER_BORDER | SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE|SSD_WIDGET_SPACE ); // Space inside white container ssd_dialog_add_vspace( box, ADJ_SCALE( 12 ), 0 ); // Title group = ssd_container_new ( "Way to go title group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW ); ssd_dialog_add_hspace( group, ADJ_SCALE( WELCOME_WIZ_DLG_WAY_TO_GO_HOFFSET ), SSD_ALIGN_VCENTER ); group_title = ssd_text_new( "Way to go title text", roadmap_lang_get( "Way to go!" ), 25, SSD_TEXT_LABEL ); ssd_text_set_color( group_title, WELCOME_WIZ_DLG_WAY_TO_GO_TITLE_COLOR ); ssd_widget_add( group, group_title ); ssd_widget_add( box, group ); ssd_dialog_add_vspace( box, ADJ_SCALE( 7 ), 0 ); group = ssd_container_new ( "Way to go separator group", NULL, ssd_container_get_width()*0.9, SSD_MIN_SIZE, SSD_ALIGN_CENTER|SSD_END_ROW ); separator = ssd_separator_new( "Separator", SSD_ALIGN_CENTER|SSD_WIDGET_SPACE ); ssd_widget_add( group, separator ); ssd_widget_add( box, group ); /* * Logo bitmap */ ssd_dialog_add_vspace( box, ADJ_SCALE( 10 ), 0 ); way_to_go_bmp = ssd_bitmap_new( "Way to go bitmap", "way_to_go_wazer", SSD_ALIGN_CENTER|SSD_END_ROW ); ssd_widget_add( box, way_to_go_bmp ); // Explanation text - I ssd_dialog_add_vspace( box, ADJ_SCALE( 12 ), 0 ); group = ssd_container_new ( "Explanation text I", NULL, ADJ_SCALE( WAY_TO_GO_TEXT_1_WIDTH ), SSD_MIN_SIZE, SSD_END_ROW|SSD_ALIGN_CENTER ); ssd_widget_set_color( group, NULL, NULL ); if ( Realtime_is_random_user() ) explanation_text = "Your temporary account has been created!"; else explanation_text = "Your account has been created!"; text = ssd_text_new( "Way to go explanation text", roadmap_lang_get( explanation_text ), 16, SSD_TEXT_LABEL|SSD_ALIGN_CENTER ); ssd_text_set_color( text, WELCOME_WIZ_DLG_WAY_TO_GO_EXPL_COLOR ); ssd_widget_add( group, text ); ssd_widget_add( box, group ); // Explanation text - II ssd_dialog_add_vspace( box, ADJ_SCALE( 20 ), 0 ); group = ssd_container_new ( "Explanation text II", NULL, ADJ_SCALE( WAY_TO_GO_TEXT_2_WIDTH ), SSD_MIN_SIZE, SSD_END_ROW|SSD_ALIGN_CENTER ); ssd_widget_set_color( group, NULL, NULL ); explanation_text = "Take a moment to click through the following screens to familiarize yourself with waze..."; text = ssd_text_new( "Way to go explanation text", roadmap_lang_get( explanation_text ), 15, SSD_TEXT_LABEL|SSD_ALIGN_CENTER ); ssd_text_set_color( text, WELCOME_WIZ_DLG_WAY_TO_GO_EXPL_COLOR ); ssd_widget_add( group, text ); ssd_widget_add( box, group ); ssd_dialog_add_vspace( box, ADJ_SCALE( 12 ), 0 ); #ifdef TOUCH_SCREEN icons[0] = "welcome_btn"; icons[1] = "welcome_btn_h"; icons[2] = NULL; button = ssd_button_label_custom( "Go", roadmap_lang_get ( "Go" ), SSD_ALIGN_CENTER, way_to_go_button_callback, icons, 2, "#FFFFFF", "#FFFFFF", 14 ); // text = ssd_widget_get( button, "label" ); // text->flags |= SSD_TEXT_NORMAL_FONT; // ssd_text_set_font_size( text, 15 ); ssd_widget_add ( box, button ); #else ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("Go")); ssd_widget_set_left_softkey_callback ( dialog, on_softkey_left_way_to_go ); #endif ssd_dialog_add_vspace( box, ADJ_SCALE( 16 ), 0 ); ssd_widget_add ( dialog, box ); ssd_dialog_activate( WELCOME_WIZ_DLG_WAY_TO_GO_NAME, NULL ); ssd_dialog_draw(); }