Salome HOME
PR: synchro V7_main tag mergefrom_V6_main_06Mar13
[modules/smesh.git] / src / OBJECT / SMESH_NodeLabelActor.h
index 0a9ffaa70bc75a495a48f36787bd8fa5a1f9d0b6..601abb0e7c4d9f1253aec8ae628af6ae784637b2 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #define SMESH_NODE_LABEL_ACTOR_H
 
 #include "SMESH_DeviceActor.h"
+#include "SMESH_ActorUtils.h"
 
 class vtkSelectVisiblePoints;
 class vtkLabeledDataMapper;
 class vtkActor2D;
 class vtkMaskPoints;
-class vtkPolyData;
-
+class vtkUnstructuredGrid;
+class vtkTextProperty;
 
 class SMESHOBJECT_EXPORT SMESH_NodeLabelActor : public SMESH_DeviceActor {
 public:
   static SMESH_NodeLabelActor* New();
 
   static void ProcessEvents(vtkObject* theObject,
-                           unsigned long theEvent,
-                           void* theClientData,
-                           void* theCallData);
+                            unsigned long theEvent,
+                            void* theClientData,
+                            void* theCallData);
 
 
   vtkTypeMacro(SMESH_NodeLabelActor, SMESH_DeviceActor);
@@ -55,6 +56,10 @@ public:
 
   virtual void AddToRender(vtkRenderer* theRenderer); 
   virtual void RemoveFromRender(vtkRenderer* theRenderer);
+  
+  virtual void SetFontProperties( SMESH::LabelFont family, int size,
+                                  bool bold, bool italic, bool shadow,
+                                  double r, double g, double b );
 
   void UpdateLabels();
   
@@ -63,11 +68,12 @@ protected:
   ~SMESH_NodeLabelActor();
   
   bool myIsPointsLabeled;
-  vtkPolyData* myPointsNumDataSet;
+  vtkUnstructuredGrid* myPointsNumDataSet;
   vtkActor2D *myPointLabels;
   vtkMaskPoints* myPtsMaskPoints;
   vtkLabeledDataMapper* myPtsLabeledDataMapper;
   vtkSelectVisiblePoints* myPtsSelectVisiblePoints;
+  vtkTextProperty* myPtsTextProp;
 
 protected:
   // Not implemented.