1 // FileSaveStepDialog.cpp : implementation file
6 #include "SaveSTEPDlg.h"
8 /////////////////////////////////////////////////////////////////////////////
9 // CFileSaveSTEPDialog dialog
12 CFileSaveSTEPDialog::CFileSaveSTEPDialog(CWnd* pParent /*=NULL*/)
13 : CFileDialog(FALSE,_T("*.STEP"),NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
14 _T("STEP Files (*.step)|*.step;|STEP Files (*.stp)|*.stp;||"),
19 //dlg.m_ofn.lpstrInitialDir = initdir;
22 //{{AFX_DATA_INIT(CFileSaveSTEPDialog)
23 m_Cc1ModelType = STEPControl_ManifoldSolidBrep;
27 CASROOTValue.GetEnvironmentVariable (L"CASROOT");
28 CString initdir = (CASROOTValue + "\\..\\data\\step");
30 m_ofn.lpstrInitialDir = initdir;
31 m_ofn.Flags |= OFN_ENABLETEMPLATE;
32 m_ofn.lpTemplateName = MAKEINTRESOURCE(CFileSaveSTEPDialog::IDD);
33 m_ofn.lpstrTitle = _T("Save as STEP File");
36 void CFileSaveSTEPDialog::DoDataExchange(CDataExchange* pDX)
38 CFileDialog::DoDataExchange(pDX);
39 if (!pDX->m_bSaveAndValidate)
42 if (m_Cc1ModelType==STEPControl_ManifoldSolidBrep) m_DialogType=0;
43 if (m_Cc1ModelType==STEPControl_BrepWithVoids) Standard_Failure::Raise("unsupported enumeration terme");
44 if (m_Cc1ModelType==STEPControl_FacetedBrep) m_DialogType=1;
45 if (m_Cc1ModelType==STEPControl_FacetedBrepAndBrepWithVoids) Standard_Failure::Raise("unsupported enumeration terme");
46 if (m_Cc1ModelType==STEPControl_ShellBasedSurfaceModel) m_DialogType=2;
47 if (m_Cc1ModelType==STEPControl_GeometricCurveSet) m_DialogType=3;
50 //{{AFX_DATA_MAP(CFileSaveSTEPDialog)
51 DDX_Control(pDX, IDC_FSaveSTEP_Type, m_SaveTypeCombo);
52 DDX_CBIndex(pDX, IDC_FSaveSTEP_Type, m_DialogType );
55 if (pDX->m_bSaveAndValidate)
58 if (m_DialogType==0) m_Cc1ModelType=STEPControl_ManifoldSolidBrep;
60 if (m_DialogType==1) m_Cc1ModelType=STEPControl_FacetedBrep;
62 if (m_DialogType==2) m_Cc1ModelType=STEPControl_ShellBasedSurfaceModel;
63 if (m_DialogType==3) m_Cc1ModelType=STEPControl_GeometricCurveSet;
68 BEGIN_MESSAGE_MAP(CFileSaveSTEPDialog, CFileDialog)
69 //{{AFX_MSG_MAP(CFileSaveSTEPDialog)
74 /////////////////////////////////////////////////////////////////////////////
75 // CFileSaveSTEPDialog message handlers
77 BOOL CFileSaveSTEPDialog::OnInitDialog()
80 BOOL bRet = CFileDialog::OnInitDialog();
81 m_SaveTypeCombo.InsertString(-1, L"ManifoldSolidBrep");
83 m_SaveTypeCombo.InsertString(-1, L"FacetedBrep");
85 m_SaveTypeCombo.InsertString(-1, L"ShellBasedSurfaceModel");
86 m_SaveTypeCombo.InsertString(-1, L"GeometricCurveSet");
87 m_SaveTypeCombo.SetCurSel(m_DialogType);
92 BOOL CFileSaveSTEPDialog::OnFileNameOK()
97 // Do not call Default() if you override