2 // File : QAD_ViewFrame.cxx
3 // Created : UI team, 05.09.00
4 // Descrip : Frame window for viewport in QAD-based application
6 // Modified : Mon Dec 03 15:41:43 2001
7 // Author : Nicolas REJNERI
10 // Copyright : Open CASCADE
15 #include "QAD_ViewFrame.h"
16 #include "QAD_Application.h"
17 #include "QAD_Desktop.h"
18 #include "QAD_FileDlg.h"
19 #include "QAD_MessageBox.h"
20 #include "QAD_Tools.h"
21 #include <qapplication.h>
23 #include "utilities.h"
28 QAD_ViewFrame::QAD_ViewFrame(QWidget* parent, const QString& title)
29 : QMainWindow (parent, title, 0)
36 QAD_ViewFrame::QAD_ViewFrame( QWidget* parent )
37 : QMainWindow (parent, "",0)
44 QAD_ViewFrame::~QAD_ViewFrame()
52 void QAD_ViewFrame::cleanup()
56 bool QAD_ViewFrame::isInViewer(SALOMEDS::Study_var aStudy,
57 const char* anEntry, const char* StudyFrameEntry)
59 SALOMEDS::SObject_var RefSO;
60 SALOMEDS::SObject_var SO = aStudy->FindObjectID(StudyFrameEntry);
61 SALOMEDS::ChildIterator_var it = aStudy->NewChildIterator(SO);
62 for (; it->More();it->Next()){
63 SALOMEDS::SObject_var CSO= it->Value();
64 if (CSO->ReferencedObject(RefSO))
65 if ( strcmp( anEntry, RefSO->GetID() ) == 0 )
71 vtkRenderer* QAD_ViewFrame::getRenderer()
73 MESSAGE ( "Only redefined VTKViewer")
78 Dumps 3d-Viewer contents into image file
79 File format is defined by file's extension; supported formats : PNG, BMP, GIF, JPG
81 void QAD_ViewFrame::onViewDump()
86 QApplication::setOverrideCursor( Qt::waitCursor );
87 QPixmap px = QPixmap::grabWindow(getViewWidget()->winId());
88 QApplication::restoreOverrideCursor();
90 QString fileName = QAD_FileDlg::getFileName(QAD_Application::getDesktop(),
92 tr("OCC_IMAGE_FILES"),
93 tr("INF_APP_DUMP_VIEW"),
95 if (!fileName.isNull()) {
96 QApplication::setOverrideCursor( Qt::waitCursor );
97 QString fmt = QAD_Tools::getFileExtensionFromPath(fileName).upper();
99 fmt = QString("BMP"); // default format
102 bool bOk = px.save(fileName, fmt.latin1());
103 QApplication::restoreOverrideCursor();
105 QAD_MessageBox::error1(QAD_Application::getDesktop(),
107 tr("ERR_DOC_CANT_SAVE_FILE"),