16#ifndef __vtkMRMLColorLegendDisplayNode_h
17#define __vtkMRMLColorLegendDisplayNode_h
21#include "vtkSlicerColorsModuleMRMLExport.h"
47 void PrintSelf(ostream& os, vtkIndent indent)
override;
58 void WriteXML(ostream& of,
int indent)
override;
74 vtkGetVector2Macro(Position,
double);
75 vtkSetVector2Macro(Position,
double);
85 vtkGetVector2Macro(Size,
double);
86 vtkSetVector2Macro(Size,
double);
91 vtkGetMacro(TitleText, std::string);
92 vtkSetMacro(TitleText, std::string);
104 vtkGetMacro(LabelFormat, std::string);
105 vtkSetMacro(LabelFormat, std::string);
120 vtkGetMacro(MaxNumberOfColors,
int);
121 vtkSetMacro(MaxNumberOfColors,
int);
126 vtkGetMacro(NumberOfLabels,
int);
127 vtkSetMacro(NumberOfLabels,
int);
132 vtkGetMacro(UseColorNamesForLabels,
bool);
133 vtkSetMacro(UseColorNamesForLabels,
bool);
140 vtkGetObjectMacro(TitleTextProperty, vtkTextProperty);
147 vtkGetObjectMacro(LabelTextProperty, vtkTextProperty);
184 double Position[2]{ 0.95, 0.5 };
185 double Size[2]{ 0.15, 0.5 };
186 std::string TitleText;
187 vtkTextProperty* TitleTextProperty{
nullptr };
188 vtkTextProperty* LabelTextProperty{
nullptr };
192 std::string LabelFormat;
193 int MaxNumberOfColors{ 256 };
194 int NumberOfLabels{ 5 };
195 bool UseColorNamesForLabels{
false };
196 bool CenterLabels{
false };
void PrintSelf(ostream &os, vtkIndent indent) override
static vtkMRMLColorLegendDisplayNode * New()
vtkMRMLColorLegendDisplayNode()
void ProcessMRMLEvents(vtkObject *caller, unsigned long eventID, void *callData) override
Handles events registered in the observer manager.
~vtkMRMLColorLegendDisplayNode() override
static const char * GetOrientationAsString(int id)
void SetOrientation(int id)
std::string GetLabelTextPropertyAsString()
vtkMRMLColorLegendDisplayNode(const vtkMRMLColorLegendDisplayNode &)
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
OrientationType
color legend orientation preset on a view node
vtkMRMLDisplayNode * GetPrimaryDisplayNode()
void operator=(const vtkMRMLColorLegendDisplayNode &)
void SetLabelTextPropertyFromString(std::string textPropertyString)
std::string GetTitleTextPropertyAsString()
void SetAndObservePrimaryDisplayNode(vtkMRMLDisplayNode *node)
static int GetOrientationFromString(const char *name)
vtkMRMLNode * CreateNodeInstance() override
Create instance of the default node. Like New only virtual.
void ReadXMLAttributes(const char **atts) override
Read node attributes from XML file.
virtual std::string GetDefaultNumericLabelFormat()
virtual std::string GetDefaultTextLabelFormat()
vtkMRMLCopyContentMacro(vtkMRMLColorLegendDisplayNode)
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
void SetTitleTextPropertyFromString(std::string textPropertyString)
Abstract MRML node to represent color information.