CustusX  2023.01.05-dev+develop.0da12
An IGT application
cx::ViewCollectionWidgetMixed Class Reference

#include <cxViewCollectionWidgetMixed.h>

Inheritance diagram for cx::ViewCollectionWidgetMixed:
cx::ViewCollectionWidget

Public Member Functions

 ViewCollectionWidgetMixed (RenderWindowFactoryPtr factory, QWidget *parent)
 
virtual ~ViewCollectionWidgetMixed ()
 
ViewPtr addView (View::Type type, LayoutRegion region)
 
virtual void setOffScreenRenderingAndClear (bool on)
 
virtual bool getOffScreenRendering () const
 
virtual void clearViews ()
 
virtual void setModified ()
 
virtual void render ()
 
virtual void setGridSpacing (int val)
 
virtual void setGridMargin (int val)
 
virtual int getGridSpacing () const
 
virtual int getGridMargin () const
 
virtual std::vector< ViewPtrgetViews ()
 
virtual QPoint getPosition (ViewPtr view)
 
virtual void enableContextMenuForViews (bool enable)
 
- Public Member Functions inherited from cx::ViewCollectionWidget
virtual ~ViewCollectionWidget ()
 

Protected Attributes

ViewCollectionWidgetmBaseLayout
 

Additional Inherited Members

- Signals inherited from cx::ViewCollectionWidget
void rendered ()
 
- Static Public Member Functions inherited from cx::ViewCollectionWidget
static QPointer< ViewCollectionWidgetcreateViewWidgetLayout (RenderWindowFactoryPtr factory, QWidget *parent=NULL)
 
static QPointer< ViewCollectionWidgetcreateOptimizedLayout (RenderWindowFactoryPtr factory, QWidget *parent=NULL)
 
- Protected Member Functions inherited from cx::ViewCollectionWidget
 ViewCollectionWidget (QWidget *parent)
 

Detailed Description

Widget for displaying Views, minimizing number of renderwindows but keeping the 3D views in separate renderwindows.

The rationale behind this class is:

  • The cost of rendering several vtkRenderWindows is high, especially on new Linux NVidia cards/drivers. I.e. try to reduce the number using LayoutWidgetUsingViewCollection.
  • vtkRenderWindowInteractor is connected to a vtkRenderWindow, and this is used in 3D views, thus we need unique vtkRenderWindows for each 3D View.

The solution here is to use a LayoutWidgetUsingViewCollection as basis, then adding LayoutWidgetUsingViewWidgets each containing one 3D view, and placing these on top of the basis in the QGridLayout.

Date
2014-09-26
Author
Christian Askeland

Definition at line 53 of file cxViewCollectionWidgetMixed.h.

Constructor & Destructor Documentation

cx::ViewCollectionWidgetMixed::ViewCollectionWidgetMixed ( RenderWindowFactoryPtr  factory,
QWidget *  parent 
)

Definition at line 26 of file cxViewCollectionWidgetMixed.cpp.

cx::ViewCollectionWidgetMixed::~ViewCollectionWidgetMixed ( )
virtual

Definition at line 39 of file cxViewCollectionWidgetMixed.cpp.

Member Function Documentation

ViewPtr cx::ViewCollectionWidgetMixed::addView ( View::Type  type,
LayoutRegion  region 
)
virtual

Implements cx::ViewCollectionWidget.

Definition at line 50 of file cxViewCollectionWidgetMixed.cpp.

void cx::ViewCollectionWidgetMixed::clearViews ( )
virtual

Implements cx::ViewCollectionWidget.

Definition at line 97 of file cxViewCollectionWidgetMixed.cpp.

void cx::ViewCollectionWidgetMixed::enableContextMenuForViews ( bool  enable)
virtual

Implements cx::ViewCollectionWidget.

Definition at line 184 of file cxViewCollectionWidgetMixed.cpp.

int cx::ViewCollectionWidgetMixed::getGridMargin ( ) const
virtual

Implements cx::ViewCollectionWidget.

Definition at line 152 of file cxViewCollectionWidgetMixed.cpp.

int cx::ViewCollectionWidgetMixed::getGridSpacing ( ) const
virtual

Implements cx::ViewCollectionWidget.

Definition at line 147 of file cxViewCollectionWidgetMixed.cpp.

bool cx::ViewCollectionWidgetMixed::getOffScreenRendering ( ) const
virtual

Implements cx::ViewCollectionWidget.

Definition at line 85 of file cxViewCollectionWidgetMixed.cpp.

QPoint cx::ViewCollectionWidgetMixed::getPosition ( ViewPtr  view)
virtual

Get the position of the Upper Left corner of the view, given in qt-coordinates of this (the ViewCollectionWidget).

Implements cx::ViewCollectionWidget.

Definition at line 166 of file cxViewCollectionWidgetMixed.cpp.

std::vector< ViewPtr > cx::ViewCollectionWidgetMixed::getViews ( )
virtual

Implements cx::ViewCollectionWidget.

Definition at line 158 of file cxViewCollectionWidgetMixed.cpp.

void cx::ViewCollectionWidgetMixed::render ( )
virtual

Implements cx::ViewCollectionWidget.

Definition at line 123 of file cxViewCollectionWidgetMixed.cpp.

void cx::ViewCollectionWidgetMixed::setGridMargin ( int  val)
virtual

Implements cx::ViewCollectionWidget.

Definition at line 141 of file cxViewCollectionWidgetMixed.cpp.

void cx::ViewCollectionWidgetMixed::setGridSpacing ( int  val)
virtual

Implements cx::ViewCollectionWidget.

Definition at line 135 of file cxViewCollectionWidgetMixed.cpp.

void cx::ViewCollectionWidgetMixed::setModified ( )
virtual

Implements cx::ViewCollectionWidget.

Definition at line 116 of file cxViewCollectionWidgetMixed.cpp.

void cx::ViewCollectionWidgetMixed::setOffScreenRenderingAndClear ( bool  on)
virtual

Implements cx::ViewCollectionWidget.

Definition at line 79 of file cxViewCollectionWidgetMixed.cpp.

Member Data Documentation

ViewCollectionWidget* cx::ViewCollectionWidgetMixed::mBaseLayout
protected

Definition at line 75 of file cxViewCollectionWidgetMixed.h.


The documentation for this class was generated from the following files: