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=========================================================================*/
70
71#ifndef vtkBalloonWidget_h
72#define vtkBalloonWidget_h
73
74#include "vtkHoverWidget.h"
75#include "vtkInteractionWidgetsModule.h" // For export macro
76
78class vtkProp;
80class vtkStdString;
81class vtkPropMap;
82class vtkImageData;
83
84class VTKINTERACTIONWIDGETS_EXPORT vtkBalloonWidget : public vtkHoverWidget
85{
86public:
91
93
97 void PrintSelf(ostream& os, vtkIndent indent) override;
99
104 void SetEnabled(int) override;
105
115
120 {
121 return reinterpret_cast<vtkBalloonRepresentation*>(this->WidgetRep);
122 }
123
128
130
135 void AddBalloon(vtkProp* prop, const char* str, vtkImageData* img);
136 void AddBalloon(vtkProp* prop, const char* str) // for wrapping
137 {
138 this->AddBalloon(prop, str, nullptr);
139 }
142
144
150 const char* GetBalloonString(vtkProp* prop);
153
155
159 void UpdateBalloonString(vtkProp* prop, const char* str);
162
167 virtual vtkProp* GetCurrentProp() { return this->CurrentProp; }
168
170
177 vtkGetObjectMacro(Picker, vtkAbstractPropPicker);
179
180 /*
181 * Register internal Pickers within PickingManager
182 */
183 void RegisterPickers() override;
184
185protected:
188
189 // This class implements the method called from its superclass.
191 int SubclassHoverAction() override;
192
193 // Classes for managing balloons
194 vtkPropMap* PropMap; // PIMPL'd map of (vtkProp,vtkStdString)
195
196 // Support for picking
198
199 // The vtkProp that is being hovered over (which may be nullptr)
201
202private:
203 vtkBalloonWidget(const vtkBalloonWidget&) = delete;
204 void operator=(const vtkBalloonWidget&) = delete;
205};
206
207#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:34
abstract superclass for all actors, volumes and annotations
Definition vtkProp.h:51
Wrapper around std::string to keep symbols short.
abstract class defines interface between the widget and widget representation classes