NoScribble State

Applies to: Office 2010 | Outlook 2010 | Visual Studio

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.

Normal

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

Save, IPersistMessage::InitNew, or IPersistMessage::Load

Set the last error to and return E_UNEXPECTED.

NoScribble

IPersistMessage::GetLastError

Return the last error.

NoScribble

Other IPersistMessage : IUnknown methods or methods from other interfaces

Set the last error to and return E_UNEXPECTED.

NoScribble

See Also

Concepts

Form States