/*========================================================================= Program: Visualization Toolkit Module: vtkQtView.h =========================================================================*/ /*------------------------------------------------------------------------- Copyright 2009 Sandia Corporation. Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software. -------------------------------------------------------------------------*/ // .NAME vtkQtView - Superclass for Qt widget-based views. // // .SECTION Description // This abstract superclass provides common api to integrate a Qt widget // into the VTK view framework. Not much here yet, but in the future there // could be methods around selection, event-handling, drag-and-drop, etc. // #ifndef vtkQtView_h #define vtkQtView_h #include "vtkViewsQtModule.h" // For export macro #include "vtkView.h" #include // Needed to hook into Qt class VTKVIEWSQT_EXPORT vtkQtView : public QObject, public vtkView { Q_OBJECT public: vtkTypeMacro(vtkQtView, vtkView); void PrintSelf(ostream& os, vtkIndent indent); // Description: // Get the main container of this view (a QWidget). // The application typically places the view with a call // to GetWidget(): something like this // this->ui->box->layout()->addWidget(this->View->GetWidget()); virtual QWidget* GetWidget()=0; // Description: // Calls QApplication::processEvents(). This is useful if you are using QWidgets // but have not called QApplication::exec because you don't want to give control // to the Qt event loop. See also ProcessQtEventsNoUserEvents(). virtual void ProcessQtEvents(); // Description: // Calls QApplication::processEvents(QEventLoop::ExcludeUserInputEvents). // See also ProcessQtEvents(). virtual void ProcessQtEventsNoUserInput(); // Description: // Save an image. Uses QPixmap::grab and QPixmap::save. The image format will // be determined from the filename. Qt's image format support may vary, usually // bmp, jpg, ppm, or png is a safe choice. Returns false if there was a failure. virtual bool SaveImage(const char* fileName); protected: vtkQtView(); ~vtkQtView(); private: vtkQtView(const vtkQtView&); // Not implemented. void operator=(const vtkQtView&); // Not implemented. }; #endif