Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

GUI/Client/vtkPVVectorEntry.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   ParaView
00004   Module:    $RCSfile: vtkPVVectorEntry.h,v $
00005 
00006   Copyright (c) Kitware, Inc.
00007   All rights reserved.
00008   See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00024 #ifndef __vtkPVVectorEntry_h
00025 #define __vtkPVVectorEntry_h
00026 
00027 #include "vtkPVObjectWidget.h"
00028 
00029 class vtkStringList;
00030 class vtkKWEntry;
00031 class vtkKWApplication;
00032 class vtkKWLabel;
00033 class vtkKWWidgetCollection;
00034 class vtkPVVectorEntryInternals;
00035 
00036 //BTX
00037 template<class KeyType,class DataType> class vtkArrayMap;
00038 //ETX
00039 
00040 class VTK_EXPORT vtkPVVectorEntry : public vtkPVObjectWidget
00041 {
00042 public:
00043   static vtkPVVectorEntry* New();
00044   vtkTypeRevisionMacro(vtkPVVectorEntry, vtkPVObjectWidget);
00045   void PrintSelf(ostream& os, vtkIndent indent);
00046 
00048   virtual void Create(vtkKWApplication *pvApp);
00049 
00051 
00053   vtkGetObjectMacro(LabelWidget, vtkKWLabel);
00054   vtkKWEntry* GetEntry(int idx);
00056 
00058 
00059   void SetValue(char* v);
00060   void SetValue(char* v1, char* v2);
00061   void SetValue(char* v1, char* v2, char* v3);
00062   void SetValue(char* v1, char* v2, char* v3, char* v4);
00063   void SetValue(char* v1, char* v2, char* v3, char* v4, char* v5);
00064   void SetValue(char* v1, char* v2, char* v3, char* v4, char* v5, char* v6);
00065   void SetValue(char** vals, int num);
00066   void SetValue(float* vals, int num);
00068 
00070 
00072   void GetValue(float* values, int num);
00073   float *GetValue6();
00075 
00077   void CheckModifiedCallback(const char*);
00078   
00080 
00083   vtkSetStringMacro(ScriptValue);
00084   vtkGetStringMacro(ScriptValue);
00086 
00088 
00089   vtkSetMacro(DataType, int); 
00090   vtkGetMacro(DataType, int); 
00092   
00094   void SetLabel(const char* label);
00095 
00098   virtual void SetBalloonHelpString(const char *str);
00099 
00101 
00102   vtkSetMacro(VectorLength, int);
00103   vtkGetMacro(VectorLength, int);
00105 
00107   void SetEntryValue(int index, const char* value);
00108 
00109 //BTX
00111 
00114   vtkPVVectorEntry* ClonePrototype(vtkPVSource* pvSource,
00115                                  vtkArrayMap<vtkPVWidget*, vtkPVWidget*>* map);
00117 //ETX
00118 
00120 
00121   virtual void Accept();
00122   virtual void ResetInternal();
00124 
00126   virtual void Initialize();
00127 
00129   virtual void Trace(ofstream *file);
00130 
00137   virtual void UpdateEnableState();
00138 
00140   virtual void SaveInBatchScript(ofstream *file);
00141  
00142 protected:
00143   vtkPVVectorEntry();
00144   ~vtkPVVectorEntry();
00145   
00146   vtkKWLabel *LabelWidget;
00147 
00148   vtkSetStringMacro(EntryLabel);
00149   vtkGetStringMacro(EntryLabel);
00150   char* EntryLabel;
00151 
00152   int DataType;
00153   int VectorLength;
00154 
00155   char *ScriptValue;
00156 
00158   char *EntryValues[6];
00159 
00160   vtkPVVectorEntry(const vtkPVVectorEntry&); // Not implemented
00161   void operator=(const vtkPVVectorEntry&); // Not implemented
00162 
00163 //BTX
00164   virtual void CopyProperties(vtkPVWidget* clone, vtkPVSource* pvSource,
00165                               vtkArrayMap<vtkPVWidget*, vtkPVWidget*>* map);
00166 //ETX
00167   
00168   int ReadXMLAttributes(vtkPVXMLElement* element,
00169                         vtkPVXMLPackageParser* parser);
00170 
00171   // PIMPL Encapsulation for STL containers
00172 
00173   vtkPVVectorEntryInternals *Internals;
00174 };
00175 
00176 #endif

Generated on Tue May 30 12:31:41 2006 for ParaView by doxygen 1.3.5