
Tue, 11/05/2002 - 17:18
Me Again!
Now that I have got the app to run, I can't get it to save an OCAF document.
Can anybody see where I am going wrong?
I am implementing under OnSaveDocument. Code is listed below.
BOOL CLeonardoDoc::OnSaveDocument(LPCTSTR lpszPathName)
{
// TODO: Add your specialized code here and/or call the base class
int res = CDocument::OnSaveDocument(lpszPathName);
//
// Saving OCAF Document
// Get OCAF Application
Handle(TLeo_Application) LeoApp= ((CLeonardoApp*)AfxGetApp())->GetApp();
CString extension = "leo";
CString CSPath(lpszPathName);
// If extension not defined add defalult extension
if(CSPath.Find('.') == -1 ) {
// Remove file without extension
CFile::Remove(lpszPathName);
CSPath += "." + extension;
}
Standard_CString SPath = (Standard_CString)(LPCTSTR) CSPath;
TCollection_ExtendedString TPath(SPath);
// Saves the document in the current application
LeoApp->SaveAs(myOcafDoc,TPath);
return res;
}
My OnNewDocument code:-
BOOL CLeonardoDoc::OnNewDocument()
{
if (!CDocument::OnNewDocument())
return FALSE;
// TODO: add reinitialization code here
// (SDI documents will reuse this document)
Handle(TLeo_Application) LeoApp = ((CLeonardoApp*)AfxGetApp())->GetApp();
// Create a new Ocaf document
LeoApp->NewDocument("Leo",myOcafDoc);
TPrsStd_AISViewer::New(myOcafDoc->Main(),myViewer);
Handle(AIS_InteractiveContext) CTX;
TPrsStd_AISViewer::Find(myOcafDoc->Main(), CTX);
CTX->SetDisplayMode(AIS_Shaded);
myAISContext=CTX;
return TRUE;
}
Many Thanks
Steve Howgill
Tue, 09/12/2006 - 12:34
Hi, I encounter the same problem! How can I fix this trouble!
thanks.
Tue, 07/17/2007 - 17:08
I have the same problem OCC 6.1