NoScribble State
This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
The NoScribble state indicates that changes to a message are being saved. The actual saving of values stored in the form object's user interface occurs when the form object's IPersistMessage::Save method is called by the client application. The following table describes allowed transitions from the NoScribble state.
IPersistMessage method |
Action |
New state |
---|---|---|
IPersistMessage::SaveCompleted( pMessage == NULL) |
If fSameAsLoad flag was TRUE on the IPersistMessage::Save call that caused the form to enter the NoScribble state and the message has been modified, internally mark the changes as saved and call the IMAPIViewAdviseSink::OnSaved method. |
|
IPersistMessage::SaveCompleted( pMessage != NULL) |
Call the IPersistMessage::HandsOffMessage method (similar to the OLE IPersistStorage::HandsOffStorage method) followed by the normal SaveCompleted actions. If SaveCompleted was successful, enter the Normal state. Otherwise, enter the HandsOffAfterSave state. |
Normal or HandsOffAfterSave |
HandsOffMessage |
Recursively invoke the HandsOffMessage method on embedded messages or the OLE IPersistStorage::HandsOffStorage method on embedded OLE objects. Release the message object and any embedded messages or objects. |
HandsOffAfterSave |
Set the last error to and return E_UNEXPECTED. |
NoScribble |
|
Return the last error. |
NoScribble |
|
Other IPersistMessage : IUnknown methods or methods from other interfaces |
Set the last error to and return E_UNEXPECTED. |
NoScribble |