00001
00015 #ifndef INC_MI32_TEXTRESITEM_H
00016 #define INC_MI32_TEXTRESITEM_H
00017
00018 #ifndef INC_MI32_TEXTRES_H
00019 #include <mi32/textres.h>
00020 #endif
00021
00022 #ifndef GENERATING_DOXYGEN_OUTPUT
00023 class TEXTRESITEM_PRIV;
00024 #endif // GENERATING_DOXYGEN_OUTPUT
00025
00026 #ifdef MISYSTEMDLL
00027 #define CLASSLIBEXPORT MI_DLLCLASSEXPORT
00028 #else
00029 #define CLASSLIBEXPORT MI_DLLCLASSIMPORT
00030 #endif
00031
00035 class CLASSLIBEXPORT TEXTRESITEM {
00036 public:
00037
00039 TEXTRESITEM (
00040 );
00041
00043 TEXTRESITEM (
00044 const TEXTRESITEM& rhs
00045 );
00046
00048 TEXTRESITEM (
00049 const char *name,
00050 TEXTRES_NAMESET nameset = TEXTRES_NAMESET_General
00051 );
00052
00054 TEXTRESITEM (
00055 TEXTID textid
00056 );
00057
00059 TEXTRESITEM (
00060 const MISTRING& rhs
00061 );
00062
00064 ~TEXTRESITEM ();
00065
00067 TEXTRESITEM& operator= (
00068 const TEXTRESITEM& rhs
00069 );
00070
00072 TEXTRESITEM& operator= (
00073 const char *name
00074 );
00075
00077 TEXTRESITEM& operator= (
00078 TEXTID rhs
00079 );
00080
00082 TEXTRESITEM& operator= (
00083 const MISTRING& rhs
00084 );
00085
00086 #ifndef GENERATING_DOXYGEN_OUTPUT
00087
00088 bool operator< (
00089 const TEXTRESITEM& rhs
00090 ) const;
00091 #endif // GENERATING_DOXYGEN_OUTPUT
00092
00095 bool Assign (
00096 const char *name,
00097 TEXTRES_NAMESET nameset = TEXTRES_NAMESET_General
00098 );
00099
00102 bool Assign (
00103 const UINT8 *name,
00104 TEXTRES_NAMESET nameset = TEXTRES_NAMESET_General
00105 );
00106
00108 void Clear (
00109 );
00110
00111 #ifndef NODLLLINKAGE
00120 bool CreateFromXML (
00121 const XMLNODE *itemnode
00122 );
00123 #endif
00124
00126 const MISTRING& GetString (
00127 ) const;
00128
00129 #ifndef GENERATING_DOXYGEN_OUTPUT
00130
00131 bool IsEqual (
00132 const TEXTRESITEM& rhs
00133 ) const;
00134 #endif // GENERATING_DOXYGEN_OUTPUT
00135
00137 bool IsValid (
00138 ) const;
00139
00140 private:
00141 #ifndef GENERATING_DOXYGEN_OUTPUT
00142 TEXTRESITEM_PRIV *m_pPriv;
00143 #endif // GENERATING_DOXYGEN_OUTPUT
00144 };
00145
00147 inline bool operator== (
00148 const TEXTRESITEM& lhs,
00149 const TEXTRESITEM& rhs
00150 ) {
00151 return (lhs.IsEqual(rhs));
00152 }
00153
00155 inline bool operator!= (
00156 const TEXTRESITEM& lhs,
00157 const TEXTRESITEM& rhs
00158 ) {
00159 return (!lhs.IsEqual(rhs));
00160 }
00161
00162
00163
00164 #undef CLASSLIBEXPORT
00165
00166 #endif // INC_MI32_TEXTRESITEM_H