33 #ifndef CXVIEWIMPLSERVICE_H_ 34 #define CXVIEWIMPLSERVICE_H_ 37 #include "org_custusx_core_view_Export.h" 38 class ctkPluginContext;
43 class ViewCollectionWidget;
112 virtual ViewPtr get3DView(
int group = 0,
int index = 0);
114 virtual int getActiveGroupId()
const;
116 virtual void setRegistrationMode(REGISTRATION_STATUS mode);
118 virtual void autoShowData(
DataPtr data);
119 virtual void enableRender(
bool val);
120 virtual bool renderingIsEnabled()
const;
122 virtual QWidget* createLayoutWidget(QWidget* parent,
int index);
123 virtual QWidget* getLayoutWidget(
int index);
124 virtual QString getActiveLayout(
int widgetIndex = 0)
const;
125 virtual void setActiveLayout(
const QString& uid,
int widgetIndex);
132 virtual QActionGroup* getInteractorStyleActionGroup();
133 virtual void centerToImageCenterInActiveViewGroup();
134 virtual void addDefaultLayout(
LayoutData layoutData);
135 virtual void enableContextMenuForViews(
bool enable=
true);
137 virtual bool isNull();
139 virtual void setCameraStyle(CAMERA_STYLE_TYPE style,
int groupIdx);
140 virtual void zoomCamera3D(
int viewGroup3DNumber,
int zoomFactor);
143 virtual void aboutToStop();
146 void layoutWidgetDestroyed(QObject *
object);
149 void onSessionChanged();
150 void onSessionCleared();
151 void onSessionLoad(QDomElement& node);
152 void onSessionSave(QDomElement& node);
155 void updateCameraStyleActions();
156 void onLayoutRepositoryChanged(QString uid);
157 void setActiveView(QString viewUid);
158 void settingsChangedSlot(QString key);
161 void rebuildLayouts();
162 QList<unsigned> getViewGroupsToAutoShowIn();
171 void loadGlobalSettings();
172 void saveGlobalSettings();
173 void initializeGlobal2DZoom();
174 void initializeActiveView();
175 std::vector<ViewGroupPtr> getViewGroups();
176 QString getActiveView()
const;
179 void addXml(QDomNode& parentNode);
180 void parseXml(QDomNode viewmanagerNode);
182 void deactivateCurrentLayout();
183 unsigned viewGroupCount()
const;
186 void setSlicePlanesProxyInViewsUpTo2DViewgroup();
187 void setRenderingInterval(
int interval);
189 int findGroupContaining3DViewGivenGuess(
int preferredGroup);
190 void autoShowInViewGroups(
DataPtr data);
191 void autoResetCameraToSuperiorView();
192 void autoCenterToImageCenter();
193 void centerToImageCenterInViewGroup(
unsigned groupNr);
195 ctkPluginContext *mContext;
196 SessionStorageServicePtr mSession;
201 QStringList mActiveLayout;
202 SyncedValuePtr mActiveView;
203 std::vector<ViewGroupPtr> mViewGroups;
206 bool mGlobalObliqueOrientation;
207 SyncedValuePtr mGlobal2DZoomVal;
212 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.