static int edit_callback (SsdWidget widget, const char *new_value) { const char *value; SsdEntryContext* ctx; /* Get the entry widget */ widget = widget->parent; ctx = ( SsdEntryContext* ) widget->context; value = widget->get_value (widget); #if ((defined(__SYMBIAN32__) && !defined(TOUCH_SCREEN)) || defined(IPHONE) || defined( ANDROID )) { SsdWidget text = ssd_widget_get(widget->children, "Text"); if ( text && (text->flags & SSD_TEXT_PASSWORD) ) { if (!ctx->editbox_title) ShowEditbox( ctx->kb_title, value, on_kb_closed, widget, EEditBoxPassword ); else ShowEditbox( ctx->editbox_title, value, on_kb_closed, widget, EEditBoxPassword ); } else { if (!ctx->editbox_title) ShowEditbox( ctx->kb_title, value, on_kb_closed, widget, EEditBoxStandard ); else ShowEditbox( ctx->editbox_title, value, on_kb_closed, widget, EEditBoxStandard ); } } #else ssd_show_keyboard_dialog_ext( ctx->editbox_title ? ctx->editbox_title : ctx->kb_title, value, ctx->kb_label, ctx->kb_note, on_kb_closed, widget, ctx->kb_flags ); #endif return 1; }
static int button_callback (SsdWidget widget, const char *new_value) { const char *title; const char *value; if (!strcmp(widget->name, "OK")) { update_range ( ssd_widget_get_value (widget->parent, UPDATE_LEFT), ssd_widget_get_value (widget->parent, UPDATE_RIGHT), ssd_dialog_get_value (CITY_PREFIX), ssd_dialog_get_value (STREET_PREFIX)); ssd_dialog_hide_current (dec_cancel); return 1; } else if (!strcmp(widget->name, "left_button")) { title = roadmap_lang_get (UPDATE_LEFT); value = ssd_widget_get_value (widget->parent, UPDATE_LEFT); } else { title = roadmap_lang_get (UPDATE_RIGHT); value = ssd_widget_get_value (widget->parent, UPDATE_RIGHT); } #if (defined(__SYMBIAN32__) && !defined(TOUCH_SCREEN)) ShowEditbox(title, "", keyboard_callback, (void *)widget, EEditBoxStandard | EEditBoxNumeric ); #else ssd_show_keyboard_dialog( title, NULL, keyboard_callback, widget); #endif return 1; }