00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00044 #ifndef VTKSNL_PVTESSELLATOR_ENTRY_H
00045 #define VTKSNL_PVTESSELLATOR_ENTRY_H
00046
00047 #include "vtkPVWidget.h"
00048
00049 class vtkPVInputMenu;
00050 class vtkPVDataSetAttributesInformation;
00051
00052 class vtkTessellatorEntryData;
00053
00054 class VTK_EXPORT vtkPVTempTessellatorEntry : public vtkPVWidget
00055 {
00056 public:
00057 static vtkPVTempTessellatorEntry* New();
00058 vtkTypeRevisionMacro(vtkPVTempTessellatorEntry,vtkPVWidget);
00059 void PrintSelf(ostream& os, vtkIndent indent);
00060
00062 virtual void Create( vtkKWApplication* app );
00063
00065
00066 virtual void SetLabel( const char* );
00067 const char* GetLabel() const;
00068 char* GetLabel();
00070
00072
00073 void SetFieldCriterion( int fieldNumber, float criterion );
00074 void ResetFieldCriteria();
00076
00078 virtual void ChangeCriterionCallback();
00079
00081 virtual void ToggleCriterionCallback();
00082
00086 virtual void PointDataSelectedCallback();
00087
00088
00090
00091 virtual void Accept();
00092
00094
00096 virtual void Trace( ofstream *file );
00097
00103 virtual void Update();
00104
00110 virtual void ResetInternal();
00111
00113 virtual void Initialize();
00114
00116
00118 vtkSetStringMacro(ResetCriteriaCommand);
00119 vtkSetStringMacro(SetFieldCriterionCommand);
00121
00125 virtual void UpdateEnableState();
00126
00128
00129 virtual void SetInputMenu( vtkPVInputMenu* );
00130 vtkGetObjectMacro(InputMenu,vtkPVInputMenu);
00131 const vtkPVInputMenu* GetInputMenu() const { return this->InputMenu; }
00133
00134
00136
00139 vtkPVDataSetAttributesInformation* GetPointDataInformation();
00140
00142
00143 protected:
00144 vtkPVTempTessellatorEntry();
00145 ~vtkPVTempTessellatorEntry();
00146
00147 char* ResetCriteriaCommand;
00148 char* SetFieldCriterionCommand;
00149
00150 vtkPVInputMenu* InputMenu;
00151
00152 vtkTessellatorEntryData* Data;
00153
00154 virtual void UpdateProperty();
00155
00156 vtkPVTempTessellatorEntry( const vtkPVTempTessellatorEntry& );
00157 void operator = ( const vtkPVTempTessellatorEntry& );
00158
00159
00160 virtual void CopyProperties( vtkPVWidget* clone, vtkPVSource* pvSource,
00161 vtkArrayMap<vtkPVWidget*, vtkPVWidget*>* map );
00162
00163
00165 int ReadXMLAttributes( vtkPVXMLElement* element, vtkPVXMLPackageParser* parser );
00166
00168 virtual void SaveInBatchScriptForPart( ofstream *file, vtkClientServerID );
00169 };
00170
00171 #endif // VTKSNL_PVTESSELLATOR_ENTRY_H