int COverlayPanel::rename(IOverlay *pOverlay) { char buf[64]; BSTR name; pOverlay->get_Name(&name); strcpy(buf, (char*)_bstr_t(name, false)); CRenameDialog *d = new CRenameDialog(buf); d->DoModal(m_hWnd); delete d; if (*buf != 0) // Can't have empty strings { pOverlay->put_Name(_bstr_t(buf)); resetList(pOverlay); } return FALSE; }
void CGeneralPage::OnRename(UINT, int, HWND) { CRenameDialog wndRename; wndRename.SetName(m_pDevice->GetName()); INT_PTR iResult = wndRename.DoModal(); if (IDOK == iResult) { CString strNewName = wndRename.GetName(); if (0 != strNewName.Compare(m_pDevice->GetName())) { BOOL fSuccess = m_pDevice->SetName(strNewName); if (!fSuccess) { ShowErrorMessageBox(IDS_ERROR_RENAME_DEVICE); } else { m_edtDevName.SetWindowText(strNewName); UpdateData(); } } } }