00001 // ===================================================================== 00021 // ===================================================================== 00022 #ifndef __TRUNINFORMATION_HH 00023 #define __TRUNINFORMATION_HH 00024 00025 #include "Tglobals.h" 00026 00027 class TOutputHtmlFileStream; 00028 00029 00049 class TRunInformation 00050 { 00051 00052 private: 00053 Truninfo_t theInformationType; 00054 Tstring theItem; 00055 Tstring theDefaultValue; 00056 Tstring theValue; 00057 TstringList theSelectableList; 00058 00059 public: 00060 TRunInformation(); 00061 TRunInformation( const Tstring& item ); 00062 TRunInformation( const Tstring& item, Truninfo_t type ); 00063 TRunInformation( const Tstring& item, const TstringList& list ); 00064 TRunInformation( const Tstring& item, const Tstring& value ); 00065 TRunInformation( const Tstring& item, const Tstring& value, Truninfo_t type ); 00066 TRunInformation( const Tstring& item, const Tstring& value, const TstringList& list ); 00067 TRunInformation( const TRunInformation& right ); 00068 ~TRunInformation(); 00069 00070 public: 00071 const TRunInformation& operator=( const TRunInformation& right ); 00072 Tbool operator==( const TRunInformation& right ) const; 00073 Tbool operator!=( const TRunInformation& right ) const; 00074 friend Tostream& operator<<( Tostream& tos, const TRunInformation& right ); 00075 friend TOutputHtmlFileStream& operator<<( TOutputHtmlFileStream& html, const TRunInformation& right ); 00076 friend Tvoid SetInformation( TRunInformation& info ); 00077 00078 public: 00079 Truninfo_t GetInformationType() const; 00080 const Tstring& GetItem() const; 00081 const Tstring& GetDefaultValue() const; 00082 const Tstring& GetValue() const; 00083 const TstringList& GetSelectableList() const; 00084 Tvoid SetInformationType( Truninfo_t info ); 00085 Tvoid SetItem( const Tstring& item ); 00086 Tvoid SetDefaultValue( const Tstring& value ); 00087 Tvoid SetValue( const Tstring& value ); 00088 Tvoid SetSelectableList( const TstringList& list ); 00089 00090 public: 00091 Tvoid Clear(); 00092 00093 private: 00094 Tvoid setFreeValue(); 00095 Tvoid setSelectableValue(); 00096 Tvoid setFreeText(); 00097 Tvoid setInformation(); 00098 00099 }; 00100 00101 inline Truninfo_t TRunInformation::GetInformationType() const 00102 { 00103 return theInformationType; 00104 } 00105 00106 inline const Tstring& TRunInformation::GetItem() const 00107 { 00108 return theItem; 00109 } 00110 00111 inline const Tstring& TRunInformation::GetDefaultValue() const 00112 { 00113 return theDefaultValue; 00114 } 00115 00116 inline const Tstring& TRunInformation::GetValue() const 00117 { 00118 return theValue; 00119 } 00120 00121 inline const TstringList& TRunInformation::GetSelectableList() const 00122 { 00123 return theSelectableList; 00124 } 00125 00126 inline Tvoid TRunInformation::SetInformationType( Truninfo_t info ) 00127 { 00128 theInformationType = info; 00129 return; 00130 } 00131 00132 inline Tvoid TRunInformation::SetItem( const Tstring& item ) 00133 { 00134 theItem = item; 00135 return; 00136 } 00137 00138 inline Tvoid TRunInformation::SetDefaultValue( const Tstring& value ) 00139 { 00140 theDefaultValue = value; 00141 return; 00142 } 00143 00144 inline Tvoid TRunInformation::SetValue( const Tstring& value ) 00145 { 00146 theValue = value; 00147 return; 00148 } 00149 00150 inline Tvoid TRunInformation::SetSelectableList( const TstringList& list ) 00151 { 00152 theSelectableList = list; 00153 theInformationType = tInfoSelectableValue; 00154 return; 00155 } 00156 00157 #endif