VTK  9.2.6
vtkBalloonWidget.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkBalloonWidget.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
73
74#ifndef vtkBalloonWidget_h
75#define vtkBalloonWidget_h
76
77#include "vtkHoverWidget.h"
78#include "vtkInteractionWidgetsModule.h" // For export macro
79
81class vtkProp;
83class vtkStdString;
84class vtkPropMap;
85class vtkImageData;
86
87class VTKINTERACTIONWIDGETS_EXPORT vtkBalloonWidget : public vtkHoverWidget
88{
89public:
94
96
100 void PrintSelf(ostream& os, vtkIndent indent) override;
102
107 void SetEnabled(int) override;
108
118
123 {
124 return reinterpret_cast<vtkBalloonRepresentation*>(this->WidgetRep);
125 }
126
131
133
138 void AddBalloon(vtkProp* prop, const char* str, vtkImageData* img);
139 void AddBalloon(vtkProp* prop, const char* str) // for wrapping
140 {
141 this->AddBalloon(prop, str, nullptr);
142 }
145
147
153 const char* GetBalloonString(vtkProp* prop);
156
158
162 void UpdateBalloonString(vtkProp* prop, const char* str);
165
170 virtual vtkProp* GetCurrentProp() { return this->CurrentProp; }
171
173
180 vtkGetObjectMacro(Picker, vtkAbstractPropPicker);
182
183 /*
184 * Register internal Pickers within PickingManager
185 */
186 void RegisterPickers() override;
187
188protected:
191
192 // This class implements the method called from its superclass.
194 int SubclassHoverAction() override;
195
196 // Classes for managing balloons
197 vtkPropMap* PropMap; // PIMPL'd map of (vtkProp,vtkStdString)
198
199 // Support for picking
201
202 // The vtkProp that is being hovered over (which may be nullptr)
204
205private:
206 vtkBalloonWidget(const vtkBalloonWidget&) = delete;
207 void operator=(const vtkBalloonWidget&) = delete;
208};
209
210#endif
abstract API for pickers that can pick an instance of vtkProp
void SetWidgetRepresentation(vtkWidgetRepresentation *r)
vtkWidgetRepresentation * WidgetRep
represent the vtkBalloonWidget
void CreateDefaultRepresentation() override
Create the default widget representation if one is not set.
void SetEnabled(int) override
The method for activating and deactivating this widget.
const char * GetBalloonString(vtkProp *prop)
Methods to retrieve the information associated with each vtkProp (i.e., the information that makes up...
~vtkBalloonWidget() override
void RemoveBalloon(vtkProp *prop)
Add and remove text and/or an image to be associated with a vtkProp.
void RegisterPickers() override
Register internal Pickers in the Picking Manager.
void SetPicker(vtkAbstractPropPicker *)
Set/Get the object used to perform pick operations.
void UpdateBalloonImage(vtkProp *prop, vtkImageData *image)
Update the balloon string or image.
void AddBalloon(vtkProp *prop, const char *str)
Add and remove text and/or an image to be associated with a vtkProp.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for a VTK class.
virtual vtkProp * GetCurrentProp()
Return the current vtkProp that is being hovered over.
vtkBalloonRepresentation * GetBalloonRepresentation()
Return the representation as a vtkBalloonRepresentation.
void UpdateBalloonString(vtkProp *prop, const char *str)
Update the balloon string or image.
int SubclassHoverAction() override
void SetRepresentation(vtkBalloonRepresentation *r)
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.
vtkImageData * GetBalloonImage(vtkProp *prop)
Methods to retrieve the information associated with each vtkProp (i.e., the information that makes up...
int SubclassEndHoverAction() override
static vtkBalloonWidget * New()
Instantiate this class.
void AddBalloon(vtkProp *prop, vtkStdString *str, vtkImageData *img)
Add and remove text and/or an image to be associated with a vtkProp.
vtkAbstractPropPicker * Picker
void AddBalloon(vtkProp *prop, const char *str, vtkImageData *img)
Add and remove text and/or an image to be associated with a vtkProp.
topologically and geometrically regular array of data
a simple class to control print indentation
Definition vtkIndent.h:40
abstract superclass for all actors, volumes and annotations
Definition vtkProp.h:57
Wrapper around std::string to keep symbols short.
abstract class defines interface between the widget and widget representation classes