12 #ifndef CXVIEWIMPLSERVICE_H_ 13 #define CXVIEWIMPLSERVICE_H_ 16 #include "org_custusx_core_view_Export.h" 17 class ctkPluginContext;
22 class ViewCollectionWidget;
91 virtual ViewPtr get3DView(
int group = 0,
int index = 0);
93 virtual int getActiveGroupId()
const;
95 virtual void setRegistrationMode(REGISTRATION_STATUS mode);
97 virtual void autoShowData(
DataPtr data);
98 virtual void enableRender(
bool val);
99 virtual bool renderingIsEnabled()
const;
101 virtual QWidget* createLayoutWidget(QWidget* parent,
int index);
102 virtual QWidget* getLayoutWidget(
int index);
103 virtual QString getActiveLayout(
int widgetIndex = 0)
const;
104 virtual void setActiveLayout(
const QString& uid,
int widgetIndex);
111 virtual QActionGroup* getInteractorStyleActionGroup();
112 virtual void centerToImageCenterInActiveViewGroup();
113 virtual void addDefaultLayout(
LayoutData layoutData);
114 virtual void enableContextMenuForViews(
bool enable=
true);
116 virtual bool isNull();
118 virtual void setCameraStyle(CAMERA_STYLE_TYPE style,
int groupIdx);
119 virtual void zoomCamera3D(
int viewGroup3DNumber,
int zoomFactor);
122 virtual void aboutToStop();
125 void layoutWidgetDestroyed(QObject *
object);
128 void onSessionChanged();
129 void onSessionCleared();
130 void onSessionLoad(QDomElement& node);
131 void onSessionSave(QDomElement& node);
134 void updateCameraStyleActions();
135 void onLayoutRepositoryChanged(QString uid);
136 void setActiveView(QString viewUid);
137 void settingsChangedSlot(QString key);
140 void rebuildLayouts();
141 QList<unsigned> getViewGroupsToAutoShowIn();
150 void loadGlobalSettings();
151 void saveGlobalSettings();
152 void initializeGlobal2DZoom();
153 void initializeActiveView();
154 std::vector<ViewGroupPtr> getViewGroups();
155 QString getActiveView()
const;
158 void addXml(QDomNode& parentNode);
159 void parseXml(QDomNode viewmanagerNode);
161 void deactivateCurrentLayout();
162 unsigned viewGroupCount()
const;
165 void setSlicePlanesProxyInViewsUpTo2DViewgroup();
166 void setRenderingInterval(
int interval);
168 int findGroupContaining3DViewGivenGuess(
int preferredGroup);
169 void autoShowInViewGroups(
DataPtr data);
170 void autoResetCameraToSuperiorView();
171 void autoCenterToImageCenter();
172 void centerToImageCenterInViewGroup(
unsigned groupNr);
174 ctkPluginContext *mContext;
175 SessionStorageServicePtr mSession;
180 QStringList mActiveLayout;
181 SyncedValuePtr mActiveView;
182 std::vector<ViewGroupPtr> mViewGroups;
185 bool mGlobalObliqueOrientation;
186 SyncedValuePtr mGlobal2DZoomVal;
191 CameraStyleInteractorPtr mCameraStyleInteractor;
boost::shared_ptr< class CyclicActionLogger > CyclicActionLoggerPtr
boost::shared_ptr< class LayoutRepository > LayoutRepositoryPtr
RenderLoopPtr mRenderLoop
boost::shared_ptr< class ViewGroupData > ViewGroupDataPtr
RenderWindowFactoryPtr mRenderWindowFactory
boost::shared_ptr< class SlicePlanesProxy > SlicePlanesProxyPtr
boost::shared_ptr< class CameraControl > CameraControlPtr
boost::shared_ptr< class VisServices > VisServicesPtr
boost::shared_ptr< class ViewWrapper > ViewWrapperPtr
boost::shared_ptr< class InteractiveCropper > InteractiveCropperPtr
boost::shared_ptr< class View > ViewPtr
boost::shared_ptr< class Clippers > ClippersPtr
std::vector< QPointer< ViewCollectionWidget > > mLayoutWidgets
boost::shared_ptr< class Data > DataPtr
Creates a pool of views and offers an interface to them, also handles layouts on a centralwidget...
boost::shared_ptr< RenderLoop > RenderLoopPtr
boost::shared_ptr< class SyncedValue > SyncedValuePtr
boost::shared_ptr< class Navigation > NavigationPtr
boost::shared_ptr< class RenderWindowFactory > RenderWindowFactoryPtr
boost::shared_ptr< ViewImplService > ViewImplServicePtr
boost::shared_ptr< class CameraStyleInteractor > CameraStyleInteractorPtr
boost::shared_ptr< class SessionStorageService > SessionStorageServicePtr
Namespace for all CustusX production code.