00001 00039 00040 00041 00042 00043 00044 00045 00046 00047 00048 #ifndef INC_RVC_SCRIPT_H 00049 #define INC_RVC_SCRIPT_H 00050 00051 #ifndef INC_RVC_TEXT_H 00052 #include <rvc/textobj.h> 00053 #endif 00054 00055 namespace RVC { 00056 00057 class SCRIPT : public RVC::TEXTOBJ { 00058 public: 00059 enum USAGE { 00060 USAGE_Normal = 0, 00061 USAGE_ComputedField = 1 00062 }; 00063 00064 #ifndef GENERATING_DOXYGEN_OUTPUT 00065 class MAKEPARMS; 00066 #endif 00067 00069 SCRIPT ( 00070 ); 00071 00073 SCRIPT ( 00074 const RVC::SCRIPT& rhs 00075 ); 00076 00078 virtual ~SCRIPT ( 00079 ); 00080 00082 RVC::SCRIPT& operator= ( 00083 const RVC::SCRIPT& rhs 00084 ); 00085 00088 USAGE GetUsage ( 00089 ) const; 00090 00093 UINT32 GetFieldNumber ( 00094 ) const; 00095 00098 static RVC::OBJTYPESET GetObjTypeSet ( 00099 ); 00100 00102 static bool IsScript ( 00103 RVC::OBJTYPE ObjType 00104 ); 00105 00107 ERRVALUE Make ( 00108 const RVC::OBJECT& parent, 00109 const MAKEPARMS& MakeParms, 00110 const RVC::DESCRIPTOR& Descriptor 00111 ); 00112 00114 ERRVALUE Make ( 00115 RVC::OBJITEM& ObjItem, 00116 const MAKEPARMS& MakeParms, 00117 const char* Source = 0 00118 ); 00119 00120 }; 00121 00122 00123 class SCRIPT::MAKEPARMS : public TEXTOBJ::MAKEPARMS { 00124 public: 00125 // Default ctor 00126 MAKEPARMS ( 00127 RVC::OBJTYPE ObjType, 00128 UINT32 FieldNum = 0, 00129 SCRIPT::USAGE Usage = SCRIPT::USAGE_Normal 00130 ); 00131 00132 UINT32 GetFieldNum ( 00133 ) const; 00134 00135 SCRIPT::USAGE GetUsage ( 00136 ) const; 00137 00138 void SetFieldNum ( 00139 UINT32 FieldNum 00140 ); 00141 00142 void SetUsage ( 00143 SCRIPT::USAGE Usage 00144 ); 00145 }; 00146 00147 } 00148 00149 #endif
1.6.1