**THIS IS A WORK-IN-PROGRESS-DOCUMENT**, it may be confusing
This is the compose screen.
## external states
have a look at the SendViewDelegate, if you want to interact with these states.
### input states
it can be called with
* no prefilled Mail a.k.a create a new Mail (from Inbox)
* a invitation Mail (from ReadView, ContactView, SendView)
- hide invite button then
* warning Mail as a reaction to an insecure warning (ReadView) (getting a postcard from a contact, who sent letters before)
* draft Mail (from ReadView)
if the sendView is called you may set the attributes
* prefilledMail
the contents of this mail will be set in the sendView
* invite
the composed mail will be a invite mail. We will show the invite button (in the menu of the iconButton [navigationBar]) in the sendView if this value is false and a postcard is composed.
* sendViewDelegate
important for reaction to output states
* enforcePostcard
even if there are only recipients with known keys present send a postcard to everybody. This value may be changed by user while editing the composition
### output states
have a look at the SendViewDelegate, if you want to interact with these states.
the state after composing is one of the following: