static void about_dialog(char *about){ SsdWidget dialog; SsdWidget text; SsdWidget bitmap; const char* map_credit = roadmap_start_get_map_credit(); if ( !ssd_dialog_exists( "about" ) ) { dialog = ssd_dialog_new ( "about", "", NULL, SSD_CONTAINER_BORDER|SSD_DIALOG_FLOAT| SSD_ALIGN_CENTER|SSD_ALIGN_VCENTER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_BLACK); ssd_widget_set_color (dialog, "#000000", "#ff0000000"); ssd_widget_add (dialog, ssd_container_new ("spacer1", NULL, 0, 10, SSD_END_ROW)); bitmap = ssd_bitmap_new("waze_log", "waze_logo", SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_add (dialog,bitmap); ssd_widget_add (dialog, ssd_container_new ("spacer1", NULL, 0, 10, SSD_END_ROW)); text = ssd_text_new ("text", about, 13, SSD_END_ROW|SSD_WIDGET_SPACE|SSD_ALIGN_CENTER); ssd_text_set_color(text,"#ffffff"); ssd_widget_add (dialog,text); /* Spacer */ ssd_widget_add (dialog, ssd_container_new ("spacer2", NULL, 0, 10, SSD_END_ROW)); if (map_credit && *map_credit){ text = ssd_text_new ("text", map_credit, 10, SSD_END_ROW|SSD_WIDGET_SPACE|SSD_ALIGN_CENTER); ssd_text_set_color(text,"#ffffff"); ssd_widget_add (dialog,text); } ssd_widget_add (dialog, ssd_container_new ("spacer2", NULL, 0, 10, SSD_END_ROW)); ssd_widget_add (dialog, ssd_button_label ("confirm", roadmap_lang_get ("Ok"), SSD_ALIGN_CENTER|SSD_START_NEW_ROW|SSD_WS_DEFWIDGET| SSD_WS_TABSTOP, about_callbak)); } ssd_dialog_activate("about", NULL); roadmap_screen_redraw(); }
SsdWidget ssd_checkbox_row_new (const char *name, const char* label, BOOL Selected, SsdCallback callback, const char *checked_icon, const char *unchecked_icon, int style) { char widget_name[256]; SsdWidget box, box2; SsdWidget text; int row_height = ssd_container_get_row_height(); int width = ssd_container_get_width(); //Create container snprintf(widget_name, sizeof(widget_name), "%s_group", name); box = ssd_container_new (widget_name, NULL, SSD_MAX_SIZE, row_height, SSD_WIDGET_SPACE|SSD_END_ROW|SSD_WS_TABSTOP); ssd_widget_set_color (box, NULL, NULL); //Create text label snprintf(widget_name, sizeof(widget_name), "%s_label", name); box2 = ssd_container_new ("box2", NULL, 2*width/3, SSD_MAX_SIZE, SSD_ALIGN_VCENTER); ssd_widget_set_color(box2, NULL, NULL); text = ssd_text_new (widget_name, label, SSD_MAIN_TEXT_SIZE, SSD_TEXT_NORMAL_FONT|SSD_TEXT_LABEL|SSD_ALIGN_VCENTER|SSD_WIDGET_SPACE); ssd_text_set_color(text, SSD_CONTAINER_TEXT_COLOR); ssd_widget_add (box2, text); ssd_widget_add(box,box2); //Create checkbox snprintf(widget_name, sizeof(widget_name), "%s", name); ssd_widget_add (box, ssd_checkbox_new (widget_name, Selected , SSD_ALIGN_VCENTER|SSD_ALIGN_RIGHT, callback,checked_icon,unchecked_icon,style)); ssd_dialog_add_hspace (box, 5, SSD_ALIGN_RIGHT); return box; }
SsdWidget navigate_res_ETA_widget(int iRouteDistance, int iRouteLenght, const char *via, BOOL showDistance, BOOL showAltBtn, SsdCallback callback){ SsdWidget ETA_container, inner_container, button, text; char *icon[3]; int inner_width; int font_size; int alt_route_button_w = 60; int width = SSD_MAX_SIZE; int factor = 10; int num_spaces = 7; if (roadmap_screen_is_hd_screen()) alt_route_button_w = 90; #ifdef IPHONE_NATIVE width = 280; #else width = roadmap_canvas_width() - 40; if (roadmap_canvas_height() < roadmap_canvas_width()) width = roadmap_canvas_height() - 40; #endif #ifndef TOUCH_SCREEN alt_route_button_w = 0; #endif ETA_container = ssd_container_new ("eta container", NULL, width, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_ALIGN_CENTER | SSD_END_ROW ); ssd_widget_set_color(ETA_container, NULL, NULL); if (roadmap_canvas_width() > roadmap_canvas_height()){ inner_width = roadmap_canvas_height() - alt_route_button_w - 40; }else{ inner_width = roadmap_canvas_width() - alt_route_button_w - 40; } inner_container = ssd_container_new ("inner container", NULL, inner_width, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW ); ssd_widget_set_color(inner_container, NULL, NULL); // Add Alternatives buttons #ifdef TOUCH_SCREEN if (roadmap_alternative_feature_enabled() && RealTimeLoginState () && showAltBtn){ icon[0] = "alternative_button"; icon[1] = "alternative_button_s"; icon[2] = NULL; button = ssd_button_new("Alt_button", "Alt",(const char**) &icon[0], 2, SSD_ALIGN_RIGHT|SSD_WS_TABSTOP, callback); ssd_widget_add(ETA_container, button); } #endif #ifdef IPHONE_NATIVE // ssd_widget_add (inner_container, space (7)); #endif font_size = 30; #ifdef RIMAPI font_size = 22; #endif text = ssd_text_new ("ETA_W_Minutes_Text", "", font_size, 0); ssd_text_set_color(text,"#ffffff"); ssd_widget_add (inner_container, text); ssd_dialog_add_hspace(inner_container, 3, 0); font_size = 24; #ifdef RIMAPI ssd_widget_set_offset(text, 0, 4); font_size = 16; #endif text = ssd_text_new ("ETA__W_Min_text", roadmap_lang_get ("min."), font_size, 0); ssd_text_set_color(text,"#ffffff"); #ifndef RIMAPI ssd_widget_set_offset(text, 0, 6); #else ssd_widget_set_offset(text, 0, 13); #endif ssd_widget_add (inner_container, text); if (showDistance){ #ifndef RIMAPI ssd_dialog_add_hspace(inner_container, 5, 0); #else ssd_dialog_add_hspace(inner_container, 3, 0); #endif text = ssd_text_new ("ETA_W_Distance_Text", "", 18, SSD_TEXT_NORMAL_FONT); ssd_text_set_color(text,"#ffffff"); ssd_widget_add (inner_container, text); //#ifndef IPHONE_NATIVE #ifdef RIMAPI ssd_dialog_add_hspace(inner_container, 1, 0); ssd_widget_set_offset(text, 0, 11); #else ssd_dialog_add_hspace(inner_container, 3, 0); ssd_widget_set_offset(text, 0, 14); #endif //#endif text = ssd_text_new ("ETA_W_Distance_Unit_Text", "", 16, SSD_END_ROW|SSD_TEXT_NORMAL_FONT); ssd_text_set_color(text,"#ffffff"); ssd_widget_add (inner_container, text); //#ifndef IPHONE_NATIVE #ifdef RIMAPI ssd_widget_set_offset(text, 0, 13); #else ssd_widget_set_offset(text, 0, 15); #endif //#endif } #ifdef RIMAPI num_spaces = 2; #endif ssd_widget_add (inner_container, space (num_spaces)); text = ssd_text_new ("ETA_Text", "", 18, SSD_TEXT_NORMAL_FONT); ssd_text_set_color(text,"#ffffff"); ssd_widget_add (inner_container, text); ssd_dialog_add_hspace(inner_container, 3, 0); text = ssd_text_new ("ETA_W_ETA_TIME_Text", "", 18, SSD_END_ROW|SSD_TEXT_NORMAL_FONT); ssd_text_set_color(text,"#ffffff"); ssd_widget_add (inner_container, text); ssd_widget_add (inner_container, space (2)); // VIA Text #ifndef RIMAPI text = ssd_text_new ("ETA_W_VIA_Text", "", 16, SSD_END_ROW|SSD_TEXT_NORMAL_FONT); #else text = ssd_text_new ("ETA_W_VIA_Text", "", 13, SSD_END_ROW|SSD_TEXT_NORMAL_FONT); #endif ssd_text_set_color(text,"#ffffff"); ssd_widget_add (inner_container, text); ssd_widget_add(ETA_container, inner_container); navigate_res_update_ETA_widget(ETA_container, iRouteDistance, iRouteLenght, via, showDistance); return ETA_container; }
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; }
///////////////////////////////////////////////////////////////////// // Twitter ///////////////////////////////////////////////////////////////////// void welcome_wizard_twitter_dialog(void){ SsdWidget dialog; SsdWidget group, box, label, label_cnt; SsdWidget group_title, text; SsdWidget bitmap, button; const char* icons[3]; dialog = ssd_dialog_new( WELCOME_WIZ_DLG_TWITTER_NAME, roadmap_lang_get( WELCOME_WIZ_DLG_TWITTER_TITLE ), NULL, SSD_CONTAINER_TITLE|SSD_DIALOG_NO_SCROLL ); // Space before white container ssd_dialog_add_vspace( dialog, ADJ_SCALE( 3 ), 0 ); box = ssd_container_new ( "Sign Up Box", NULL, SSD_MAX_SIZE, 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( 1 ), 0 ); // Twitter title group = ssd_container_new ( "Twitter title group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW ); ssd_dialog_add_hspace( group, ADJ_SCALE( WELCOME_WIZ_DLG_HOFFSET ), SSD_ALIGN_VCENTER ); bitmap = ssd_bitmap_new( "Twitter logo","welcome_twitter", SSD_ALIGN_VCENTER); ssd_widget_add( group, bitmap ); ssd_dialog_add_hspace( group, ADJ_SCALE( 15 ), SSD_ALIGN_VCENTER ); group_title = ssd_text_new( "Twitter", roadmap_lang_get( "Twitter" ), 15, SSD_TEXT_LABEL ); ssd_text_set_color( group_title, "#202020" ); ssd_widget_add( group, group_title ); ssd_widget_add( box, group ); // Tweeter explanation text ssd_dialog_add_vspace( box, ADJ_SCALE( 16 ), 0 ); group = ssd_container_new ( "Twitter text", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW ); ssd_dialog_add_hspace( group, ADJ_SCALE( 5 ), SSD_ALIGN_VCENTER ); label = ssd_text_new( "Label", roadmap_lang_get ( "Tweet your road reports" ), WELCOME_WIZ_DLG_LBL_FONT, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER | SSD_TEXT_NORMAL_FONT ); ssd_text_set_color( label, WELCOME_WIZ_DLG_LBL_COLOR ); ssd_widget_add( group, label ); ssd_widget_add( box, group ); // Username ssd_dialog_add_vspace( box, ADJ_SCALE( 14 ), 0 ); group = get_welcome_wiz_entry_group( "Username", "TwitterUserName", "Username" ); ssd_widget_add( box, group ); // Password ssd_dialog_add_vspace( box, ADJ_SCALE( 10 ), 0 ); group = get_welcome_wiz_entry_group( "Password", "TwitterPassword", "Password" ); ssd_widget_add( box, group ); // Tweet checkout waze ssd_dialog_add_vspace( box, ADJ_SCALE( 4 ), 0 ); group = ssd_container_new ("Tweet checkout group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW | SSD_WS_TABSTOP ); ssd_widget_set_color ( group, NULL, NULL ); ssd_dialog_add_hspace( group, ADJ_SCALE( WELCOME_WIZ_DLG_HOFFSET ), 0 ); ssd_widget_add( group, ssd_checkbox_new ( WELCOME_WIZ_DLG_TWITTER_SET_SIGNUP, TRUE, 0, NULL, NULL, NULL, CHECKBOX_STYLE_DEFAULT ) ); label_cnt = ssd_container_new ( "Label container", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_ALIGN_VCENTER ); ssd_widget_set_color ( label_cnt, NULL, NULL ); ssd_dialog_add_hspace( label_cnt, ADJ_SCALE( 10 ), 0 ); label = ssd_text_new ("Label", roadmap_lang_get ( "Tweet that I'm checking-out waze"), WELCOME_WIZ_DLG_LBL_FONT, SSD_TEXT_NORMAL_FONT|SSD_TEXT_LABEL|SSD_ALIGN_VCENTER ); ssd_text_set_color( label, WELCOME_WIZ_DLG_LBL_COLOR ); ssd_widget_add ( label_cnt, label ); ssd_widget_add ( group, label_cnt ); ssd_widget_add ( box, group); ssd_dialog_add_vspace( box, ADJ_SCALE( 10 ), 0 ); #ifdef TOUCH_SCREEN icons[0] = "welcome_btn"; icons[1] = "welcome_btn_h"; icons[2] = NULL; // Preload image to get dimensions group = ssd_container_new ( "Buttons group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_ALIGN_CENTER | SSD_END_ROW ); button = ssd_button_label_custom( "Skip", roadmap_lang_get ("Skip"), SSD_ALIGN_CENTER | SSD_ALIGN_VCENTER, twitter_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 ( group, button ); ssd_dialog_add_hspace( group, ADJ_SCALE( 10 ), SSD_ALIGN_CENTER | SSD_ALIGN_VCENTER ); // Skip button button = ssd_button_label_custom( "Next", roadmap_lang_get ("Next"), SSD_ALIGN_CENTER | SSD_ALIGN_VCENTER, twitter_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 ( group, button ); ssd_widget_add ( box, group ); ssd_dialog_add_vspace( box, ADJ_SCALE( 6 ), 0 ); #else ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("Next")); ssd_widget_set_left_softkey_callback ( dialog, on_softkey_next_twitter); #endif ssd_widget_add ( dialog, box ); ssd_dialog_activate( WELCOME_WIZ_DLG_TWITTER_NAME, NULL ); ssd_dialog_draw(); }
///////////////////////////////////////////////////////////////////// // 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(); }
///////////////////////////////////////////////////////////////////// // Ping ///////////////////////////////////////////////////////////////////// void welcome_wizard_ping_dialog(void){ SsdWidget dialog; SsdWidget group, box, label, label_cnt; SsdWidget group_title, text; SsdWidget button; const char* icons[3]; char str[512]; dialog = ssd_dialog_new( WELCOME_WIZ_DLG_PING_NAME, roadmap_lang_get( WELCOME_WIZ_DLG_PING_TITLE ), NULL, SSD_CONTAINER_TITLE|SSD_DIALOG_NO_SCROLL ); box = ssd_container_new ( "Ping Box", NULL, SSD_MAX_SIZE, 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( 1 ), 0 ); // Ping title group = ssd_container_new ( "Ping title group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW ); ssd_dialog_add_hspace( group, ADJ_SCALE( WELCOME_WIZ_DLG_PING_HOFFSET ), SSD_ALIGN_VCENTER ); group_title = ssd_text_new( "Ping", roadmap_lang_get( "Ping" ), 15, SSD_TEXT_LABEL ); ssd_text_set_color( group_title, "#202020" ); ssd_widget_add( group, group_title ); ssd_widget_add( box, group ); // Ping explanation text ssd_dialog_add_vspace( box, ADJ_SCALE( 16 ), 0 ); snprintf( str, sizeof(str), "%s\n%s", roadmap_lang_get("Allow wazers to ping you."), roadmap_lang_get("It's useful, fun and you can always turn it off.")); group = ssd_container_new ( "Ping text", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW ); ssd_dialog_add_hspace( group, ADJ_SCALE( WELCOME_WIZ_DLG_PING_HOFFSET ), SSD_ALIGN_VCENTER ); label_cnt = ssd_container_new ( "Label container", NULL, WELCOME_WIZ_DLG_PING_TEXT_WIDTH, SSD_MIN_SIZE, SSD_END_ROW ); label = ssd_text_new( "Label", str, WELCOME_WIZ_DLG_LBL_FONT, SSD_TEXT_LABEL | SSD_TEXT_NORMAL_FONT ); ssd_text_set_color( label, WELCOME_WIZ_DLG_LBL_COLOR ); ssd_widget_add( label_cnt, label ); ssd_widget_add( group, label_cnt ); ssd_widget_add( box, group ); ssd_dialog_add_vspace( box, ADJ_SCALE( 34 ), 0 ); // Ping checkbox group = ssd_container_new ("Ping agree group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW | SSD_WS_TABSTOP ); ssd_widget_set_color ( group, NULL, NULL ); ssd_dialog_add_hspace( group, ADJ_SCALE( WELCOME_WIZ_DLG_PING_HOFFSET ), 0 ); ssd_widget_add( group, ssd_checkbox_new ( WELCOME_WIZ_DLG_PING_AGREE, TRUE, 0, NULL, NULL, NULL, CHECKBOX_STYLE_DEFAULT ) ); label_cnt = ssd_container_new ( "Label container", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_ALIGN_VCENTER ); ssd_widget_set_color ( label_cnt, NULL, NULL ); ssd_dialog_add_hspace( label_cnt, ADJ_SCALE( 10 ), 0 ); label = ssd_text_new ("Label", roadmap_lang_get( "I agree to be pinged" ), WELCOME_WIZ_DLG_LBL_FONT, SSD_TEXT_NORMAL_FONT|SSD_TEXT_LABEL|SSD_ALIGN_VCENTER ); ssd_text_set_color( label, WELCOME_WIZ_DLG_LBL_COLOR ); ssd_widget_add ( label_cnt, label ); ssd_widget_add ( group, label_cnt ); ssd_widget_add ( box, group); #ifdef TOUCH_SCREEN // Next button ssd_dialog_add_vspace( box, ADJ_SCALE( 8 ), 0 ); icons[0] = "welcome_btn"; icons[1] = "welcome_btn_h"; icons[2] = NULL; group = ssd_container_new ( "Buttons group", NULL, ssd_container_get_width()*0.9, SSD_MIN_SIZE, SSD_ALIGN_CENTER | SSD_END_ROW ); button = ssd_button_label_custom( "Next", roadmap_lang_get ("Next"), SSD_ALIGN_RIGHT | SSD_ALIGN_VCENTER, ping_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 ( group, button ); ssd_widget_add ( box, group ); #else ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("Next")); ssd_widget_set_left_softkey_callback ( dialog, on_softkey_next_ping ); #endif ssd_dialog_add_vspace( box, ADJ_SCALE( 12 ), 0 ); ssd_widget_add ( dialog, box ); ssd_dialog_activate( WELCOME_WIZ_DLG_PING_NAME, NULL ); ssd_dialog_draw(); }
void roadmap_mood_dialog (RoadMapCallback callback) { char **files; const char *cursor; char **cursor2; char *directory = NULL; int count = 0; SsdWidget moodDlg; SsdWidget list; SsdWidget exclusive_list; SsdWidget baby_list; SsdWidget text; int i; BOOL only_baby_mood = Realtime_IsNewbie(); int row_height = ssd_container_get_row_height(); SsdListCallback exclusive_callback = NULL; SsdListCallback regular_mood_callback = roadmap_mood_call_back; int flags = 0; int width = SSD_MAX_SIZE; static roadmap_mood_list_dialog context = {"roadmap_mood", NULL}; static char *labels[MAX_MOOD_ENTRIES] ; static void *values[MAX_MOOD_ENTRIES] ; static void *icons[MAX_MOOD_ENTRIES]; static char *exclusive_labels[MAX_EXCLUSIVE_ICONS] ; static void *exclusive_values[MAX_EXCLUSIVE_ICONS] ; static void *exclusive_icons[MAX_EXCLUSIVE_ICONS]; static char *baby_labels[1] ; static void *baby_values[1] ; static void *baby_icons[1]; flags |= SSD_ALIGN_CENTER|SSD_CONTAINER_BORDER|SSD_CONTAINER_FLAGS; width = ssd_container_get_width(); moodDlg = ssd_dialog_new ( "MoodDlg", roadmap_lang_get ("Select your mood"), NULL, SSD_CONTAINER_TITLE); moodDlg->context = (void *)callback; exclusive_list = ssd_list_new ("list", width, SSD_MAX_SIZE, inputtype_none, flags, NULL); ssd_list_resize ( exclusive_list, row_height ); baby_list = ssd_list_new ("baby_list", width, SSD_MAX_SIZE, inputtype_none, flags, NULL); ssd_list_resize ( baby_list, row_height ); exclusive_labels[0] = (char *)roadmap_lang_get("wazer_gold"); exclusive_values[0] = "wazer_gold"; exclusive_icons[0] = "wazer_gold"; exclusive_labels[1] = (char *)roadmap_lang_get("wazer_silver"); exclusive_values[1] = "wazer_silver"; exclusive_icons[1] = "wazer_silver"; exclusive_labels[2] = (char *)roadmap_lang_get("wazer_bronze"); exclusive_values[2] = "wazer_bronze"; exclusive_icons[2] = "wazer_bronze"; if (roadmap_mood_get_exclusive_moods() > 0){ exclusive_callback = roadmap_exclusive_mood_call_back; } ssd_list_populate (exclusive_list, 3, (const char **)exclusive_labels, (const void **)exclusive_values, (const char **)exclusive_icons, NULL, exclusive_callback, NULL, FALSE); if (only_baby_mood){ char msg[150]; baby_labels[0] = (char *)roadmap_lang_get("Baby"); baby_values[0] = "wazer_baby"; baby_icons[0] = "wazer_baby"; ssd_list_populate (baby_list, 1, (const char **)baby_labels, (const void **)baby_values, (const char **)baby_icons, NULL, NULL, NULL, FALSE); ssd_dialog_add_hspace(moodDlg, 20, 0); text = ssd_text_new ("Baby Mood Txt", roadmap_lang_get("Waze newbie"), SSD_HEADER_TEXT_SIZE, SSD_TEXT_NORMAL_FONT | SSD_END_ROW); ssd_widget_add(moodDlg, text); ssd_dialog_add_hspace(moodDlg, 20, 0); snprintf(msg, sizeof(msg), roadmap_lang_get("(Gotta drive %d+ %s to access other moods)"), roadmap_mood_get_number_of_newbie_miles(), roadmap_lang_get(roadmap_math_trip_unit())); text = ssd_text_new ("Gold Mood Txt", msg, 12, SSD_END_ROW|SSD_TEXT_NORMAL_FONT); ssd_widget_add(moodDlg, text); ssd_widget_add (moodDlg, baby_list); } ssd_dialog_add_vspace(moodDlg, ADJ_SCALE(5),0); ssd_dialog_add_hspace(moodDlg, 20, 0); text = ssd_text_new ("Gold Mood Txt", roadmap_lang_get("Exclusive moods"), SSD_HEADER_TEXT_SIZE, SSD_TEXT_NORMAL_FONT | SSD_END_ROW); ssd_widget_add(moodDlg, text); ssd_dialog_add_hspace(moodDlg, 20, 0); text = ssd_text_new ("Gold Mood Txt", roadmap_lang_get("(Available only to top weekly scoring wazers)"), SSD_FOOTER_TEXT_SIZE, SSD_END_ROW|SSD_TEXT_NORMAL_FONT); ssd_widget_add(moodDlg, text); ssd_dialog_add_vspace(moodDlg, ADJ_SCALE(3),0); ssd_widget_add (moodDlg, exclusive_list); for (i = 0; i < (3 - roadmap_mood_get_exclusive_moods()); i++){ SsdWidget row = ssd_list_get_row(exclusive_list, i); if (row){ SsdWidget label = ssd_widget_get(row,"label"); if (label) ssd_text_set_color(label,"#999999"); } } list = ssd_list_new ("list", width, SSD_MAX_SIZE, inputtype_none, flags, NULL); exclusive_list->key_pressed = NULL; ssd_dialog_add_vspace(moodDlg, ADJ_SCALE(10), 0); ssd_dialog_add_hspace(moodDlg, 20, 0); text = ssd_text_new ("Gold Mood Txt", roadmap_lang_get("Everyday moods"), SSD_HEADER_TEXT_SIZE, SSD_TEXT_NORMAL_FONT | SSD_END_ROW); ssd_widget_add(moodDlg, text); ssd_dialog_add_hspace(moodDlg, 20, 0); text = ssd_text_new ("Gold Mood Txt", roadmap_lang_get("(Available to all)"), SSD_FOOTER_TEXT_SIZE, SSD_END_ROW|SSD_TEXT_NORMAL_FONT); ssd_widget_add(moodDlg, text); ssd_dialog_add_vspace(moodDlg, ADJ_SCALE(3),0); ssd_widget_add (moodDlg, list); ssd_list_resize ( list, row_height ); context.callback = callback; for (cursor = roadmap_path_first ("skin"); cursor != NULL; cursor = roadmap_path_next ("skin", cursor)) { directory = roadmap_path_join (cursor, "moods"); files = roadmap_path_list (directory, ".png"); if ( *files == NULL ) { files = roadmap_path_list (directory, NULL); } for (cursor2 = files; *cursor2 != NULL; ++cursor2) { labels[count] = (char *)(strtok(*cursor2,".")); count++; } } qsort((void *) &labels[0], count, sizeof(void *), cstring_cmp); for (i = 0; i< count; i++){ values[i] = labels[i]; icons[i] = roadmap_path_join("moods", labels[i]); labels[i] = (char *)roadmap_lang_get(labels[i]); } if (only_baby_mood){ regular_mood_callback = NULL; } free(directory); ssd_list_populate (list, count, (const char **)labels, (const void **)values, (const char **)icons, NULL, regular_mood_callback, NULL, FALSE); if (only_baby_mood){ for (i = 0; i< count; i++){ SsdWidget row = ssd_list_get_row(list, i); if (row){ SsdWidget label = ssd_widget_get(row,"label"); if (label) ssd_text_set_color(label,"#999999"); } } } // else{ // SsdWidget row = ssd_list_get_row(baby_list,0 ); // if (row){ // SsdWidget label = ssd_widget_get(row,"label"); // if (label) // ssd_text_set_color(label,"#999999"); // } // } exclusive_list->key_pressed = NULL; ssd_dialog_activate ("MoodDlg", NULL); ssd_dialog_draw (); }
static void OnReminderShortClick (const char *name, const char *sprite, const char *image, const RoadMapGpsPosition *gps_position, const RoadMapGuiPoint *offset, BOOL is_visible, int scale, int opacity, const char *id, const char *text){ SsdWidget button; SsdWidget spacer; SsdWidget txt; SsdWidget bg; RoadMapPosition Pos; Pos.latitude = gps_position->latitude; Pos.longitude = gps_position->longitude; if (ssd_dialog_is_currently_active() && (!strcmp(ssd_dialog_currently_active_name(), REMINDER_POP_DLG_NAME))) ssd_dialog_hide_current(dec_close); bg = create_reminder_dlg(); if (get_id(id) != -1){ char msg[250]; int rem_distance; Reminder reminder; SsdWidget container; container = ssd_container_new( "container_txt", "", SSD_MIN_SIZE, SSD_MIN_SIZE, 0 ); ssd_widget_set_color( container, NULL, NULL ); reminder = ReminderTable.reminder[get_id(id)]; txt = ssd_text_new("reminder_title",&reminder.title[0] ,22, SSD_END_ROW); ssd_text_set_color(txt, "#ab5939"); ssd_widget_set_offset(txt, 25, 0); ssd_widget_add(container, txt); spacer = ssd_container_new( "space", "", SSD_MIN_SIZE, 10, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( container, spacer ); txt = ssd_text_new("reminder_desc",&reminder.description[0] ,18, SSD_END_ROW); ssd_text_set_color(txt, "#ab5939"); ssd_widget_set_offset(txt, 30, 0); ssd_widget_add(container, txt); spacer = ssd_container_new( "space", "", SSD_MIN_SIZE, 10, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( container, spacer ); rem_distance = roadmap_math_to_trip_distance_tenths(reminder.distance); sprintf(msg, roadmap_lang_get("Distance to remind: %.1f %s"),rem_distance/10.0, roadmap_lang_get(roadmap_math_trip_unit()) ); txt = ssd_text_new("reminder_dist",&msg[0] ,14, SSD_END_ROW); ssd_text_set_color(txt, "#ab5939"); ssd_widget_set_offset(txt, 30, 0); ssd_widget_add(container, txt); ssd_widget_add( bg, container ); } #ifdef TOUCH_SCREEN button = create_close_button(); ssd_widget_add(bg, button); button = create_del_button(); ssd_widget_set_offset(button, 0, -20); button->context = strdup(id); ssd_widget_add(bg, button); #endif //TOUCH_SCREEN show_reminder_dlg(); }
static void show_reminder(int id, int distance){ SsdWidget button; SsdWidget spacer; SsdWidget txt; SsdWidget bg; if (ssd_dialog_is_currently_active() && (!strcmp(ssd_dialog_currently_active_name(), REMINDER_POP_DLG_NAME))) ssd_dialog_hide_current(dec_close); bg = create_reminder_dlg(); if (id != -1){ Reminder reminder; SsdWidget container; char msg[250]; int rem_distance; container = ssd_container_new( "container_txt", "", SSD_MIN_SIZE, SSD_MIN_SIZE, 0 ); ssd_widget_set_color( container, NULL, NULL ); reminder = ReminderTable.reminder[id]; txt = ssd_text_new("reminder_title",&reminder.title[0] ,22, SSD_END_ROW); ssd_text_set_color(txt, "#ab5939"); ssd_widget_set_offset(txt, 25, 0); ssd_widget_add(container, txt); spacer = ssd_container_new( "space", "", SSD_MIN_SIZE, 10, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( container, spacer ); txt = ssd_text_new("reminder_desc",&reminder.description[0] ,18, SSD_END_ROW); ssd_text_set_color(txt, "#ab5939"); ssd_widget_set_offset(txt, 30, 0); ssd_widget_add(container, txt); spacer = ssd_container_new( "space", "", SSD_MIN_SIZE, 10, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( container, spacer ); rem_distance = roadmap_math_to_trip_distance_tenths(reminder.distance); sprintf(msg, "%s: %.1f %s",roadmap_lang_get("Distance"), rem_distance/10.0, roadmap_lang_get(roadmap_math_trip_unit()) ); txt = ssd_text_new("reminder_dist",&msg[0] ,14, SSD_END_ROW); ssd_text_set_color(txt, "#ab5939"); ssd_widget_set_offset(txt, 30, 0); ssd_widget_add(container, txt); ssd_widget_add( bg, container ); } #ifdef TOUCH_SCREEN spacer = ssd_container_new( "space", "", 10, 30, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( bg, spacer ); button = create_close_button(); button->context = (void *)roadmap_string_get(generate_id(id)); ssd_widget_add(bg, button); if (ReminderTable.reminder[id].repeat == 1){ button = create_del_button(); button->context = (void *)roadmap_string_get(generate_id(id)); ssd_widget_add(bg, button); } #endif //TOUCH_SCREEN show_reminder_dlg(); }
static void create_dialog (void) { SsdWidget dialog; SsdWidget box, driving, space, text; char *icon[2]; int i = 0; BOOL checked = FALSE; int container_height = 24; int tab_flag = SSD_WS_TABSTOP; #ifdef TOUCH_SCREEN container_height = ssd_container_get_row_height(); #endif dialog = ssd_dialog_new (PRIVACY_DIALOG, roadmap_lang_get ( PRIVACY_TITLE), on_close_dialog, SSD_CONTAINER_TITLE); #ifdef TOUCH_SCREEN space = ssd_container_new ("spacer", NULL, SSD_MAX_SIZE, 5, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color (space, NULL, NULL); ssd_widget_add (dialog, space); #endif box = ssd_container_new ("Privacy Heading group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); text = ssd_text_new ("privacy_heading_label", roadmap_lang_get ("Display my location on waze mobile and web maps as follows:"), SSD_HEADER_TEXT_SIZE, SSD_TEXT_NORMAL_FONT|SSD_TEXT_LABEL | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE); ssd_text_set_color(text, SSD_CONTAINER_TEXT_COLOR); ssd_widget_add (box, text); ssd_widget_set_color (box, NULL, NULL); ssd_widget_set_color (box, NULL, NULL); ////////////////////////////////////////////////// // * Driving ////////////////////////////////////////////////// driving = ssd_container_new ("Report privacy", NULL, ssd_container_get_width(), SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_CONTAINER_FLAGS | SSD_POINTER_NONE | SSD_CONTAINER_BORDER | SSD_ALIGN_CENTER); ssd_widget_add (driving, box); box = ssd_container_new ("Driving Heading group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); text = ssd_text_new ("driving_heading_label", roadmap_lang_get ("When driving"), SSD_HEADER_TEXT_SIZE, SSD_TEXT_NORMAL_FONT|SSD_TEXT_LABEL | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE | SSD_END_ROW); ssd_text_set_color(text, SSD_CONTAINER_TEXT_COLOR); ssd_widget_add (box, text); ssd_widget_add (box, ssd_separator_new ("separator", SSD_ALIGN_BOTTOM)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (driving, box); ////////////////////////////////////////////////// // * Nickname ////////////////////////////////////////////////// box = ssd_container_new ("Nickname group", NULL, SSD_MAX_SIZE, container_height, SSD_WIDGET_SPACE | SSD_END_ROW | tab_flag); if (gState == VisGrp_NickName) checked = TRUE; else checked = FALSE; CheckboxDriving[i] = ssd_checkbox_new (RT_CFG_PRM_VISGRP_Nickname, checked, SSD_ALIGN_VCENTER | SSD_ALIGN_RIGHT, checkbox_callback, NULL, NULL, CHECKBOX_STYLE_V); ssd_widget_add (box, CheckboxDriving[i]); i++; icon[0] = "privacy_nickname"; icon[1] = NULL; ssd_widget_add (box, ssd_button_new ("privacy_nickname", "privacy_nickname", (const char **) &icon[0], 1, SSD_ALIGN_VCENTER, NULL)); ssd_widget_set_color (box, NULL, NULL); text = ssd_text_new ("Nickname", roadmap_lang_get ( "Nickname"), SSD_MAIN_TEXT_SIZE, SSD_TEXT_NORMAL_FONT | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE); ssd_text_set_color(text, SSD_CONTAINER_TEXT_COLOR); ssd_widget_add (box, text); ssd_widget_add (box, ssd_bitmap_new ("On_map_nickname", "On_map_nickname", SSD_ALIGN_VCENTER)); ssd_widget_add (driving, box); ssd_widget_add (driving, ssd_separator_new ("separator", SSD_END_ROW)); ////////////////////////////////////////////////// // * Anonymous ////////////////////////////////////////////////// box = ssd_container_new ("Anonymous group", NULL, SSD_MAX_SIZE, container_height, SSD_WIDGET_SPACE | SSD_END_ROW | tab_flag); if (gState == VisGrp_Anonymous) checked = TRUE; else checked = FALSE; CheckboxDriving[i] = ssd_checkbox_new (RT_CFG_PRM_VISGRP_Anonymous, checked, SSD_ALIGN_VCENTER | SSD_ALIGN_RIGHT, checkbox_callback, NULL, NULL, CHECKBOX_STYLE_V); ssd_widget_add (box, CheckboxDriving[i]); i++; icon[0] = "privacy_anonymous"; icon[1] = NULL; ssd_widget_add (box, ssd_button_new ("privacy_anonymous", "privacy_anonymous", (const char **) &icon[0], 1, SSD_ALIGN_VCENTER, NULL)); text = ssd_text_new ("Anonymous text", roadmap_lang_get ( "Anonymous"), SSD_MAIN_TEXT_SIZE, SSD_TEXT_NORMAL_FONT | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE); ssd_text_set_color(text, SSD_CONTAINER_TEXT_COLOR); ssd_widget_add (box, text); ssd_widget_add (box, ssd_bitmap_new ("On_map_anonymous", "On_map_anonymous", SSD_ALIGN_VCENTER)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (driving, box); /* ////////////////////////////////////////////////// // * Invisible ////////////////////////////////////////////////// box = ssd_container_new ("Invisible Group", NULL, SSD_MAX_SIZE, container_height, SSD_WIDGET_SPACE | SSD_END_ROW | tab_flag); if (gState == VisGrp_Invisible) checked = TRUE; else checked = FALSE; CheckboxDriving[i] = ssd_checkbox_new (RT_CFG_PRM_VISGRP_Invisible, checked, SSD_ALIGN_VCENTER, checkbox_callback, NULL, NULL, CHECKBOX_STYLE_ROUNDED); ssd_widget_add (box, CheckboxDriving[i]); i++; icon[0] = "privacy_invisible"; icon[1] = NULL; ssd_widget_add (box, ssd_button_new ("privacy_invisible", "privacy_invisible", (const char **) &icon[0], 1, SSD_ALIGN_VCENTER, NULL)); ssd_widget_add (box, ssd_text_new ("Invisible Text", roadmap_lang_get ( "Don't show me"), 14, SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE | SSD_END_ROW)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (driving, box); */ ssd_widget_add (dialog, driving); /* ////////////////////////////////////////////////// // * Report ////////////////////////////////////////////////// report = ssd_container_new ("Report privacy", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_START_NEW_ROW | SSD_WIDGET_SPACE | SSD_END_ROW | SSD_ROUNDED_CORNERS | SSD_ROUNDED_WHITE | SSD_POINTER_NONE | SSD_CONTAINER_BORDER); box = ssd_container_new ("Reporting Heading group", NULL, SSD_MIN_SIZE, container_height, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_add (box, ssd_text_new ("reporting_heading_label", roadmap_lang_get ("When reporting"), 14, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE | SSD_END_ROW)); ssd_widget_add (box, ssd_separator_new ("separator", SSD_ALIGN_BOTTOM)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (report, box); i = 0; ////////////////////////////////////////////////// // * Report Nickname ////////////////////////////////////////////////// box = ssd_container_new ("Report Nickname Group", NULL, SSD_MIN_SIZE, container_height, SSD_WIDGET_SPACE | SSD_END_ROW | tab_flag); if (gReportState == VisRep_NickName) checked = TRUE; else checked = FALSE; CheckboxReporting[i] = ssd_checkbox_new (RT_CFG_PRM_VISREP_Nickname, checked, SSD_ALIGN_VCENTER, rep_checkbox_callback, NULL, NULL, CHECKBOX_STYLE_ROUNDED); ssd_widget_add (box, CheckboxReporting[i]); i++; space = ssd_container_new ("spacer1", NULL, 10, 14, 0); ssd_widget_set_color (space, NULL, NULL); ssd_widget_add (box, space); ssd_widget_add (box, ssd_text_new ("Report Nickname", roadmap_lang_get ( "Nickname"), 14, SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE | SSD_END_ROW)); ssd_widget_add (box, ssd_separator_new ("separator", SSD_ALIGN_BOTTOM)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (report, box); ////////////////////////////////////////////////// // * Report Anonymous ////////////////////////////////////////////////// box = ssd_container_new ("Report Anonymous Group", NULL, SSD_MAX_SIZE, container_height, SSD_WIDGET_SPACE | SSD_END_ROW | tab_flag); if (gReportState == VisRep_Anonymous) checked = TRUE; else checked = FALSE; CheckboxReporting[i] = ssd_checkbox_new (RT_CFG_PRM_VISREP_Anonymous, checked, SSD_ALIGN_VCENTER, rep_checkbox_callback, NULL, NULL, CHECKBOX_STYLE_ROUNDED); ssd_widget_add (box, CheckboxReporting[i]); i++; space = ssd_container_new ("spacer1", NULL, 10, 14, 0); ssd_widget_set_color (space, NULL, NULL); ssd_widget_add (box, space); ssd_widget_add (box, ssd_text_new ("Report Anonymous", roadmap_lang_get ( "Anonymous"), 14, SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (report, box); ssd_widget_add (dialog, report); */ #ifndef TOUCH_SCREEN set_softkeys(dialog); #endif }
void show_alert_dialog(){ SsdWidget box; SsdWidget title; SsdWidget bitmap, text; char TextStr[200]; int alertId; BOOL is_cancelable; BOOL can_send_thumbs_up; const char * iconName; alertId = roadmap_alerter_get_active_alert_id(); roadmap_square_set_current(the_active_alert.square); sprintf(TextStr, "%s",roadmap_lang_get((* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->get_string)) (alertId) )); dialog = ssd_popup_new("Alert_Dlg", TextStr, on_popup_close, SSD_MAX_SIZE, SSD_MIN_SIZE,NULL, SSD_PERSISTENT|SSD_ROUNDED_BLACK, DIALOG_ANIMATION_FROM_TOP); title = ssd_widget_get(dialog, "popuup_text"); if (title) ssd_widget_set_color(title,"#f6a201", "#f6a201"); box = ssd_container_new ("box", NULL, SSD_MIN_SIZE,SSD_MIN_SIZE,SSD_WIDGET_SPACE); if (box){ ssd_widget_set_color(box, NULL, NULL); ssd_widget_add (box, space(1)); } if (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->get_additional_string != NULL){ const char *additional_text = (* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->get_additional_string)) (alertId); if (additional_text){ text = ssd_text_new ("AdditionalText", additional_text, 16,SSD_END_ROW); ssd_widget_set_color(text, "#ffffff", "#ffffff"); ssd_widget_add (box, text); ssd_widget_add (box, space(1)); } } if ((RoadMapAlertProviders.provider[the_active_alert.alert_provider]->show_distance != NULL) && ((*(RoadMapAlertProviders.provider[the_active_alert.alert_provider]->show_distance))(alertId))) sprintf(TextStr,"%s %d %s", roadmap_lang_get("In"), (the_active_alert.distance_to_alert/10)*10, roadmap_lang_get(roadmap_math_distance_unit())); text = ssd_text_new ("Distance", TextStr, 16,0); ssd_widget_set_color(text, "#ffffff", "#ffffff"); ssd_widget_add (box, text); ssd_widget_add (dialog, box); if (the_active_alert.alert_type == ALERT){ iconName = (* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->get_alert_icon)) (alertId); } else { iconName = (* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->get_warning_icon)) (alertId); } bitmap = ssd_bitmap_new("alert_Icon",iconName, SSD_ALIGN_RIGHT|SSD_ALIGN_VCENTER); ssd_widget_set_offset(bitmap, 0, -20); ssd_widget_add (box, bitmap); is_cancelable = (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->is_cancelable) && (* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->is_cancelable)) (alertId); can_send_thumbs_up = (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->can_send_thumbs_up) && (* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->can_send_thumbs_up)) (alertId); #ifdef TOUCH_SCREEN ssd_widget_add (dialog, ssd_button_label ("Close", roadmap_lang_get ("Close"), SSD_WS_TABSTOP|SSD_ALIGN_CENTER, alert_dialog_buttons_callback)); if (can_send_thumbs_up){ char *icon[3]; SsdWidget button; icon[0] = "thumbs_up_button"; icon[1] = "thumbs_up_button_down"; icon[2] = NULL; button = ssd_button_new( "ThumbsUp", "Thumbs up", (const char**) &icon[0], 2, SSD_ALIGN_CENTER, alert_dialog_buttons_callback ); ssd_widget_add(dialog, button); } if (is_cancelable){ ssd_widget_add (dialog, ssd_button_label ("Irrelevant", roadmap_lang_get ("Not there"), SSD_WS_TABSTOP|SSD_ALIGN_CENTER|SSD_END_ROW, alert_dialog_buttons_callback)); } if (can_send_thumbs_up){ SsdWidget text; text = ssd_text_new("ThumbsUpText",roadmap_lang_get("Thanks sent to user"), -1, SSD_ALIGN_CENTER); ssd_text_set_color(text, "#f6a201"); ssd_widget_hide(text); ssd_widget_add(dialog, text); } #else if (is_cancelable) set_softkey(); #endif ssd_dialog_activate ("Alert_Dlg", NULL); if (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->on_alerter_start != NULL) (* (RoadMapAlertProviders.provider[the_active_alert.alert_provider]->on_alerter_start))(the_active_alert.active_alert_id); }