diff Framework/Radiography/RadiographyScene.h @ 1204:b519c1c878f1 broker

integration mainline->broker
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 29 Nov 2019 21:24:29 +0100
parents 54cbffabdc45 9added0d371e
children 37bc7f115f81
line wrap: on
line diff
--- a/Framework/Radiography/RadiographyScene.h	Fri Nov 29 21:22:21 2019 +0100
+++ b/Framework/Radiography/RadiographyScene.h	Fri Nov 29 21:24:29 2019 +0100
@@ -180,6 +180,7 @@
     void OnDicomWebReceived(const Deprecated::IWebService::HttpRequestSuccessMessage& message);
 
     virtual void OnLayerEdited(const RadiographyLayer::LayerEditedMessage& message);
+
   public:
     RadiographyScene();
     
@@ -202,7 +203,12 @@
                                unsigned int fontSize,
                                uint8_t foreground,
                                RadiographyLayer::Geometry* geometry);
-    
+
+    RadiographyLayer& UpdateText(size_t layerIndex,
+                                 const std::string& utf8,
+                                 unsigned int fontSize,
+                                 uint8_t foreground);
+
     RadiographyLayer& LoadTestBlock(unsigned int width,
                                     unsigned int height,
                                     RadiographyLayer::Geometry* geometry);
@@ -232,10 +238,12 @@
 
     void RemoveLayer(size_t layerIndex);
 
+    RadiographyLayer& GetLayer(size_t layerIndex);
+
     const RadiographyLayer& GetLayer(size_t layerIndex) const;
 
     template <typename TypeLayer>
-    TypeLayer* GetLayer(size_t index = 0)
+    TypeLayer* GetTypedLayer(size_t indexOfType = 0)
     {
       std::vector<size_t> layerIndexes;
       GetLayersIndexes(layerIndexes);
@@ -247,31 +255,7 @@
         TypeLayer* typedLayer = dynamic_cast<TypeLayer*>(layers_[layerIndexes[i]]);
         if (typedLayer != NULL)
         {
-          if (count == index)
-          {
-            return typedLayer;
-          }
-          count++;
-        }
-      }
-
-      return NULL;
-    }
-
-    template <typename TypeLayer>
-    const TypeLayer* GetLayer(size_t index = 0) const
-    {
-      std::vector<size_t> layerIndexes;
-      GetLayersIndexes(layerIndexes);
-
-      size_t count = 0;
-
-      for (size_t i = 0; i < layerIndexes.size(); ++i)
-      {
-        const TypeLayer* typedLayer = dynamic_cast<const TypeLayer*>(layers_.at(layerIndexes[i]));
-        if (typedLayer != NULL)
-        {
-          if (count == index)
+          if (count == indexOfType)
           {
             return typedLayer;
           }
@@ -352,6 +336,7 @@
                                   ImageInterpolation interpolation,
                                   bool invert,
                                   int64_t maxValue /* for inversion */,
-                                  bool applyWindowing);  // i.e.: when
+                                  bool applyWindowing);
+
   };
 }