00001 /*========================================================================= 00002 00003 Program: ParaView 00004 Module: $RCSfile: vtkPVStringEntry.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 =========================================================================*/ 00021 #ifndef __vtkPVStringEntry_h 00022 #define __vtkPVStringEntry_h 00023 00024 #include "vtkPVObjectWidget.h" 00025 00026 class vtkKWEntry; 00027 class vtkKWLabel; 00028 00029 class VTK_EXPORT vtkPVStringEntry : public vtkPVObjectWidget 00030 { 00031 public: 00032 static vtkPVStringEntry* New(); 00033 vtkTypeRevisionMacro(vtkPVStringEntry, vtkPVObjectWidget); 00034 void PrintSelf(ostream& os, vtkIndent indent); 00035 00037 virtual void Create(vtkKWApplication *pvApp); 00038 00040 00041 void SetValue(const char* fileName); 00042 const char* GetValue(); 00044 00046 void SetLabel(const char* label); 00047 00050 virtual void SetBalloonHelpString(const char *str); 00051 00052 //BTX 00054 00057 vtkPVStringEntry* ClonePrototype(vtkPVSource* pvSource, 00058 vtkArrayMap<vtkPVWidget*, vtkPVWidget*>* map); 00060 //ETX 00061 00062 //BTX 00064 00066 virtual void Accept(); 00067 //ETX 00069 00072 virtual void ResetInternal(); 00073 00075 virtual void Initialize(); 00076 00078 virtual void Trace(ofstream *file); 00079 00086 virtual void UpdateEnableState(); 00087 00089 virtual void SaveInBatchScript(ofstream *file); 00090 00091 protected: 00092 vtkPVStringEntry(); 00093 ~vtkPVStringEntry(); 00094 00095 vtkKWLabel *LabelWidget; 00096 vtkKWEntry *Entry; 00097 00098 vtkPVStringEntry(const vtkPVStringEntry&); // Not implemented 00099 void operator=(const vtkPVStringEntry&); // Not implemented 00100 00101 vtkSetStringMacro(EntryLabel); 00102 vtkGetStringMacro(EntryLabel); 00103 char* EntryLabel; 00104 00105 //BTX 00106 virtual void CopyProperties(vtkPVWidget* clone, vtkPVSource* pvSource, 00107 vtkArrayMap<vtkPVWidget*, vtkPVWidget*>* map); 00108 //ETX 00109 00110 int ReadXMLAttributes(vtkPVXMLElement* element, 00111 vtkPVXMLPackageParser* parser); 00112 00113 }; 00114 00115 #endif