private bool PerformShutdownSequenceOnViewModel()
{
// Test cases that make use of views (e.g. recorded tests) have
// their own tear down logic as part of the test set-up (mainly
// because DynamoModel should stay long enough for verification
// code to verify data much later than the window closing).
//
if (DynamoModel.IsTestMode)
return false;
var sp = new DynamoViewModel.ShutdownParams(
shutdownHost: false,
allowCancellation: true,
closeDynamoView: false);
if (dynamoViewModel.PerformShutdownSequence(sp))
{
//Shutdown wasn't cancelled
SizeChanged -= DynamoView_SizeChanged;
LocationChanged -= DynamoView_LocationChanged;
return true;
}
else
{
//Shutdown was cancelled
return false;
}
}