static void set_softkey(void){ ssd_widget_set_left_softkey_callback(dialog->parent, report_irrelevant); ssd_widget_set_left_softkey_text(dialog->parent, roadmap_lang_get("Not there")); ssd_widget_set_right_softkey_text(dialog->parent, roadmap_lang_get("Hide")); ssd_widget_set_right_softkey_callback(dialog->parent, hide); }
static void set_soft_keys(SsdWidget dialog, const char * textYes, const char *textNo){ ssd_widget_set_right_softkey_text(dialog,textNo); ssd_widget_set_right_softkey_callback(dialog,no_softkey_callback); ssd_widget_set_left_softkey_text(dialog, textYes); ssd_widget_set_left_softkey_callback(dialog,yes_softkey_callback); }
void ssd_generic_icon_list_dialog_show( const char* title, int count, const char** labels, const void** values, const char** icons, const int* flags, PFN_ON_ITEM_SELECTED on_item_selected, PFN_ON_ITEM_SELECTED on_item_deleted, void* context, const char* left_softkey_text, SsdSoftKeyCallback left_softkey_callback, int list_height, int dialog_flags, BOOL add_next_button) { static SsdListContext list_context; SsdWidget list; int list_flags = 0; #if defined (OPENGL) /* * Borders are fast in OPENGL */ list_flags |= SSD_ALIGN_CENTER|SSD_CONTAINER_BORDER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE; #endif // OPENGL list_context.on_item_selected= on_item_selected; list_context.on_item_deleted = on_item_deleted; list_context.context = context; list_context.left_softkey_callback = left_softkey_callback; if ( !ssd_dialog_exists( SSD_GEN_LIST_DLG_NAME ) ) { GenericList = ssd_dialog_new ( SSD_GEN_LIST_DLG_NAME, "", on_dialog_closed, SSD_CONTAINER_TITLE|dialog_flags); list = ssd_list_new ("list", SSD_MAX_SIZE, SSD_MAX_SIZE, inputtype_none, 0, NULL); ssd_widget_add (GenericList, list); } else{ GenericList->flags &= ~SSD_HEADER_BLACK; GenericList->flags |= dialog_flags; } ssd_widget_set_offset(GenericList,0,0); list = ssd_widget_get (GenericList, "list"); GenericList->set_value (GenericList->parent, title); ssd_widget_set_context (GenericList, &list_context); ssd_widget_reset_cache (list->parent); ssd_widget_reset_position(GenericList); ssd_list_resize ( list, list_height ); ssd_list_populate (list, count, labels, values,icons,flags, list_callback, del_callback, add_next_button); ssd_widget_set_left_softkey_text(GenericList, left_softkey_text); if (left_softkey_callback != NULL) ssd_widget_set_left_softkey_callback(GenericList, list_left_softkey_callback); ssd_dialog_activate (SSD_GEN_LIST_DLG_NAME, NULL); ssd_dialog_draw(); }
static void on_dialog_closed( int type, void *context) { SsdWidget button; ssd_widget_set_left_softkey_callback(GenericList,NULL); button = ssd_dialog_right_title_button(); if (button) ssd_widget_hide(button); }
static int on_next (SsdWidget widget, const char *new_value) { static SsdWidget dialog; SsdWidget button; SsdWidget browserCont; SsdSize dlg_size, cnt_size; int browser_cont_flags = 0; ssd_dialog_hide_current(dec_close); if ( dialog != NULL ) { if (ssd_dialog_currently_active_name() && !strcmp(ssd_dialog_currently_active_name(), "BonusBrowserDlg")) ssd_dialog_hide_current(dec_close); ssd_dialog_free( "BonusBrowserDlg", FALSE ); dialog = NULL; } dialog = ssd_dialog_new ( "BonusBrowserDlg", "", on_dialog_close, SSD_CONTAINER_BORDER|SSD_DIALOG_FLOAT|SSD_DIALOG_MODAL| SSD_ALIGN_CENTER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_BLACK); #ifndef TOUCH_SCREEN browser_cont_flags = SSD_ALIGN_VCENTER; ssd_dialog_add_vspace(dialog, 2 ,0); #else ssd_dialog_add_vspace(dialog, 5 ,0); #endif browserCont = ssd_container_new("BonusBrowserDlg.BrowserContainer","", SSD_MAX_SIZE, get_browser_height() , SSD_ALIGN_CENTER|browser_cont_flags); browserCont->context = (void *)widget->context; browserCont->draw = draw_browser_rect; ssd_widget_set_color(browserCont, NULL, NULL); ssd_widget_add(dialog, browserCont); #ifdef TOUCH_SCREEN ssd_dialog_add_vspace(dialog, 5 ,0); button = ssd_button_label("Close_button", roadmap_lang_get("Close"), SSD_ALIGN_CENTER, on_button_close); ssd_widget_add(dialog, button); button = ssd_button_label("Navigate_button", roadmap_lang_get("Navigate"), SSD_ALIGN_CENTER, on_button_navigate); button->context = widget->context; ssd_widget_add(dialog, button); #else ssd_widget_set_left_softkey_callback(dialog, NULL); ssd_widget_set_left_softkey_text(dialog, ""); #endif ssd_dialog_activate ("BonusBrowserDlg", NULL); ssd_dialog_recalculate( "BonusBrowserDlg" ); ssd_widget_get_size( dialog, &dlg_size, NULL ); ssd_widget_get_size( browserCont, &cnt_size, NULL ); return 1; }
void ssd_generic_list_dialog_show(const char* title, int count, const char** labels, const void** values, PFN_ON_ITEM_SELECTED on_item_selected, PFN_ON_ITEM_SELECTED on_item_deleted, void* context, int list_height ) { static SsdListContext list_context; SsdWidget list; int flags = 0; #if defined (OPENGL) /* * Borders are fast in OPENGL */ flags |= SSD_ALIGN_CENTER|SSD_CONTAINER_BORDER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE; #endif // OPENGL list_context.on_item_selected= on_item_selected; list_context.on_item_deleted = on_item_deleted; list_context.context = context; list_context.left_softkey_callback = NULL; if (!GenericList) { GenericList = ssd_dialog_new ( SSD_GEN_LIST_DLG_NAME, "", on_dialog_closed, SSD_CONTAINER_TITLE); ssd_dialog_add_vspace (GenericList, 5, 0); list = ssd_list_new ("list", ssd_container_get_width(), SSD_MAX_SIZE, inputtype_none, flags, NULL); ssd_widget_add (GenericList, list); } list = ssd_widget_get (GenericList, "list"); ssd_widget_set_offset(GenericList,0,0); ssd_widget_set_left_softkey_text(GenericList, roadmap_lang_get("Exit_key")); ssd_widget_set_left_softkey_callback(GenericList, NULL); GenericList->set_value (GenericList->parent, title); ssd_widget_set_context (GenericList, &list_context); ssd_widget_reset_cache (list->parent); ssd_widget_reset_position(GenericList); ssd_list_resize ( list, list_height ); ssd_list_populate (list, count, labels, values, NULL, NULL, list_callback, del_callback, FALSE); ssd_dialog_activate ( SSD_GEN_LIST_DLG_NAME, NULL ); ssd_dialog_draw(); }
///////////////////////////////////////////////////////////////////// // End ///////////////////////////////////////////////////////////////////// static void end_dialog(){ SsdWidget dialog; SsdWidget group; SsdWidget text; dialog = ssd_dialog_new ("Wiz_End", roadmap_lang_get ("End"), NULL, SSD_CONTAINER_TITLE|SSD_DIALOG_NO_SCROLL); group = ssd_container_new ("End_con", NULL, SSD_MIN_SIZE,SSD_MIN_SIZE,SSD_WIDGET_SPACE|SSD_END_ROW|SSD_ALIGN_VCENTER|SSD_CONTAINER_BORDER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE); ssd_widget_set_color (group, NULL,NULL); ssd_widget_add (group, space(10)); text = ssd_text_new ("Label", roadmap_lang_get("Way to go!"), 22,SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_set_color(text,"#d52c6b", "#d52c6b"); ssd_widget_add (group, text); ssd_widget_add (group, space(10)); text = ssd_text_new ("Label", roadmap_lang_get("Your account has been updated"), 18,SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_add (group, text); ssd_widget_add (group, space(20)); #ifdef TOUCH_SCREEN ssd_widget_add (group, ssd_button_label ("Finish", roadmap_lang_get ("Finish"), SSD_WS_TABSTOP|SSD_ALIGN_CENTER|SSD_START_NEW_ROW, end_button_callback)); #else //TOUCH_SCREEN ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("Finish")); ssd_widget_set_left_softkey_callback ( dialog, on_softkey_finish); #endif //TOUCH_SCREEN ssd_widget_add (dialog, group); ssd_dialog_activate ("Wiz_End", NULL); }
// create the intro screen static void create_intro_screen(){ SsdWidget dialog; SsdWidget group; int tab_flag=0; int width = roadmap_canvas_width() - 10; const char* system_lang; #ifndef TOUCH_SCREEN tab_flag = SSD_WS_TABSTOP; #endif system_lang = roadmap_lang_get("lang"); dialog = ssd_dialog_new ("Intro_screen", roadmap_lang_get ("Hi there!"), NULL, SSD_CONTAINER_TITLE|SSD_DIALOG_NO_BACK); group = ssd_container_new ("Welcome", NULL, width, SSD_MIN_SIZE,SSD_WIDGET_SPACE|SSD_ALIGN_CENTER|SSD_ALIGN_VCENTER|SSD_END_ROW|SSD_CONTAINER_BORDER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE); ssd_widget_set_color (group, NULL,NULL); ssd_widget_add (group, space(8)); add_intro_texts(group, tab_flag); #ifdef TOUCH_SCREEN ssd_widget_add (group, ssd_button_label ("Next", roadmap_lang_get ("Next"), SSD_WS_TABSTOP|SSD_ALIGN_CENTER|SSD_START_NEW_ROW, intro_screen_buttons_callback)); #else ssd_widget_set_right_softkey_text ( dialog, roadmap_lang_get("Next")); ssd_widget_set_right_softkey_callback ( dialog, callGlobalCallback); ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("")); ssd_widget_set_left_softkey_callback ( dialog, intro_screen_left_key_callback); #endif ssd_widget_add (group, space(20)); ssd_widget_add( dialog, group); ssd_dialog_activate ("Intro_screen", NULL); }
static void create_login_dialog(void) { SsdWidget dialog; SsdWidget group; SsdWidget box, box2; SsdWidget bitmap; int width; int tab_flag = SSD_WS_TABSTOP; int disc_font_size = 16; #ifdef RIMAPI disc_font_size = 14; #endif width = roadmap_canvas_width()/2; dialog = ssd_dialog_new(FOURSQUARE_LOGIN_DIALOG_NAME, roadmap_lang_get(FOURSQUARE_TITLE), on_login_dlg_close, SSD_CONTAINER_TITLE); #ifdef TOUCH_SCREEN ssd_widget_add (dialog, space(5)); #endif box = ssd_container_new("UN/PW group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW | SSD_ROUNDED_CORNERS | SSD_ROUNDED_WHITE | SSD_POINTER_NONE | SSD_CONTAINER_BORDER); //Accound details header group = ssd_container_new("Foursquare Account Header group", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); ssd_widget_add(group, ssd_text_new("Label", roadmap_lang_get("Account details"), 16, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); bitmap = ssd_bitmap_new ("foursquare_icon", "foursquare_logo",SSD_ALIGN_RIGHT|SSD_WS_TABSTOP); ssd_widget_add(group, bitmap); ssd_widget_add (group, ssd_separator_new ("separator", SSD_ALIGN_BOTTOM)); ssd_widget_add(box, group); //Accound login status group = ssd_container_new("Foursquare Account Login group", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); ssd_widget_add(group, ssd_text_new("Login Status Label", "", 16, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); ssd_widget_add (group, ssd_separator_new ("separator", SSD_ALIGN_BOTTOM)); ssd_widget_add(box, group); //User name group = ssd_container_new("Foursquare Name group", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); ssd_widget_add(group, ssd_text_new("Label", roadmap_lang_get("Email/phone"), -1, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); ssd_widget_add(group, ssd_entry_new("FoursquareUserName", "", SSD_ALIGN_VCENTER | SSD_ALIGN_RIGHT | tab_flag, 0, width, SSD_MIN_SIZE, roadmap_lang_get("User name"))); ssd_widget_add(box, group); //Password group = ssd_container_new("Foursquare PW group", NULL, SSD_MAX_SIZE, 40, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); ssd_widget_add(group, ssd_text_new("Label", roadmap_lang_get("Password"), 12, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); ssd_widget_add(group, ssd_entry_new("FoursquarePassword", "", SSD_ALIGN_VCENTER | SSD_ALIGN_RIGHT | tab_flag, SSD_TEXT_PASSWORD, width, SSD_MIN_SIZE, roadmap_lang_get("Password"))); ssd_widget_add(box, group); ssd_widget_add(dialog, box); //tweet settings header ssd_widget_add(dialog, space(5)); box = ssd_container_new ("Foursquare auto settings header group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_add (box, ssd_text_new ("foursquare_auto_settings_header", roadmap_lang_get ("Automatically tweet to my followers that I:"), disc_font_size, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (dialog, box); ssd_widget_add(dialog, space(5)); //Tweets box = ssd_container_new("Tweet toggles group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW | SSD_ROUNDED_CORNERS | SSD_ROUNDED_WHITE | SSD_POINTER_NONE | SSD_CONTAINER_BORDER); group = ssd_container_new("Send_Tweets group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW| tab_flag); ssd_widget_set_color(group, "#000000", "#ffffff"); box2 = ssd_container_new ("box2", NULL, (2*roadmap_canvas_width())/3, SSD_MIN_SIZE, SSD_ALIGN_VCENTER); ssd_widget_set_color (box2, NULL, NULL); ssd_widget_add(box2, ssd_text_new("Send_login_label", roadmap_lang_get( "Am checking out this integration"), -1, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE)); ssd_widget_add(group, box2); ssd_widget_add(group, ssd_checkbox_new("FoursquareSendLogin", TRUE, SSD_END_ROW | SSD_ALIGN_RIGHT | SSD_ALIGN_VCENTER , NULL, NULL, NULL, CHECKBOX_STYLE_ON_OFF)); ssd_widget_add(box, group); group = ssd_container_new("Send_Tweets group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW| tab_flag); box2 = ssd_container_new ("box2", NULL, (2*roadmap_canvas_width())/3, SSD_MIN_SIZE, SSD_ALIGN_VCENTER); ssd_widget_set_color (box2, NULL, NULL); ssd_widget_add(box2, ssd_text_new("Send_waze_badge_label", roadmap_lang_get( "Have unlocked the Roadwarrior Badge"), -1, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER | SSD_WIDGET_SPACE)); ssd_widget_add(group, box2); ssd_widget_add(group, ssd_checkbox_new("FoursquareSendBadgeUnlock", TRUE, SSD_END_ROW | SSD_ALIGN_RIGHT | SSD_ALIGN_VCENTER , NULL, NULL, NULL, CHECKBOX_STYLE_ON_OFF)); ssd_widget_add(box, group); ssd_widget_add(dialog, box); //Foursquare comments ssd_widget_add(dialog, space(5)); box = ssd_container_new ("Comments", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_add (box, ssd_text_new ("comment footer", roadmap_lang_get ("We've partnered with Foursquare to give you quick access to check-in to nearby venues."), disc_font_size, SSD_TEXT_LABEL | SSD_WIDGET_SPACE)); ssd_widget_add (box, ssd_text_new ("comment footer", roadmap_lang_get ("What is Foursquare?"), disc_font_size, SSD_TEXT_LABEL | SSD_WIDGET_SPACE)); ssd_widget_add (box, ssd_text_new ("comment footer", roadmap_lang_get ("It's a cool way to discover and promote cool places in your city and be rewarded for doing so."), disc_font_size, SSD_TEXT_LABEL | SSD_WIDGET_SPACE)); ssd_widget_add (box, ssd_text_new ("comment footer", roadmap_lang_get ("Don't have an account? Sign up on:"), disc_font_size, SSD_TEXT_LABEL | SSD_WIDGET_SPACE)); ssd_widget_add (box, ssd_text_new ("comment footer", roadmap_lang_get ("www.foursquare.com"), disc_font_size, SSD_TEXT_LABEL | SSD_WIDGET_SPACE|SSD_WS_TABSTOP)); ssd_widget_set_color (box, NULL, NULL); ssd_widget_add (dialog, box); #ifndef TOUCH_SCREEN ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("Ok")); ssd_widget_set_left_softkey_callback ( dialog, on_ok_softkey); #endif }
static void create_checkedin_dialog(void) { SsdWidget dialog; SsdWidget group; SsdWidget box; SsdWidget bitmap; int width; char text[256]; width = roadmap_canvas_width()/2; dialog = ssd_dialog_new(FOURSQUARE_CHECKEDIN_DIALOG_NAME, roadmap_lang_get(FOURSQUARE_CHECKEDIN_TITLE), NULL, SSD_CONTAINER_TITLE); #ifdef TOUCH_SCREEN ssd_widget_add (dialog, space(5)); #endif box = ssd_container_new("Checkin_result", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW | SSD_ROUNDED_CORNERS | SSD_ROUNDED_WHITE | SSD_POINTER_NONE | SSD_CONTAINER_BORDER); //Logo header group = ssd_container_new("Foursquare logo", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); bitmap = ssd_bitmap_new ("foursquare_icon", "foursquare_logo",SSD_WS_TABSTOP); ssd_widget_add(group, bitmap); ssd_widget_add(group, space(5)); ssd_widget_add (group, ssd_separator_new ("separator", SSD_ALIGN_BOTTOM)); ssd_widget_add(group, space(5)); ssd_widget_add(box, group); //Checkin message group = ssd_container_new("Foursquare message group", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); ssd_widget_add(group, ssd_text_new("Checkin message lablel", gsCheckInInfo.sCheckinMessage, 16, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); ssd_widget_add(box, group); //Address group = ssd_container_new("Foursquare address group", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); ssd_widget_add(group, ssd_text_new("Checkin address", gsCheckInInfo.sAddress, 16, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); ssd_widget_add(box, group); //Points group = ssd_container_new("Foursquare points group", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); snprintf(text, sizeof(text), "%s %s", roadmap_lang_get("Points:"), gsCheckInInfo.sScorePoints); ssd_widget_add(group, ssd_text_new("Checkin points", text, 16, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); ssd_widget_add(group, space(5)); ssd_widget_add (group, ssd_separator_new ("separator", SSD_ALIGN_BOTTOM)); ssd_widget_add(group, space(5)); ssd_widget_add(box, group); //More details group = ssd_container_new("Foursquare more details group", NULL, SSD_MAX_SIZE,SSD_MIN_SIZE, SSD_WIDGET_SPACE | SSD_END_ROW); ssd_widget_set_color(group, "#000000", "#ffffff"); ssd_widget_add(group, ssd_text_new("more details label", roadmap_lang_get("Full details on this check-in are available for you on foursquare.com."), 16, SSD_TEXT_LABEL | SSD_ALIGN_VCENTER)); ssd_widget_add(group, space(5)); ssd_widget_add(box, group); //OK button ssd_widget_add (box, ssd_button_label ("confirm", roadmap_lang_get ("Ok"), SSD_ALIGN_CENTER|SSD_START_NEW_ROW|SSD_WS_DEFWIDGET| SSD_WS_TABSTOP, on_checkin_ok_btn)); ssd_widget_add (dialog, box); #ifndef TOUCH_SCREEN ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("Ok")); ssd_widget_set_left_softkey_callback ( dialog, on_ok_softkey); #endif }
///////////////////////////////////////////////////////////////////// // 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(); }
///////////////////////////////////////////////////////////////////// // 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(); }
///////////////////////////////////////////////////////////////////// // 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(); }
static void set_softkeys( SsdWidget dialog) { ssd_widget_set_left_softkey_text ( dialog, roadmap_lang_get("Options")); ssd_widget_set_left_softkey_callback ( dialog, on_options); }
static void on_dialog_closed( int type, void *context) { ssd_widget_set_left_softkey_callback(GenericList,NULL); }