00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00027 #ifndef __vtkKWVolumePropertyPresetSelector_h
00028 #define __vtkKWVolumePropertyPresetSelector_h
00029
00030 #include "vtkKWPresetSelector.h"
00031
00032 class vtkVolumeProperty;
00033 class vtkKWVolumePropertyPresetSelectorInternals;
00034
00035 class KWWidgets_EXPORT vtkKWVolumePropertyPresetSelector : public vtkKWPresetSelector
00036 {
00037
00038 public:
00039 static vtkKWVolumePropertyPresetSelector* New();
00040 vtkTypeRevisionMacro(vtkKWVolumePropertyPresetSelector, vtkKWPresetSelector);
00041 void PrintSelf(ostream& os, vtkIndent indent);
00042
00044
00048 virtual int SetPresetVolumeProperty(int id, vtkVolumeProperty *prop);
00049 virtual vtkVolumeProperty* GetPresetVolumeProperty(int id);
00051
00053
00058 virtual int SetPresetType(int id, const char *type);
00059 virtual const char* GetPresetType(int id);
00061
00063
00072 virtual int GetPresetIndependentComponents(int id);
00073 virtual int SetPresetIndependentComponents(int id, int flag);
00075
00077
00083 virtual int GetPresetBlendMode(int id);
00084 virtual int SetPresetBlendMode(int id, int flag);
00085 virtual int HasPresetBlendMode(int id);
00087
00089
00092 virtual int GetPresetHistogramFlag(int id);
00093 virtual int SetPresetHistogramFlag(int id, int flag);
00095
00100 virtual int IsPresetRangeInsideRange(int id, double range[2]);
00101
00103
00105 virtual void SetTypeColumnVisibility(int);
00106 virtual int GetTypeColumnVisibility();
00107 vtkBooleanMacro(TypeColumnVisibility, int);
00109
00112 virtual void AddDefaultNormalizedPresets(const char *type);
00113
00115
00116 virtual void SetPresetFilterRangeConstraint(double range[2]);
00117 virtual double* GetPresetFilterRangeConstraint();
00118 virtual void DeletePresetFilterRangeConstraint();
00120
00125 virtual int IsPresetFiltered(int id);
00126
00128
00138 virtual void SetPresetTypeSlotName(const char *);
00139 virtual const char* GetPresetTypeSlotName();
00140 virtual void SetPresetIndependentComponentsSlotName(const char *);
00141 virtual const char* GetPresetIndependentComponentsSlotName();
00142 virtual void SetPresetHistogramFlagSlotName(const char *);
00143 virtual const char* GetPresetHistogramFlagSlotName();
00144 virtual void SetPresetBlendModeSlotName(const char *);
00145 virtual const char* GetPresetBlendModeSlotName();
00147
00149
00150 static const char *TypeColumnName;
00151
00153
00154
00155
00156 protected:
00157 vtkKWVolumePropertyPresetSelector();
00158 ~vtkKWVolumePropertyPresetSelector();
00159
00163 virtual void CreateColumns();
00164
00172 virtual int UpdatePresetRow(int id);
00173
00175 virtual int GetTypeColumnIndex();
00176
00178 virtual void UpdateToolbarPresetButtons(vtkKWToolbar*);
00179
00183 virtual void PopulatePresetContextMenu(vtkKWMenu *menu, int id);
00184
00185
00186
00187 vtkKWVolumePropertyPresetSelectorInternals *Internals;
00188
00189
00190
00191
00192 private:
00193
00194 vtkKWVolumePropertyPresetSelector(const vtkKWVolumePropertyPresetSelector&);
00195 void operator=(const vtkKWVolumePropertyPresetSelector&);
00196 };
00197
00198 #endif
00199