//////////////////////////////////////////////////////////////////////////////// /*! @file ExpressionNode.h Class sExpressionNode. - Part of RANet - Research Assistant Net Library. - Copyright(C) 2014-2015, Viktor E. Bursian, St.Petersburg, Russia. Viktor_dot_Bursian_at_mail_dot_ioffe_dot_ru */////////////////////////////////////////////////////////////////////////////// #ifndef ExpressionNode_H #define ExpressionNode_H #include "FolderNode.h" #include "Graphicals.h" #include "BasicMath.h" namespace RA { //------------------------------------------------------------------------------ ANNOUNCE_CLASS(sExpressionNode) //---------------------------------------------------------- sExpressionNode --- class RANet_EXPORT sExpressionNode : public sFolderNode ,public sGraphObject { STORABLE(sExpressionNode) public: virtual ~sExpressionNode (); explicit sExpressionNode (sString source =sString()); virtual psMathValue MathValue (); virtual psMathValue Result (); virtual sString Text (eTextFormat ,eTextDetalization); virtual void SetDocket (rcsString new_docket); // virtual pcsAppearance Appearance () const; virtual void SetAppearance (psAppearance); virtual sBoundaries Boundaries (); virtual sBoundaries Boundaries () const; virtual int Distance (rcsIntPoint position ,rcsScales scales ); virtual sString Hint (); protected: virtual void CopyFrom (psNode); protected: //fields bool CalculatedFlag; psMathValue TheResult; }; //------------------------------------------------------------------------------ } //namespace RA #endif