comparison Framework/Scene2DViewport/ViewportController.h @ 1232:a28861abf888 broker

viewports for WebAssembly
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 09 Dec 2019 17:46:33 +0100
parents 6f3f1ef347a3
children 964c89e15e7e
comparison
equal deleted inserted replaced
1229:b9f2a111c5b9 1232:a28861abf888
109 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, \ 109 ORTHANC_STONE_DEFINE_ORIGIN_MESSAGE(__FILE__, __LINE__, \
110 SceneTransformChanged, ViewportController); 110 SceneTransformChanged, ViewportController);
111 111
112 ViewportController(); 112 ViewportController();
113 113
114 ViewportController(const Scene2D& scene /* will be cloned */);
115
114 ViewportController(boost::weak_ptr<UndoStack> undoStackW); 116 ViewportController(boost::weak_ptr<UndoStack> undoStackW);
115 117
116 ~ViewportController(); 118 ~ViewportController();
117 119
118 /** 120 /**
208 // Must be expressed in canvas coordinates 210 // Must be expressed in canvas coordinates
209 void HandleMouseRelease(const PointerEvent& event); 211 void HandleMouseRelease(const PointerEvent& event);
210 212
211 const Scene2D& GetScene() const 213 const Scene2D& GetScene() const
212 { 214 {
213 return scene_; 215 return *scene_;
214 } 216 }
215 217
216 Scene2D& GetScene() 218 Scene2D& GetScene()
217 { 219 {
218 return scene_; 220 return *scene_;
219 } 221 }
220 222
221 bool HasActiveTracker() const 223 bool HasActiveTracker() const
222 { 224 {
223 return activeTracker_.get() != NULL; 225 return activeTracker_.get() != NULL;
228 230
229 boost::weak_ptr<UndoStack> undoStackW_; // Global stack, possibly shared by all viewports 231 boost::weak_ptr<UndoStack> undoStackW_; // Global stack, possibly shared by all viewports
230 std::vector<boost::shared_ptr<MeasureTool> > measureTools_; 232 std::vector<boost::shared_ptr<MeasureTool> > measureTools_;
231 boost::shared_ptr<IFlexiblePointerTracker> activeTracker_; // TODO - Couldn't this be a "std::auto_ptr"? 233 boost::shared_ptr<IFlexiblePointerTracker> activeTracker_; // TODO - Couldn't this be a "std::auto_ptr"?
232 234
233 Scene2D scene_; 235 std::auto_ptr<Scene2D> scene_;
234 236
235 // this is cached 237 // this is cached
236 double canvasToSceneFactor_; 238 double canvasToSceneFactor_;
237 }; 239 };
238 } 240 }