ATMO_BOOL CAtmoGradients::Execute(HINSTANCE hInst, HWND parent, CAtmoDynData *pAtmoDynData)
{
	CAtmoConnection *pAtmoConnection = pAtmoDynData->getAtmoConnection();
	CAtmoConfig *pAtmoConfig = pAtmoDynData->getAtmoConfig();

	EffectMode backupEffectMode = CAtmoTools::SwitchEffect(pAtmoDynData, emDisabled);

	CAtmoGradients *pAtmoGradients = new CAtmoGradients(hInst, parent, pAtmoDynData);

	ATMO_BOOL result (pAtmoGradients->ShowModal() == IDOK);
	if(result == ATMO_TRUE) 
	{  
		pAtmoConfig->setLiveView_EdgeWeighting( pAtmoGradients->m_edge_weight );
	} 
	else 
	{
		// altes Setup wieder Temporär in Controller laden!
		// flackert vermutlich furchtbar...aber wenns dann wirkt... ;-)
	}
	delete pAtmoGradients;

	CAtmoTools::SwitchEffect(pAtmoDynData, backupEffectMode);
	return result;
}