bool CSelectCoordSysActionDlg::PrepareResult() { // Selektierten Eintrag holen HTREEITEM hItem = m_tvCoordSystems.GetSelectedItem(); if (NULL == hItem || m_tvCoordSystems.ItemHasChildren (hItem)) return false; // nur Childs behandeln CCoordSystemItem *pItemData = (CCoordSystemItem *)m_tvCoordSystems.GetItemData (hItem); if (NULL == pItemData) return false; // Koordinatensystem am Parent setzen CString strTcfName = pItemData->GetTcfName(); COM_TRY { CComQIPtr<ITRiASCS, &IID_ITRiASCS> CS; THROW_FAILED_HRESULT(CS.CoCreateInstance(CLSID_TRIASCS)); THROW_FAILED_HRESULT(CS -> LoadFromFile(CComBSTR(strTcfName))); m_CS = CS; // store result coordsystem } COM_CATCH_OP_RETURN(CantLoadCS(strTcfName), false); return true; }
CSelectCoordSysActionDlg* CSelectCoordSysActionDlg::CreateInstance (LPCSTR pcCaption) { CSelectCoordSysActionDlg *pCfgDlg = NULL; COM_TRY { // Dialog erzeugen pCfgDlg = new CSelectCoordSysActionDlg(); // Caption setzen pCfgDlg -> m_strCaption = pcCaption; pCfgDlg -> m_psp.pszTitle = pCfgDlg -> m_strCaption; pCfgDlg -> m_psp.dwFlags |= PSP_USETITLE; } COM_CATCH_OP_RETURN(delete pCfgDlg, NULL); return pCfgDlg; }
CGenerateObjectPropertiesSelectDlg* CGenerateObjectPropertiesSelectDlg::CreateInstance ( CGenerateObjectProperties *pParent, LPCSTR pcCaption) { CGenerateObjectPropertiesSelectDlg *pCfgDlg = NULL; COM_TRY { // Dialog erzeugen ResourceFile RF (g_pDLLName); pCfgDlg = new CGenerateObjectPropertiesSelectDlg(pParent, ResID(IDD, &RF), pcCaption); if (NULL == pCfgDlg || !pCfgDlg -> FInit()) { DELETE_OBJ(pCfgDlg); return NULL; } } COM_CATCH_OP_RETURN(delete pCfgDlg, NULL); return pCfgDlg; }
CTopoRelRefDlg* CTopoRelRefDlg::CreateInstance (LPCSTR pcCaption) { CTopoRelRefDlg* pMultiRefDlg = NULL; COM_TRY { // Dialog erzeugen ResourceFile RF (g_pDLLName); pMultiRefDlg = new CTopoRelRefDlg (ResID(CTopoRelRefDlg::IDD, &RF), pcCaption); if (NULL == pMultiRefDlg || !pMultiRefDlg -> FInit()) { DELETE_OBJ(pMultiRefDlg); return NULL; } } COM_CATCH_OP_RETURN(delete pMultiRefDlg, NULL); return pMultiRefDlg; }