static void create_messagebox (void) { SsdWidget dialog; dialog = ssd_dialog_new ("message_box", "", NULL, SSD_CONTAINER_BORDER|SSD_CONTAINER_TITLE|SSD_DIALOG_FLOAT| SSD_ALIGN_CENTER|SSD_ALIGN_VCENTER|SSD_ROUNDED_CORNERS); ssd_widget_set_color (dialog, "#000000", "#ff0000000"); ssd_widget_add (dialog, ssd_container_new ("spacer1", NULL, 0, 10, SSD_END_ROW)); ssd_widget_add (dialog, ssd_text_new ("text", "", 13, SSD_END_ROW|SSD_WIDGET_SPACE)); /* Spacer */ ssd_widget_add (dialog, ssd_container_new ("spacer2", NULL, 0, 20, 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, button_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(); }
void roadmap_groups_dialog (RoadMapCallback callback) { int row_height = 60; SsdWidget groupDlg; SsdWidget list; int flags = 0; int i; int count; const char *active_name; static char *labels[MAX_GROUPS] ; static void *values[MAX_GROUPS] ; static void *icons[MAX_GROUPS]; int num_following; if (roadmap_screen_is_hd_screen()){ row_height = 80; } #ifdef OPENGL flags |= SSD_ALIGN_CENTER|SSD_CONTAINER_BORDER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE; #endif groupDlg = ssd_dialog_new ( "groupDlg", roadmap_lang_get ("Groups"), NULL, SSD_CONTAINER_TITLE); groupDlg->context = (void *)callback; list = ssd_list_new ("list", SSD_MAX_SIZE, SSD_MAX_SIZE, inputtype_none, flags, NULL); ssd_list_resize ( list, row_height ); active_name = roadmap_groups_get_active_group_name(); count = roadmap_groups_get_num_following(); num_following = roadmap_groups_get_num_following(); if (active_name[0] != 0){ values[0] = (void *)roadmap_groups_get_active_group_name(); icons[0] = (void *) roadmap_groups_get_active_group_icon(); labels[0] = (char *)active_name; num_following -= 1; } else{ values[0] = ""; icons[0] = NULL; labels[0] = (char *)roadmap_lang_get("No group"); } for (i = 0; i< num_following; i++){ values[i+1] = (void *)roadmap_group_get_following_name(i); icons[i+1] = (void *) roadmap_group_get_following_icon(i); labels[i+1] = (char *) roadmap_group_get_following_name(i); } if (active_name[0] != 0){ values[count] = ""; icons[count] = NULL; labels[count] = (char *)roadmap_lang_get("No group"); } ssd_list_populate (list, count+1, (const char **)labels, (const void **)values, (const char **)icons, NULL, groups_callback, NULL, FALSE); ssd_widget_add (groupDlg, list); ssd_dialog_activate ("groupDlg", NULL); ssd_dialog_draw (); }
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(); }
static SsdWidget ssd_progress_msg_dialog_new( void ) { SsdWidget dialog, group, text, spacer, button; int rtl_flag = 0x0; int text_width; int text_ascent; int text_descent; int text_height; dialog = ssd_dialog_new( SSD_PROGRESS_MSG_DLG_NAME, "", NULL, SSD_CONTAINER_BORDER|SSD_PERSISTENT| SSD_CONTAINER_TITLE|SSD_DIALOG_FLOAT|SSD_ALIGN_CENTER| SSD_ALIGN_VCENTER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_BLACK); if ( !dialog ) { roadmap_log( ROADMAP_ERROR, "Error creating progress message dialog" ); return NULL; } rtl_flag = ssd_widget_rtl( NULL ); group = ssd_container_new( "Text Container", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_END_ROW|rtl_flag ); ssd_widget_set_color ( group, NULL, NULL ); roadmap_canvas_get_text_extents( "aAbB19Xx", SSD_PROGRESS_MSG_FONT_SIZE, &text_width, &text_ascent, &text_descent, NULL); text_height = (text_ascent + text_descent); // Space right spacer = ssd_container_new ( "spacer_right", NULL, 10, 1, SSD_END_ROW); ssd_widget_set_color ( spacer, NULL, NULL); ssd_widget_add ( group, spacer ); text = ssd_text_new( SSD_PROGRESS_MSG_TEXT_FLD, "", SSD_PROGRESS_MSG_FONT_SIZE, SSD_ALIGN_VCENTER|SSD_END_ROW ); ssd_widget_set_color(text, "#ffffff","#ffffff"); ssd_widget_add( group, text ); ssd_widget_add ( dialog, group ); // Space below spacer = ssd_container_new( "spacer", NULL, SSD_MAX_SIZE, 10, SSD_WIDGET_SPACE|SSD_END_ROW ); ssd_widget_set_color(spacer, NULL, NULL); ssd_widget_add( dialog, spacer ); #ifdef TOUCH_SCREEN button = ssd_button_label("Hide Button", roadmap_lang_get("Hide"), SSD_ALIGN_CENTER, on_button_hide); ssd_widget_add(dialog, button); #endif return dialog; }
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(); }
static SsdWidget ssd_progress_msg_dialog_new( void ) { SsdWidget dialog, group, text; SsdWidget text_cnt, spacer, button; int text_container_height = ADJ_SCALE( SSD_PROGRESS_MSG_TXT_CNT_HEIGHT ); SsdSize dlg_size; dialog = ssd_dialog_new( SSD_PROGRESS_MSG_DLG_NAME, "", NULL, SSD_CONTAINER_BORDER|SSD_PERSISTENT| SSD_DIALOG_FLOAT|SSD_ALIGN_CENTER| SSD_ALIGN_VCENTER|SSD_ROUNDED_CORNERS|SSD_ROUNDED_BLACK); if ( !dialog ) { roadmap_log( ROADMAP_ERROR, "Error creating progress message dialog" ); return NULL; } ssd_widget_get_size( dialog, &dlg_size, NULL ); group = ssd_container_new( "Text Group", NULL, SSD_MAX_SIZE, text_container_height, SSD_END_ROW|SSD_ALIGN_CENTER ); ssd_widget_set_color ( group, NULL, NULL ); /* * Container takes 85% of the dialog width. Aligned at the center vertically and horizontally. Text should fix the container * as much as possible */ text_cnt = ssd_container_new ( "Text container", NULL, dlg_size.width * 0.85, text_container_height, SSD_ALIGN_VCENTER|SSD_ALIGN_CENTER ); ssd_widget_set_color ( text_cnt, NULL, NULL); text = ssd_text_new( SSD_PROGRESS_MSG_TEXT_FLD, "", SSD_PROGRESS_MSG_FONT_SIZE, SSD_ALIGN_VCENTER|SSD_ALIGN_CENTER|SSD_TEXT_LABEL ); ssd_widget_set_color( text, "#ffffff","#ffffff" ); ssd_widget_add( text_cnt, text ); ssd_widget_add ( group, text_cnt ); ssd_widget_add ( dialog, group ); // Space below spacer = ssd_container_new( "spacer", NULL, SSD_MAX_SIZE, ADJ_SCALE( 3 ), SSD_END_ROW ); ssd_widget_set_color(spacer, NULL, NULL); ssd_widget_add( dialog, spacer ); #ifdef TOUCH_SCREEN button = ssd_button_label( "Hide Button", roadmap_lang_get("Hide"), SSD_ALIGN_CENTER, on_button_hide ); ssd_widget_add( dialog, button ); #endif return dialog; }
static SsdWidget create_reminder_dlg(){ SsdWidget dlg; SsdWidget bg; SsdWidget spacer; dlg = ssd_dialog_new (REMINDER_POP_DLG_NAME, "", NULL, SSD_DIALOG_FLOAT|SSD_ALIGN_CENTER); ssd_widget_set_color(dlg, NULL, NULL); bg = ssd_bitmap_new("sticky", "sticky", SSD_ALIGN_CENTER); ssd_widget_add(dlg, bg); spacer = ssd_container_new( "space", "", 10, 60, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( bg, spacer ); return bg; }
///////////////////////////////////////////////////////////////////// // 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_confirm_dialog (BOOL default_yes, const char * textYes, const char *textNo) { SsdWidget text; SsdWidget dialog,widget_title; SsdWidget text_con; SsdSize dlg_size; // const char *question_icon[] = {"question"}; #ifndef TOUCH_SCREEN int yes_flags = 0; int no_flags = 0; if(default_yes) yes_flags|= SSD_WS_DEFWIDGET; else no_flags |= SSD_WS_DEFWIDGET; #endif dialog = ssd_dialog_new ("confirm_dialog", "", NULL, SSD_CONTAINER_BORDER|SSD_DIALOG_FLOAT| SSD_ALIGN_CENTER|SSD_CONTAINER_TITLE|SSD_ALIGN_VCENTER|SSD_ROUNDED_CORNERS|SSD_POINTER_NONE); ssd_widget_set_color (dialog, "#000000", "#ff0000000"); ssd_widget_get_size( dialog, &dlg_size, NULL ); /* Spacer */ ssd_widget_add (dialog, ssd_container_new ("spacer1", NULL, 0, 15, SSD_END_ROW)); /* image_container = ssd_container_new ("image_container", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_ALIGN_RIGHT); ssd_widget_set_color (image_container, "#000000", "#ff0000000"); ssd_widget_add (image_container, ssd_button_new ("question", "question", question_icon , 1, SSD_ALIGN_CENTER|SSD_ALIGN_VCENTER , NULL)); // Image container ssd_widget_add (dialog,image_container); */ text_con = ssd_container_new ("text_container", NULL, ( dlg_size.width * 9 )/10, /* 90% of dialog width */ SSD_MIN_SIZE, SSD_END_ROW|SSD_ALIGN_CENTER ); ssd_widget_set_color (text_con, "#000000", "#ff0000000"); // Text box text = ssd_text_new ("text", "", 16, SSD_END_ROW|SSD_WIDGET_SPACE); ssd_widget_add (text_con,text); ssd_widget_add(dialog, text_con); widget_title = ssd_widget_get( dialog, "title_text" ); ssd_text_set_font_size( widget_title, 20 ); #ifdef TOUCH_SCREEN ssd_dialog_add_vspace( dialog, 10, SSD_START_NEW_ROW ); ssd_widget_add (dialog, ssd_button_label (roadmap_lang_get ("Yes"), textYes, SSD_ALIGN_CENTER| SSD_WS_TABSTOP, yes_button_callback)); ssd_widget_add (dialog, ssd_button_label (roadmap_lang_get ("No"), textNo, SSD_ALIGN_CENTER| SSD_WS_TABSTOP, no_button_callback)); #else set_soft_keys(dialog, textYes, textNo); #endif ssd_widget_add (dialog, ssd_container_new ("spacer2", NULL, 0, 10, SSD_START_NEW_ROW|SSD_WIDGET_SPACE)); }
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 }
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 }
static void create_ssd_dialog (void) { const char *left_icon[] = {"left_side"}; const char *right_icon[] = {"right_side"}; SsdWidget left; SsdWidget right; SsdWidget box; SsdWidget text; int align = 0; SsdWidget dialog = ssd_dialog_new ("Update house number", roadmap_lang_get ("Update house number"),NULL, SSD_CONTAINER_BORDER|SSD_CONTAINER_TITLE|SSD_DIALOG_FLOAT| SSD_ALIGN_CENTER|SSD_ALIGN_VCENTER|SSD_ROUNDED_CORNERS); ssd_widget_set_color (dialog, "#000000", "#ffffffdd"); /* Labels */ box = ssd_container_new ("labels_box", NULL, -1, -1, SSD_WIDGET_SPACE); ssd_widget_set_color (box, "#000000", NULL); ssd_widget_add (box, ssd_text_new ("street_label", roadmap_lang_get (STREET_PREFIX), 14, SSD_TEXT_LABEL|SSD_END_ROW)); ssd_widget_add (box, ssd_text_new ("city_label", roadmap_lang_get (CITY_PREFIX), 14, SSD_TEXT_LABEL|SSD_END_ROW)); ssd_widget_add (dialog, box); /* Values */ box = ssd_container_new ("values_box", NULL, -1, -1, SSD_END_ROW); ssd_widget_set_color (box, "#000000", NULL); ssd_widget_add (box, ssd_text_new (STREET_PREFIX, "", 14, SSD_END_ROW)); ssd_widget_add (box, ssd_text_new (CITY_PREFIX, "", 14, SSD_END_ROW)); ssd_widget_add (dialog, box); /* Spacer */ ssd_widget_add (dialog, ssd_container_new ("spacer1", NULL, 0, 16, SSD_END_ROW)); /* Left side */ if (ssd_widget_rtl (NULL)) { align = SSD_ALIGN_RIGHT; } left = ssd_container_new ("left", NULL, -1, -1, align|SSD_WS_TABSTOP); ssd_widget_set_color (left, "#000000", NULL); ssd_widget_set_offset (left, 2, 0); box = ssd_container_new ("left_box", NULL, 50, 20, SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_set_color (box, "#000000", NULL); ssd_widget_add (box, ssd_text_new ("estimated_left", "", 16, SSD_END_ROW|SSD_ALIGN_CENTER)); ssd_widget_add (left, box); ssd_widget_add (left, ssd_button_new ("left_button", "", left_icon, 1, SSD_ALIGN_CENTER|SSD_END_ROW, button_callback)); text = ssd_text_new (UPDATE_LEFT, "", 15, SSD_END_ROW|SSD_ALIGN_CENTER); ssd_widget_set_color (text, "#ff0000", 0); ssd_widget_add (left, text); /* Right side */ if (ssd_widget_rtl (NULL)) align = 0; else align = SSD_ALIGN_RIGHT; right = ssd_container_new ("right", NULL, -1, -1, align|SSD_WS_TABSTOP); ssd_widget_set_offset (right, 2, 0); ssd_widget_set_color (right, "#000000", NULL); box = ssd_container_new ("right_box", NULL, 50, 20, SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_set_color (box, "#000000", NULL); ssd_widget_add (box, ssd_text_new ("estimated_right", "", 16, SSD_END_ROW|SSD_ALIGN_CENTER)); ssd_widget_add (right, box); ssd_widget_add (right, ssd_button_new ("right_button", "", right_icon, 1, SSD_ALIGN_CENTER|SSD_END_ROW, button_callback)); text = ssd_text_new (UPDATE_RIGHT, "", 15, SSD_END_ROW); ssd_widget_set_color (text, "#ff0000", 0); ssd_widget_add (right, text); if (ssd_widget_rtl (NULL)) { ssd_widget_add (dialog, right); ssd_widget_add (dialog, left); } else { ssd_widget_add (dialog, left); ssd_widget_add (dialog, right); } ssd_widget_add (dialog, ssd_button_label ("OK", roadmap_lang_get ("Ok"), SSD_ALIGN_CENTER|SSD_START_NEW_ROW|SSD_WS_TABSTOP, button_callback)); }
static void activate_dialog (const char *name, DialogSelectedLines *selected_lines) { if (!ssd_dialog_activate (name, selected_lines)) { long *values; int count = ROADMAP_ROAD_LAST - ROADMAP_ROAD_FIRST + 1; int i; char **categories; static const char *lang_categories[ROADMAP_ROAD_LAST - ROADMAP_ROAD_FIRST + 1]; SsdWidget dialog; SsdWidget group; SsdWidget container; if (!def_values[1][0]) { def_values[1] = roadmap_lang_get ("Search"); } dialog = ssd_dialog_new (name, roadmap_lang_get (name), NULL, SSD_CONTAINER_TITLE); container = ssd_container_new ("Conatiner Group", NULL, SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW|SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE|SSD_CONTAINER_BORDER|SSD_POINTER_NONE); group = ssd_container_new ("Length group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW); ssd_widget_set_color (group, NULL, NULL); ssd_widget_add (group, ssd_text_new ("Label", roadmap_lang_get("Length"), -1, SSD_TEXT_LABEL)); ssd_widget_add (group, ssd_text_new ("Length", "", -1, 0)); ssd_widget_add (container, group); group = ssd_container_new ("Speed group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW); ssd_widget_set_color (group, NULL, NULL); ssd_widget_add (group, ssd_text_new ("Label", roadmap_lang_get("Speed"), -1, SSD_TEXT_LABEL)); ssd_widget_add (group, ssd_text_new ("Speed", "", -1, 0)); ssd_widget_add (container, group); group = ssd_container_new ("Time group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW); ssd_widget_set_color (group, NULL, NULL); ssd_widget_add (group, ssd_text_new ("Label", roadmap_lang_get("Time"), -1, SSD_TEXT_LABEL)); ssd_widget_add (group, ssd_text_new ("Time", "", -1, SSD_END_ROW)); ssd_widget_add (container, group); roadmap_layer_get_categories_names (&categories, &i); values = malloc ((count+1) * sizeof (long)); for (i=0; i<count; i++) { values[i] = i; lang_categories[i] = roadmap_lang_get (categories[i]); } group = ssd_container_new ("Road type group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW); ssd_widget_add (group, ssd_text_new ("Label", roadmap_lang_get("Road type"), -1, SSD_TEXT_LABEL|SSD_ALIGN_VCENTER)); ssd_widget_add (group, ssd_choice_new ("Road type", count, (const char **)lang_categories, (const void**)values, SSD_END_ROW|SSD_ALIGN_VCENTER, NULL)); ssd_widget_add (container, group); group = ssd_container_new ("Name group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW); ssd_widget_add (group, ssd_text_new ("Label", roadmap_lang_get("Name"), -1, SSD_TEXT_LABEL|SSD_ALIGN_VCENTER)); ssd_widget_add (group, ssd_entry_new ("Name", "", SSD_ALIGN_VCENTER, 0,180, SSD_MIN_SIZE,"")); ssd_widget_add (container, group); group = ssd_container_new ("Text to Speech group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW); ssd_widget_add (group, ssd_text_new ("Label", roadmap_lang_get("Text to Speech"), -1, SSD_TEXT_LABEL|SSD_ALIGN_VCENTER)); ssd_widget_add (group, ssd_entry_new ("Text to Speech", "", SSD_ALIGN_VCENTER, 0,180, SSD_MIN_SIZE,"")); ssd_widget_add (container, group); group = ssd_container_new ("City group", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE, SSD_WIDGET_SPACE|SSD_END_ROW); ssd_widget_add (group, ssd_text_new ("Label", roadmap_lang_get("City"), -1, SSD_TEXT_LABEL|SSD_ALIGN_VCENTER)); ssd_widget_add (group, ssd_choice_new ("City", sizeof(def_values) / sizeof(char **), def_values, (const void **)def_values, SSD_END_ROW|SSD_ALIGN_VCENTER, editor_dialog_city_cb)); ssd_widget_add (container, group); ssd_widget_add (container, ssd_button_label ("confirm", roadmap_lang_get ("Ok"), SSD_ALIGN_CENTER|SSD_START_NEW_ROW, editor_segments_apply)); ssd_widget_add (dialog, container); ssd_dialog_activate (name, selected_lines); } }
static void reminder_add_dlg(PluginStreetProperties *properties, RoadMapPosition *position, BOOL isReminder, BOOL default_reminder){ SsdWidget dialog, dialog_cont; SsdWidget group; SsdWidget text_box; SsdWidget spacer; SsdWidget text; SsdWidget container, box2; static const char *distance_labels[6]; static const char *distance_values[6]; const char * dlg_name; static const char *repeat_labels[2] ; static const char *repeat_values[2] = {"0", "1"}; if (properties) gContext.properties = *properties; else{ gContext.properties.address = ""; gContext.properties.street = ""; gContext.properties.city = ""; } gContext.position = *position; repeat_labels[0] = roadmap_lang_get("Once"); repeat_labels[1] = roadmap_lang_get("Every time"); if (roadmap_math_is_metric()){ distance_values[0] = "100"; distance_values[1] = "500"; distance_values[2] = "1000"; distance_values[3] = "5000"; distance_values[4] = "10000"; distance_values[5] = "20000"; distance_labels[0] = "100 m"; distance_labels[1] = "500 m"; distance_labels[2] = "1 km"; distance_labels[3] = "5 km"; distance_labels[4] = "10 km"; distance_labels[5] = "20 km"; } else{ distance_values[0] = "30"; distance_values[1] = "152"; distance_values[2] = "1609"; distance_values[3] = "8046"; distance_values[4] = "16090"; distance_values[5] = "32186"; distance_labels[0] = "100 ft"; distance_labels[1] = "500 ft"; distance_labels[2] = "1 mi"; distance_labels[3] = "5 mi"; distance_labels[4] = "10 mi"; distance_labels[5] = "20 mi"; } if (default_reminder) dlg_name = roadmap_lang_get(REMINDER_DLG_TITLE); else dlg_name = roadmap_lang_get("Save location"); dialog = ssd_dialog_new (REMINDER_DLG_NAME, dlg_name, NULL, SSD_CONTAINER_TITLE); dialog_cont = ssd_container_new ("Reminder_DLg_Cont", "", SSD_MAX_SIZE, SSD_MAX_SIZE, SSD_END_ROW); ssd_widget_set_color(dialog_cont, NULL, NULL); text = ssd_text_new("AddressTitle", roadmap_lang_get("Address"), 18, SSD_END_ROW); ssd_widget_add(dialog_cont, text); group = ssd_container_new ("Report", 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); if (properties){ if (properties->street){ text = ssd_text_new( "Street Text", properties->street,-1,SSD_END_ROW); ssd_widget_add(group, text); } if (properties->street){ text = ssd_text_new( "city Text", properties->city,-1,SSD_END_ROW); ssd_widget_add(group, text); } } ssd_widget_add(dialog_cont, group); ssd_dialog_add_hspace(dialog_cont, 5, SSD_END_ROW); text = ssd_text_new("Name", roadmap_lang_get("Name"), 18, SSD_END_ROW); ssd_widget_add(dialog_cont, text); group = ssd_container_new ("Report", 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); text_box = ssd_entry_new( "TitleEntry","",SSD_WIDGET_SPACE|SSD_END_ROW|SSD_WS_TABSTOP,0, SSD_MAX_SIZE, SSD_MIN_SIZE,roadmap_lang_get("Name")); ssd_widget_add(group, text_box); ssd_widget_add(dialog_cont, group); ssd_dialog_add_hspace(dialog_cont, 5, SSD_END_ROW); if (roadmap_reminder_feature_enabled()){ text = ssd_text_new("Geo-ReminderTitle", roadmap_lang_get("Reminder"), 18, SSD_END_ROW); ssd_widget_add(dialog_cont, text); group = ssd_container_new ("Report", 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); container = ssd_container_new ("CheckboxContainer", "", SSD_MAX_SIZE, SSD_MIN_SIZE, SSD_END_ROW); ssd_widget_set_color(container, NULL, NULL); ssd_widget_add ( container, ssd_text_new ("Label", roadmap_lang_get ( "Add Geo-Reminder"), 14, SSD_TEXT_LABEL|SSD_WIDGET_SPACE|SSD_ALIGN_VCENTER ) ); ssd_widget_add (container, ssd_checkbox_new ("add_reminder", default_reminder, SSD_ALIGN_RIGHT, on_checkbox_selected,NULL,NULL,CHECKBOX_STYLE_ON_OFF)); ssd_widget_add(group, container); container = ssd_container_new ("Distance", "", SSD_MIN_SIZE, SSD_MIN_SIZE, 0); ssd_widget_set_color(container, NULL, NULL); box2 = ssd_container_new ("box2", NULL, roadmap_canvas_width()/2, SSD_MIN_SIZE, SSD_ALIGN_VCENTER); ssd_widget_set_color (box2, NULL, NULL); text = ssd_text_new( "Distance Text", roadmap_lang_get("Distance to alert"),-1, SSD_ALIGN_VCENTER); ssd_widget_add(box2, text); ssd_widget_add(container, box2); ssd_dialog_add_hspace(container, 5, 0); ssd_widget_add (container, ssd_choice_new ("distance", roadmap_lang_get("Distance to alert"), 5, (const char **)distance_labels, (const void **)distance_values, SSD_ALIGN_VCENTER|SSD_WS_TABSTOP|SSD_END_ROW, NULL)); spacer = ssd_container_new( "space", "", SSD_MIN_SIZE, 1, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( group, spacer ); ssd_widget_add(group, container); container = ssd_container_new ("Repeat", "", SSD_MIN_SIZE, SSD_MIN_SIZE, 0); ssd_widget_set_color(container, NULL, NULL); box2 = ssd_container_new ("box2", NULL, roadmap_canvas_width()/2, SSD_MIN_SIZE, SSD_ALIGN_VCENTER); ssd_widget_set_color (box2, NULL, NULL); text = ssd_text_new( "Repeat Text", roadmap_lang_get("Repeat reminder"),-1, SSD_ALIGN_VCENTER); ssd_widget_add(box2, text); ssd_widget_add(container, box2); ssd_dialog_add_hspace(container, 5, 0); ssd_widget_add (container, ssd_choice_new ("repeat", roadmap_lang_get("Repeat reminder"), 2, (const char **)repeat_labels, (const void **)repeat_values, SSD_ALIGN_VCENTER|SSD_WS_TABSTOP, NULL)); ssd_widget_add(group, container); text_box = ssd_entry_new( "DescriptionEntry","",SSD_WIDGET_SPACE|SSD_END_ROW|SSD_WS_TABSTOP,0, SSD_MAX_SIZE, SSD_MIN_SIZE,roadmap_lang_get("Description")); ssd_widget_add(group, text_box); ssd_widget_add(dialog_cont, group); if (!default_reminder){ ssd_widget_hide(ssd_widget_get(group,"DescriptionEntry")); ssd_widget_hide(ssd_widget_get(group,"Repeat")); ssd_widget_hide(ssd_widget_get(group,"Distance")); } } spacer = ssd_container_new( "space", "", SSD_MIN_SIZE, 5, SSD_END_ROW ); ssd_widget_set_color( spacer, NULL, NULL ); ssd_widget_add( dialog_cont, spacer ); ssd_widget_add (dialog_cont, ssd_button_label ("Save", roadmap_lang_get ("Save"), SSD_WS_TABSTOP|SSD_ALIGN_CENTER|SSD_ALIGN_BOTTOM, reminder_add_dlg_buttons_callback)); ssd_widget_add (dialog_cont, ssd_button_label ("Cancel", roadmap_lang_get ("Cancel"), SSD_WS_TABSTOP|SSD_ALIGN_CENTER|SSD_ALIGN_BOTTOM, reminder_add_dlg_buttons_callback)); ssd_widget_add(dialog, dialog_cont); ssd_dialog_activate(REMINDER_DLG_NAME, NULL); }
///////////////////////////////////////////////////////////////////// // 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 roadmap_geo_location_dialog(void){ SsdWidget dialog; SsdWidget group; SsdWidget progress; SsdWidget text; SsdWidget container; SsdWidget title; int width = roadmap_canvas_width() - 20; dialog = ssd_dialog_new ("geo_location_info", roadmap_lang_get ("waze status in your area"), NULL, SSD_CONTAINER_TITLE|SSD_DIALOG_NO_BACK); group = ssd_container_new ("geo_location_group", NULL, width, SSD_MIN_SIZE,SSD_WIDGET_SPACE|SSD_ALIGN_CENTER|SSD_END_ROW|SSD_ROUNDED_CORNERS|SSD_ROUNDED_WHITE|SSD_CONTAINER_BORDER); ssd_widget_set_color (group, NULL,NULL); ssd_widget_add (group, space(5)); text = ssd_text_new ("Metro", g_geo_info.metroplolitan, 28,SSD_ALIGN_CENTER); ssd_widget_add (group, text); text = ssd_text_new ("Label_label", roadmap_lang_get("Metro"), 28,SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_add (group, text); ssd_widget_add (group, space(5)); title = ssd_container_new ("title_gr", NULL, SSD_MIN_SIZE, SSD_MIN_SIZE,SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_set_color(title, NULL, NULL); text = ssd_text_new ("Label_status", roadmap_lang_get("Status: "), 20, 0); ssd_widget_add (title, text); text = ssd_text_new ("Status", g_geo_info.state, 20,SSD_END_ROW); ssd_widget_set_color(text, "#4886b7", "#4886b7"); ssd_widget_add (title, text); ssd_widget_add (group, title); ssd_widget_add (group, space(15)); text = ssd_text_new ("What you get label", roadmap_lang_get("What you get:"), 18,SSD_ALIGN_CENTER|SSD_END_ROW); ssd_widget_add (group, text); ssd_widget_add (group, space(5)); text = ssd_text_new ("Map_label", roadmap_lang_get("Navigable map: "), 14,0); ssd_widget_add (group, text); text = ssd_text_new ("Map_label_value", g_geo_info.map_score, 14,SSD_END_ROW); ssd_widget_set_color(text, "#4886b7", "#4886b7"); ssd_widget_add (group, text); ssd_widget_add (group, space(5)); text = ssd_text_new ("Traffic_label", roadmap_lang_get("Real-Time traffic: "), 14, 0); ssd_widget_add (group, text); text = ssd_text_new ("Traffic_label_value", g_geo_info.traffic_score, 14,SSD_END_ROW); ssd_widget_set_color(text, "#4886b7", "#4886b7"); ssd_widget_add (group, text); ssd_widget_add (group, space(5)); text = ssd_text_new ("Usage_label", roadmap_lang_get("Community alerts: "), 14,0); ssd_widget_add (group, text); text = ssd_text_new ("Usage_label", g_geo_info.usage_score, 14,SSD_END_ROW); ssd_widget_set_color(text, "#4886b7", "#4886b7"); ssd_widget_add (group, text); ssd_widget_add (group, space(5)); ssd_widget_add (group, space(20)); progress = ssd_progress_new("progress",SSD_MAX_SIZE, 0); ssd_progress_set_value(progress, g_geo_info.overall_score); ssd_widget_add(group, progress); //ssd_widget_add (group, space(5)); container = ssd_container_new ("text_cont", NULL, 80, SSD_MIN_SIZE,SSD_WIDGET_SPACE); text = ssd_text_new ("Early building", roadmap_lang_get("Early Building"), -1, SSD_ALIGN_CENTER); ssd_widget_add (container, text); ssd_widget_add (group, container); container = ssd_container_new ("text_cont", NULL, 80, SSD_MIN_SIZE,SSD_WIDGET_SPACE|SSD_ALIGN_CENTER); text = ssd_text_new ("Partial Value", roadmap_lang_get("Partial Value"), -1, SSD_ALIGN_CENTER); ssd_widget_add (container, text); ssd_widget_add (group, container); container = ssd_container_new ("text_cont", NULL, 40, SSD_MIN_SIZE,SSD_WIDGET_SPACE|SSD_END_ROW); text = ssd_text_new ("Full Value", roadmap_lang_get("Full Value"), -1, SSD_ALIGN_CENTER); ssd_widget_add (container, text); ssd_widget_add (group, container); #ifdef TOUCH_SCREEN ssd_widget_add (group, space(15)); ssd_widget_add (group, ssd_button_label ("Let me in", roadmap_lang_get ("Let me in"), SSD_WS_TABSTOP|SSD_ALIGN_CENTER|SSD_START_NEW_ROW, button_callback)); #else ssd_widget_set_right_softkey_text ( dialog, roadmap_lang_get("Let me in")); ssd_widget_set_right_softkey_callback ( dialog, on_softkey); #endif ssd_widget_add (group, space(5)); ssd_widget_add( dialog, group); ssd_dialog_activate ("geo_location_info", NULL); }
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 (); }