//+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+
//|					custom UI update for Duration Test  					 |
//+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+
INT_PTR TestDurationDlgProc::DlgProc(TimeValue t, IParamMap2 *map, HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	switch (msg) 
	{
	case WM_INITDIALOG:
		// Send the message to notify the initialization of dialog
		map->GetParamBlock()->NotifyDependents( FOREVER, (PartID)map, kDuration_RefMsg_InitDlg );
		break;
	case WM_DESTROY:
		break;
	case WM_COMMAND:
		switch ( LOWORD( wParam ) )
		{
		case IDC_NEW:
			map->GetParamBlock()->NotifyDependents( FOREVER, PART_OBJ, kDuration_RefMsg_NewRand );
			break;
		case kDuration_message_variation:
			UpdateVariationDlg( hWnd, map->GetParamBlock()->GetTimeValue(kDuration_variation, t) );
			break;
		case kDuration_message_disparity:
			UpdateDisparityDlg( hWnd, map->GetParamBlock()->GetInt(kDuration_disparity, t) );
			break;
		}
	}
	return FALSE;
}
//+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+
//|					custom UI update for Duration Test  					 |
//+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+
INT_PTR TestGoToRotationDlgProc::DlgProc(TimeValue t, IParamMap2 *map, HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	switch (msg) 
	{
	IParamBlock2* pblock;
	case WM_INITDIALOG:
		// Send the message to notify the initialization of dialog
		map->GetParamBlock()->NotifyDependents( FOREVER, (PartID)map, kGoToRotation_RefMsg_InitDlg );
		break;
	case WM_COMMAND:
		pblock = map->GetParamBlock();
		switch (LOWORD(wParam))
		{
		case IDC_NEW:
			if (pblock)
				pblock->NotifyDependents(FOREVER, PART_OBJ, kGoToRotation_RefMsg_NewRand);
			return TRUE;
		case kGoToRotation_message_sync:
			if (pblock)
				UpdateSyncDlg( hWnd, pblock->GetInt(kGoToRotation_syncBy,t) );
			break;
		case kGoToRotation_message_variation:
			if (pblock)
				UpdateVariationDlg( hWnd, pblock->GetTimeValue(kGoToRotation_variation,t),
											pblock->GetFloat(kGoToRotation_spinVariation,t) );
			break;
		case kGoToRotation_message_match:
			if (pblock)
				UpdateMatchDlg( hWnd, pblock->GetInt(kGoToRotation_matchSpin,t) );
			break;
		}
		break;
	}
	return FALSE;
}