Mercurial > hg > orthanc-stone
diff Samples/Sdl/TrackerSampleApp.h @ 660:cb3b76d16234
Added info display map to the app + global logging function + fixed bisecting
algo to display angle measure text label
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Tue, 14 May 2019 19:38:51 +0200 |
parents | 002d9562c8f5 |
children | 8b6adfb62a2f |
line wrap: on
line diff
--- a/Samples/Sdl/TrackerSampleApp.h Tue May 14 19:38:15 2019 +0200 +++ b/Samples/Sdl/TrackerSampleApp.h Tue May 14 19:38:51 2019 +0200 @@ -28,6 +28,7 @@ #include <boost/make_shared.hpp> #include <boost/shared_ptr.hpp> +#include <boost/enable_shared_from_this.hpp> namespace OrthancStone { @@ -54,29 +55,14 @@ class Scene2D; class TrackerSampleApp : public IObserver + , public boost::enable_shared_from_this<TrackerSampleApp> { public: // 12 because. - TrackerSampleApp(MessageBroker& broker) - : IObserver(broker) - , currentTool_(GuiTool_Rotate) - , scene_(broker) - { - scene_.RegisterObserverCallback( - new Callable<TrackerSampleApp, Scene2D::SceneTransformChanged> - (*this, &TrackerSampleApp::OnSceneTransformChanged)); - - TEXTURE_2x2_1_ZINDEX = 1; - TEXTURE_1x1_ZINDEX = 2; - TEXTURE_2x2_2_ZINDEX = 3; - LINESET_1_ZINDEX = 4; - LINESET_2_ZINDEX = 5; - FLOATING_INFOTEXT_LAYER_ZINDEX = 6; - FIXED_INFOTEXT_LAYER_ZINDEX = 7; - } + TrackerSampleApp(MessageBroker& broker); void PrepareScene(); void Run(); - + void SetInfoDisplayMessage(std::string key, std::string value); void DisableTracker(); Scene2D& GetScene(); @@ -124,6 +110,7 @@ */ Scene2D scene_; + std::map<std::string, std::string> infoTextMap_; FlexiblePointerTrackerPtr activeTracker_; std::vector<TrackerCommandPtr> undoStack_;