14 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
15 #include <QActionGroup>
20 #include <QtWidgets/QActionGroup>
21 #include <QtCore/QMap>
22 #include <QtCore/QObject>
23 #include <QtCore/QPointer>
37 class cvSelectionHistory;
38 class cvSelectionBookmarks;
66 void initialize(QWidget* parent);
93 template <
typename UiType>
99 static bool isPCLBackendAvailable();
109 QAction* selectSurfaceCells =
nullptr;
110 QAction* selectSurfacePoints =
nullptr;
113 QAction* selectFrustumCells =
nullptr;
114 QAction* selectFrustumPoints =
nullptr;
117 QAction* selectPolygonCells =
nullptr;
118 QAction* selectPolygonPoints =
nullptr;
121 QAction* selectBlocks =
nullptr;
122 QAction* selectFrustumBlocks =
nullptr;
125 QAction* interactiveSelectCells =
nullptr;
126 QAction* interactiveSelectPoints =
nullptr;
129 QAction* hoverCells =
nullptr;
130 QAction* hoverPoints =
nullptr;
133 QAction* addSelection =
nullptr;
134 QAction* subtractSelection =
nullptr;
135 QAction* toggleSelection =
nullptr;
138 QAction* growSelection =
nullptr;
139 QAction* shrinkSelection =
nullptr;
140 QAction* clearSelection =
nullptr;
143 QAction* zoomToBox =
nullptr;
155 void connectHighlighter();
166 m_propertiesDelegate = delegate;
188 void registerModifierActions(QAction* addAction,
189 QAction* subtractAction,
190 QAction* toggleAction);
195 void registerManipulationActions(QAction* growAction,
196 QAction* shrinkAction,
197 QAction* clearAction);
208 bool isAnyToolActive()
const;
219 bool handleEscapeKey();
237 void setSelectionPropertiesActive(
bool active);
245 void invalidateCache();
292 void onModifierChanged(QAction* action);
304 QPointer<QWidget> m_parentWidget;
306 bool m_selectionToolsActive;
307 QPointer<QObject> m_propertiesDelegate;
310 QMap<SelectionMode, QPointer<cvRenderViewSelectionReaction>> m_reactions;
316 QPointer<QActionGroup> m_modifierGroup;
317 QPointer<QAction> m_addAction;
318 QPointer<QAction> m_subtractAction;
319 QPointer<QAction> m_toggleAction;
322 QPointer<QAction> m_growAction;
323 QPointer<QAction> m_shrinkAction;
324 QPointer<QAction> m_clearAction;
cvRenderViewSelectionReaction handles all selection modes in a single class
Encapsulates selection data without exposing VTK types.
Helper class for highlighting selected elements in the visualizer.
Central manager for all selection operations in the view.
Generic visualizer 3D interface.
SelectionMode
Selection modes matching ParaView's SelectionMode enum.
SelectionModifier
Selection modifiers for combining selections.
#define QPCL_ENGINE_LIB_API