NorMIT-nav  2023.01.05-dev+develop.0da12
An IGT application
cxViewLinkingViewContainerItem.cpp
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 
13 
14 namespace cx
15 {
16 
18 {
19  boost::shared_ptr<ViewLinkingViewContainerItem> retval(new ViewLinkingViewContainerItem(base, renderWindow));
20  retval->mSelf = retval;
21  return retval;
22 }
23 
25  ViewRepCollection(renderWindow, "")
26 {
27  mBase = base;
28 
29  connect(base, SIGNAL(resized(QSize)), this, SIGNAL(resized(QSize)));
30  connect(base, SIGNAL(mouseMove(int, int, Qt::MouseButtons)), this, SIGNAL(mouseMove(int, int, Qt::MouseButtons)));
31  connect(base, SIGNAL(mousePress(int, int, Qt::MouseButtons)), this, SIGNAL(mousePress(int, int, Qt::MouseButtons)));
32  connect(base, SIGNAL(mouseRelease(int, int, Qt::MouseButtons)), this, SIGNAL(mouseRelease(int, int, Qt::MouseButtons)));
33  connect(base, SIGNAL(mouseWheel(int, int, int, int, Qt::MouseButtons)), this, SIGNAL(mouseWheel(int, int, int, int, Qt::MouseButtons)));
34  connect(base, SIGNAL(shown()), this, SIGNAL(shown()));
35  connect(base, SIGNAL(focusChange(bool, Qt::FocusReason)), this, SIGNAL(focusChange(bool, Qt::FocusReason)));
36  connect(base, SIGNAL(customContextMenuRequestedInGlobalPos(const QPoint &)), this, SIGNAL(customContextMenuRequested(const QPoint &)));
37 
38 }
39 
42 {
43  if (mBase)
44  return mBase->size();
45  return QSize(0,0);
46 }
48 {
49  if (mBase)
50  mBase->setZoomFactor(factor);
51 }
53 {
54  if (mBase)
55  return mBase->getZoomFactor();
56  return 1;
57 }
59 {
60  if (mBase)
61  return mBase->get_vpMs();
62  return Transform3D::Identity();
63 }
65 {
66  if (mBase)
67  return mBase->getViewport();
69 }
71 {
72  if (mBase)
73  return mBase->getViewport_s();
75 }
76 
77 } /* namespace cx */
cx::ViewLinkingViewContainerItem::create
static ViewRepCollectionPtr create(ViewItem *base, vtkRenderWindowPtr renderWindow)
Definition: cxViewLinkingViewContainerItem.cpp:17
cx::DoubleBoundingBox3D
Representation of a floating-point bounding box in 3D. The data are stored as {xmin,...
Definition: cxBoundingBox3D.h:63
vtkRenderWindowPtr
vtkSmartPointer< class vtkRenderWindow > vtkRenderWindowPtr
Definition: vtkForwardDeclarations.h:124
cx
Namespace for all CustusX production code.
Definition: cx_dev_group_definitions.h:13
cx::ViewLinkingViewContainerItem::getViewport
virtual DoubleBoundingBox3D getViewport() const
Definition: cxViewLinkingViewContainerItem.cpp:64
cx::ViewItem
Definition: cxViewContainerItem.h:38
cx::View::resized
void resized(QSize size)
cxViewLinkingViewContainerItem.h
cx::View::focusChange
void focusChange(bool gotFocus, Qt::FocusReason reason)
cx::DoubleBoundingBox3D::zero
static DoubleBoundingBox3D zero()
Definition: cxBoundingBox3D.h:75
cx::View::mouseMove
void mouseMove(int x, int y, Qt::MouseButtons buttons)
cx::ViewLinkingViewContainerItem::~ViewLinkingViewContainerItem
virtual ~ViewLinkingViewContainerItem()
Definition: cxViewLinkingViewContainerItem.cpp:40
cx::ViewRepCollectionPtr
boost::shared_ptr< class ViewRepCollection > ViewRepCollectionPtr
Definition: cxViewRepCollection.h:23
cx::Transform3D
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
Definition: cxLandmarkPatientRegistrationWidget.h:33
cx::View::shown
void shown()
cx::ViewRepCollection
Definition: cxViewRepCollection.h:30
cx::View::customContextMenuRequested
void customContextMenuRequested(const QPoint &)
cx::View::mouseRelease
void mouseRelease(int x, int y, Qt::MouseButtons buttons)
cx::ViewLinkingViewContainerItem::getZoomFactor
virtual double getZoomFactor() const
Definition: cxViewLinkingViewContainerItem.cpp:52
cx::ViewLinkingViewContainerItem::setZoomFactor
virtual void setZoomFactor(double factor)
Definition: cxViewLinkingViewContainerItem.cpp:47
cx::View::mousePress
void mousePress(int x, int y, Qt::MouseButtons buttons)
cx::ViewLinkingViewContainerItem::get_vpMs
virtual Transform3D get_vpMs() const
Definition: cxViewLinkingViewContainerItem.cpp:58
cx::View::mouseWheel
void mouseWheel(int x, int y, int delta, int orientation, Qt::MouseButtons buttons)
cx::ViewLinkingViewContainerItem::size
virtual QSize size() const
Definition: cxViewLinkingViewContainerItem.cpp:41
cx::ViewLinkingViewContainerItem::ViewLinkingViewContainerItem
ViewLinkingViewContainerItem(ViewItem *base, vtkRenderWindowPtr renderWindow)
Definition: cxViewLinkingViewContainerItem.cpp:24
cx::ViewLinkingViewContainerItem::getViewport_s
virtual DoubleBoundingBox3D getViewport_s() const
Definition: cxViewLinkingViewContainerItem.cpp:70