rem: if ( !subtype || !*subtype ) return 0; switch ( subtype[0] ) { case 'p': case 'P': if ( qstricmp( subtype, "pgp" ) == 0 ) return ApplicationPgpBodyPartFormatter::create(); else if ( qstricmp( subtype, "postscript" ) == 0 ) return ApplicationPostscriptBodyPartFormatter::create();  case 'x': case 'X': if ( qstricmp( subtype, "pkcs7-mime" ) == 0 || qstricmp( subtype, "x-pkcs7-mime" ) == 0 ) return ApplicationPkcs7MimeBodyPartFormatter::create(); break; case 'm': case 'M': if ( qstricmp( subtype, "ms-tnef" ) == 0 ) return ApplicationMsTnefBodyPartFormatter::create(); break; }
add: if ( subtype && *subtype ) switch ( subtype[0] ) { case 'p': case 'P': if ( qstricmp( subtype, "pgp" ) == 0 ) return ApplicationPgpBodyPartFormatter::create(); else if ( qstricmp( subtype, "postscript" ) == 0 ) return ApplicationPostscriptBodyPartFormatter::create();  case 'x': case 'X': if ( qstricmp( subtype, "pkcs7-mime" ) == 0 || qstricmp( subtype, "x-pkcs7-mime" ) == 0 ) return ApplicationPkcs7MimeBodyPartFormatter::create(); break; case 'm': case 'M': if ( qstricmp( subtype, "ms-tnef" ) == 0 ) return ApplicationMsTnefBodyPartFormatter::create(); break; }
context:   const KMail::BodyPartFormatter * createForApplication( const char * subtype ) {    if ( !subtype || !*subtype )      return 0;    switch ( subtype[0] ) {    case 'p':    case 'P':      if ( qstricmp( subtype, "pgp" ) == 0 )	return ApplicationPgpBodyPartFormatter::create();      else if ( qstricmp( subtype, "postscript" ) == 0 )	return ApplicationPostscriptBodyPartFormatter::create();      // fall through    case 'x':    case 'X':      if ( qstricmp( subtype, "pkcs7-mime" ) == 0 ||	   qstricmp( subtype, "x-pkcs7-mime" ) == 0 )	return ApplicationPkcs7MimeBodyPartFormatter::create();      break;    case 'm':    case 'M':      if ( qstricmp( subtype, "ms-tnef" ) == 0 )	return ApplicationMsTnefBodyPartFormatter::create();      break;    }    return AnyTypeBodyPartFormatter::create();  }