Example #1
0
void DlgCScenarioManager::OnReName() 
{
	// TODO: Add your command handler code here
	HTREEITEM hItem = m_tree.GetSelectedItem();
	if(hItem == NULL)
		return;
    //根据key值找到对应的工况
	DWORD key = m_tree.GetItemData(hItem);
	Scenario *pScenario = m_manager.LookUp(key);
	Scenario *pAnScenario = pScenario->GetAnScenario();
	DlgScenarioName dlg;
	dlg.m_strName = pScenario->GetName();
	if(IDOK == dlg.DoModal())
	{
		CString strName = dlg.GetName();
		if(pAnScenario != NULL)
		{
			if(pAnScenario->CheckName(strName))
			{
				pScenario->SetName(strName);
				m_tree.SetItemText(hItem,strName);
				UpdateData(FALSE);
			}
			else
			{
				AfxMessageBox(IDS_NAMEERROR);
			}
		}
		else
		{
			pScenario->SetName(strName);
			m_tree.SetItemText(hItem,strName);
			UpdateData(FALSE);
		}
	}

}