rem: partNode::partNode( DwBodyPart* dwPart, int explicitType, int explicitSubType, bool deleteDwBodyPart ) : mRoot( 0 ), mNext( 0 ), mChild( 0 ), mWasProcessed( false ), mDwPart( dwPart ), mEncryptionState( KMMsgNotEncrypted ), mSignatureState( KMMsgNotSigned ), mMsgPartOk( false ), mEncodedOk( false ), mDeleteDwBodyPart( deleteDwBodyPart ), mMimePartTreeItem( 0 ) { if ( explicitType != DwMime::kTypeUnknown ) { mType    = explicitType; mSubType = explicitSubType; } else { kdDebug(5006) << "\n        partNode::partNode()      explicitType == DwMime::kTypeUnknown\n" << endl; if(dwPart && dwPart->hasHeaders() && dwPart->Headers().HasContentType()) { mType    = (!dwPart->Headers().ContentType().Type())?DwMime::kTypeUnknown:dwPart->Headers().ContentType().Type(); mSubType = dwPart->Headers().ContentType().Subtype(); } else { mType    = DwMime::kTypeUnknown; mSubType = DwMime::kSubtypeUnknown;
add: partNode( DwBodyPart* dwPart, int explicitType    = DwMime::kTypeUnknown, int explicitSubType = DwMime::kSubtypeUnknown, bool deleteDwBodyPart = false ) : mRoot(      0 ), mPrev(      0 ), mNext(      0 ), mChild(     0 ), mWasProcessed( false ), mDwPart(       dwPart ), mCryptoType(   CryptoTypeUnknown ), mIsEncrypted(  false ), mIsSigned(     false ), mMsgPartOk(    false ), mEncodedOk(    false ), mDeleteDwBodyPart( deleteDwBodyPart ), mMimePartTreeItem( 0 ) { if( explicitType != DwMime::kTypeUnknown ) { mType    = explicitType; mSubType = explicitSubType; } else { kdDebug(5006) << "\n        partNode::partNode()      explicitType == DwMime::kTypeUnknown\n" << endl; if(dwPart && dwPart->hasHeaders() && dwPart->Headers().HasContentType()) { mType    = (!dwPart->Headers().ContentType().Type())?DwMime::kTypeUnknown:dwPart->Headers().ContentType().Type(); mSubType = dwPart->Headers().ContentType().Subtype(); } else { mType    = DwMime::kTypeUnknown; mSubType = DwMime::kSubtypeUnknown; } } #ifdef DEBUG { DwString type, subType; DwTypeEnumToStr(    mType,    type ); DwSubtypeEnumToStr( mSubType, subType ); kdDebug(5006) << "\npartNode::partNode()   " << type.c_str() << "/" << subType.c_str() << "\n" << endl; } #endif
context: partNode::partNode( DwBodyPart* dwPart, int explicitType, int explicitSubType,		    bool deleteDwBodyPart )  : mRoot( 0 ), mNext( 0 ), mChild( 0 ),    mWasProcessed( false ),    mDwPart( dwPart ),    mEncryptionState( KMMsgNotEncrypted ),    mSignatureState( KMMsgNotSigned ),    mMsgPartOk( false ),    mEncodedOk( false ),    mDeleteDwBodyPart( deleteDwBodyPart ),    mMimePartTreeItem( 0 ){  if ( explicitType != DwMime::kTypeUnknown ) {    mType    = explicitType;     // this happens e.g. for the Root Node    mSubType = explicitSubType;  // representing the _whole_ message  } else {    kdDebug(5006) << "\n        partNode::partNode()      explicitType == DwMime::kTypeUnknown\n" << endl;    if(dwPart && dwPart->hasHeaders() && dwPart->Headers().HasContentType()) {      mType    = (!dwPart->Headers().ContentType().Type())?DwMime::kTypeUnknown:dwPart->Headers().ContentType().Type();      mSubType = dwPart->Headers().ContentType().Subtype();    } else {      mType    = DwMime::kTypeUnknown;      mSubType = DwMime::kSubtypeUnknown;    }  }#ifdef DEBUG  {    DwString type, subType;    DwTypeEnumToStr( mType, type );    DwSubtypeEnumToStr( mSubType, subType );    kdDebug(5006) << "\npartNode::partNode()   " << type.c_str() << "/" << subType.c_str() << "\n" << endl;  }#endif}