Example #1
0
void ShowEditbox(const char* aTitleUtf8, const char* aTextUtf8, SsdKeyboardCallback callback,
					  void *context, TEditBoxType aBoxType ){
	if (!gisRegistered) {
		NOPH_EditBoxScreen_registerEditBoxTextAddr(&editbox_text[0]);
		gisRegistered= TRUE;
	}

	 if ( aBoxType & EEditBoxEmail ){ // Standard
		 roadmap_input_type_set_mode(inputtype_free_text);
	 }
	 else if  ( aBoxType & EEditBoxPassword ){ // Standard
		 roadmap_input_type_set_mode(inputtype_free_text);
		 myShowEditBox( aTitleUtf8, aTextUtf8,  callback, context, NOPH_EditBoxScreen_PASSWORD_FIELD);
	 }
	 else if  ( aBoxType & EEditBoxAlphaNumeric ){ // Standard
		 roadmap_input_type_set_mode(inputtype_alphanumeric);
		 myShowEditBox( aTitleUtf8, aTextUtf8,  callback, context, NOPH_EditBoxScreen_EDIT_FIELD);
	 } else {
		 roadmap_input_type_set_mode(inputtype_free_text);
		 myShowEditBox( aTitleUtf8, aTextUtf8,  callback, context, NOPH_EditBoxScreen_EDIT_FIELD);
	 }

}
Example #2
0
void ssd_dialog_hide (const char *name, int exit_code) {

   SsdDialog prev = NULL;
   SsdDialog dialog = RoadMapDialogCurrent;

   if (dialog == NULL)
   	return;

   dialog = RoadMapDialogCurrent; //might have changes

   while (dialog && strcmp(dialog->name, name)) {
      prev = dialog;
      dialog = dialog->activated_prev;
   }

   if (!dialog) {
      return;
   }

   if (dialog->on_dialog_closed) {
      dialog->on_dialog_closed( exit_code, dialog->context);
   }

   if (prev == NULL) {
      if (RoadMapDialogCurrent)
         RoadMapDialogCurrent = RoadMapDialogCurrent->activated_prev;
   } else {
      prev->activated_prev = dialog->activated_prev;
   }

   if (RoadMapDialogCurrent) {
      ssd_dialog_disable_key ();
//      if (RoadMapDialogCurrent->in_focus)
//	      ssd_widget_loose_focus(RoadMapDialogCurrent->in_focus);
   } else {
      roadmap_pointer_unregister_pressed     (ssd_dialog_pressed);
      roadmap_pointer_unregister_released    (ssd_dialog_released);
      roadmap_pointer_unregister_short_click (ssd_dialog_short_click);
      roadmap_pointer_unregister_long_click  (ssd_dialog_long_click);
      roadmap_keyboard_unregister_from_event__key_pressed(OnKeyPressed);

      roadmap_pointer_unregister_drag_start
                  (&ssd_dialog_drag_start);
      roadmap_pointer_unregister_drag_end
                  (&ssd_dialog_drag_end);
      roadmap_pointer_unregister_drag_motion
                  (&ssd_dialog_drag_motion);

   }


   hide_softkeys(dialog);

   ssd_dialog_handle_native_kb( RoadMapDialogCurrent );

   if (RoadMapScreenFrozen) {
      dialog = RoadMapDialogCurrent;
      while (dialog) {
         if ( !(dialog->container->flags &
             (SSD_DIALOG_FLOAT|SSD_DIALOG_TRANSPARENT))) {
            ssd_dialog_draw ();
            return;
         }
         dialog = dialog->activated_prev;
      }
   }

   roadmap_input_type_set_mode( inputtype_numeric );
    RoadMapScreenFrozen = 0;

   roadmap_start_screen_refresh (1);
}