1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
/*=========================================================================
Program: ParaView
Module: vtkSMChartUseIndexForAxisDomain.h
Copyright (c) Kitware, Inc.
All rights reserved.
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
/**
* @class vtkSMChartUseIndexForAxisDomain
* @brief extends vtkSMBooleanDomain to pick a
* good default for properties such as "UseIndexForXAxis" on chart
* representations.
*
* vtkSMChartUseIndexForAxisDomain extends vtkSMBooleanDomain to add logic to
* pick an appropriate default e.g. UseIndexForXAxis for bar and line charts
* needs to be set to 0 by default, if the XArrayName is one of the known arrays
* such as "bin_extents", "arc_length", and set to 1 otherwise. This class
* encapsulates that logic.
*
* Supported Required-Property functions:
* \li ArraySelection : (required) refers to the property that dictates the
* array selection.
*/
#ifndef vtkSMChartUseIndexForAxisDomain_h
#define vtkSMChartUseIndexForAxisDomain_h
#include "vtkPVServerManagerRenderingModule.h" // needed for exports
#include "vtkSMBooleanDomain.h"
class VTKPVSERVERMANAGERRENDERING_EXPORT vtkSMChartUseIndexForAxisDomain : public vtkSMBooleanDomain
{
public:
static vtkSMChartUseIndexForAxisDomain* New();
vtkTypeMacro(vtkSMChartUseIndexForAxisDomain, vtkSMBooleanDomain);
void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
/**
* Set the default values for the property.
* Overridden to handle the default value for "UseIndexForXAxis" property, if
* any. UseIndexForXAxis needs to be OFF by default, if the required property
* e.g. XArrayName property has one of the known types of arrays, otherwise it
* must be ON.
*/
virtual int SetDefaultValues(vtkSMProperty*, bool use_unchecked_values) VTK_OVERRIDE;
/**
* Overridden to fire DomainModified when the required property changes. This ensures
* that SetDefaultValues() is called during proxy post-initialization after the required
* property has been reset to default.
*/
virtual void Update(vtkSMProperty* requestingProperty) VTK_OVERRIDE;
protected:
vtkSMChartUseIndexForAxisDomain();
~vtkSMChartUseIndexForAxisDomain();
private:
vtkSMChartUseIndexForAxisDomain(const vtkSMChartUseIndexForAxisDomain&) VTK_DELETE_FUNCTION;
void operator=(const vtkSMChartUseIndexForAxisDomain&) VTK_DELETE_FUNCTION;
};
#endif
|