diff options
author | Hans Lambermont <hans@lambermont.dyndns.org> | 2002-10-12 15:37:38 +0400 |
---|---|---|
committer | Hans Lambermont <hans@lambermont.dyndns.org> | 2002-10-12 15:37:38 +0400 |
commit | 12315f4d0e0ae993805f141f64cb8c73c5297311 (patch) | |
tree | 59b45827cd8293cfb727758989c7a74b40183974 /source/gameengine/Expressions/StringValue.h |
Initial revisionv2.25
Diffstat (limited to 'source/gameengine/Expressions/StringValue.h')
-rw-r--r-- | source/gameengine/Expressions/StringValue.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/source/gameengine/Expressions/StringValue.h b/source/gameengine/Expressions/StringValue.h new file mode 100644 index 00000000000..6f90536a98b --- /dev/null +++ b/source/gameengine/Expressions/StringValue.h @@ -0,0 +1,51 @@ +/* + * StringValue.h: interface for the CStringValue class. + * $Id$ + * Copyright (c) 1996-2000 Erwin Coumans <coockie@acm.org> + * + * Permission to use, copy, modify, distribute and sell this software + * and its documentation for any purpose is hereby granted without fee, + * provided that the above copyright notice appear in all copies and + * that both that copyright notice and this permission notice appear + * in supporting documentation. Erwin Coumans makes no + * representations about the suitability of this software for any + * purpose. It is provided "as is" without express or implied warranty. + * + */ + +#ifndef __STRINGVALUE_H__ +#define __STRINGVALUE_H__ + +#include "Value.h" + +class CStringValue : public CPropValue +{ + + + //PLUGIN_DECLARE_SERIAL(CStringValue,CValue) +public: + /// Construction / destruction + CStringValue(); + CStringValue (STR_String txt, STR_String name , AllocationTYPE alloctype = CValue::HEAPVALUE); + + virtual ~CStringValue() { + }; + /// CValue implementation + virtual bool IsEqual(const STR_String & other); + virtual const STR_String & GetText(); + virtual float GetNumber(); + + virtual CValue* Calc(VALUE_OPERATOR op, CValue *val); + virtual CValue* CalcFinal(VALUE_DATA_TYPE dtype, VALUE_OPERATOR op, CValue *val); + virtual void SetValue(CValue* newval) { m_strString = newval->GetText(); SetModified(true); }; + virtual CValue* GetReplica(); + virtual PyObject* ConvertValueToPython() { + return PyString_FromString(m_strString.Ptr()); + } + +private: + // data member + STR_String m_strString; +}; + +#endif |