It's currently rather difficult to display the mime-part tree as it is presented because what's exported doesn't reflect what needs to be displayed.
For instance:
MimeMesssgePart isAttachment CryptoMessagePart isAttachment CryptoMessagePart isAttachment TextMessagePart isAttachment MessagePart (main body) TextMessagePart isAttachment MessagePart (signed encrypted attachment) CryptoMessagePart isAttachment TextMessagePart isAttachment MessagePart (unsigned encrypted attachment)
This results in a ridiculous amount of nested views that do absolutely nothing.
Also, we can't filter out attachments, because everything that isn't directly a text part is an attachment it seems.
What we need is this:
Message Text (main body, encrypted, signed) Attachment (encrypted, signed) Attachment (encrypted)
So rather a fairly flat tree, with properties to figure out what is now signed or encrypted.
In most cases a list should be good enough, in some cases some hierarchical information may be useful to be able to display some thing inline.