Salome HOME
ENV: Windows porting.
[modules/kernel.git] / src / SALOMEDS / SALOMEDS_AttributeTextColor_i.cxx
1 //  File   : SALOMEDS_AttributeTextColor_i.cxx
2 //  Author : Sergey RUIN
3 //  Module : SALOME
4
5
6 #include "SALOMEDS_AttributeTextColor_i.hxx"
7 #include "SALOMEDS.hxx" 
8 #include <TColStd_HArray1OfReal.hxx>
9
10 using namespace std;
11
12 SALOMEDS::Color SALOMEDS_AttributeTextColor_i::TextColor() 
13 {
14   SALOMEDS::Locker lock;
15   SALOMEDS::Color TextColor;
16   Handle(TColStd_HArray1OfReal) anArray = Handle(SALOMEDSImpl_AttributeTextColor)::DownCast(_impl)->TextColor();
17   if (anArray.IsNull() || anArray->Length()!=3) { 
18     TextColor.R = 0;
19     TextColor.G = 0;
20     TextColor.B = 0;
21   }
22   else {
23     TextColor.R = anArray->Value(1);
24     TextColor.G = anArray->Value(2);
25     TextColor.B = anArray->Value(3);
26   }
27   return TextColor;
28 }
29
30 void SALOMEDS_AttributeTextColor_i::SetTextColor(const SALOMEDS::Color& value) 
31 {
32   SALOMEDS::Locker lock;
33   CheckLocked();
34   Handle(TColStd_HArray1OfReal) anArray = new TColStd_HArray1OfReal(1,3);
35   anArray->SetValue(1,  value.R);
36   anArray->SetValue(2, value.G);
37   anArray->SetValue(3, value.B);
38   Handle(SALOMEDSImpl_AttributeTextColor)::DownCast(_impl)->ChangeArray(anArray);
39 }
40