pqDataAssemblyPropertyWidget.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Sandia Corporation
3 // SPDX-License-Identifier: BSD-3-Clause
4 #ifndef pqDataAssemblyPropertyWidget_h
5 #define pqDataAssemblyPropertyWidget_h
6 
8 #include "pqPropertyWidget.h"
9 
10 #include <QScopedPointer> // for QScopedPointer
11 
159 class vtkObject;
161 {
162  Q_OBJECT
164 
168  Q_PROPERTY(QList<QVariant> selectors READ selectorsAsVariantList WRITE setSelectors NOTIFY
169  selectorsChanged);
170 
174  Q_PROPERTY(QList<QVariant> selectorColors READ selectorColorsAsVariantList WRITE setSelectorColors
175  NOTIFY colorsChanged);
176 
180  Q_PROPERTY(QList<QVariant> selectorOpacities READ selectorOpacitiesAsVariantList WRITE
181  setSelectorOpacities NOTIFY opacitiesChanged);
182 
184 
189  Q_PROPERTY(QList<QVariant> compositeIndices READ compositeIndicesAsVariantList WRITE
190  setCompositeIndices NOTIFY selectorsChanged);
191  Q_PROPERTY(QList<QVariant> compositeIndexOpacities READ compositeIndexOpacitiesAsVariantList WRITE
192  setCompositeIndexOpacities NOTIFY opacitiesChanged);
193  Q_PROPERTY(QList<QVariant> compositeIndexColors READ compositeIndexColorsAsVariantList WRITE
194  setCompositeIndexColors NOTIFY colorsChanged);
196 public:
198  vtkSMProxy* smproxy, vtkSMPropertyGroup* smgroup, QWidget* parent = nullptr);
200  vtkSMProxy* smproxy, vtkSMProperty* smproperty, QWidget* parent = nullptr);
201  ~pqDataAssemblyPropertyWidget() override;
202 
204 
207  void setSelectors(const QStringList& paths);
208  const QStringList& selectors() const;
209  void setSelectors(const QList<QVariant>& paths);
210  QList<QVariant> selectorsAsVariantList() const;
212 
214 
217  void setCompositeIndices(const QList<QVariant>& values);
218  QList<QVariant> compositeIndicesAsVariantList() const;
220 
222 
227  void setCompositeIndexColors(const QList<QVariant>& values);
228  QList<QVariant> compositeIndexColorsAsVariantList() const;
229 
230  void setSelectorColors(const QList<QVariant>& values);
231  QList<QVariant> selectorColorsAsVariantList() const;
233 
235 
240  void setCompositeIndexOpacities(const QList<QVariant>& values);
241  QList<QVariant> compositeIndexOpacitiesAsVariantList() const;
242 
243  void setSelectorOpacities(const QList<QVariant>& values);
244  QList<QVariant> selectorOpacitiesAsVariantList() const;
246 
247  void updateWidget(bool showing_advanced_properties) override;
248 
249 Q_SIGNALS:
250  void selectorsChanged();
251  void colorsChanged();
252  void opacitiesChanged();
253 
254 private Q_SLOTS:
255  void updateDataAssembly(vtkObject* sender);
256  void assemblyTreeModified(int role);
257  void selectorsTableModified();
258  void colorsTableModified();
259  void opacitiesTableModified();
260 
261 private: // NOLINT(readability-redundant-access-specifiers)
262  Q_DISABLE_COPY(pqDataAssemblyPropertyWidget);
263  class pqInternals;
264  QScopedPointer<pqInternals> Internals;
265 };
266 
267 #endif
pqPropertyWidget represents a widget created for each property of a proxy on the pqPropertiesPanel (f...
virtual void updateWidget(bool showing_advanced_properties)
#define PQAPPLICATIONCOMPONENTS_EXPORT
superclass for all SM properties
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140
pqPropertyWidget for properties with vtkDataAssembly