X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Fsrc%2Fsynfig%2Fvaluenode.h;h=e118c95c73a01b5610b5d69316f0996800fb7a5a;hb=4408ad32372553408acef1320ac33dba4a65001b;hp=9b838b799f463c33404dc29d474b99b2ca05c803;hpb=dca591b6877a1bbe0639fbf206d6dd1ff9644c60;p=synfig.git diff --git a/synfig-core/src/synfig/valuenode.h b/synfig-core/src/synfig/valuenode.h index 9b838b7..e118c95 100644 --- a/synfig-core/src/synfig/valuenode.h +++ b/synfig-core/src/synfig/valuenode.h @@ -38,10 +38,7 @@ #include #include #include "guid.h" - -#ifndef SYNFIG_NO_ANGLE #include -#endif #include "node.h" @@ -49,18 +46,6 @@ /* === M A C R O S ========================================================= */ -// This is a hack for GCC 3.0.4... which has a broken dynamic_cast<> -// It is deprecated, and will be removed soon. -#if ( __GNUC__ == 3 ) && ( __GNUC__MINOR__ == 0 ) -# define DCAST_HACK_BASECLASS() int cast__ -# define DCAST_HACK_ID(x) static const int my_cast__(void) { return x; } -# define DCAST_HACK_ENABLE() cast__=my_cast__() -#else -# define DCAST_HACK_BASECLASS() -# define DCAST_HACK_ID(x) -# define DCAST_HACK_ENABLE() -#endif - #define CHECK_TYPE_AND_SET_VALUE(variable, type) \ /* I don't think this ever happens - maybe remove this code? */ \ if (get_type() == ValueBase::TYPE_NIL) { \ @@ -249,10 +234,6 @@ protected: void set_type(ValueBase::Type t) { type=t; } virtual void on_changed(); - -public: - DCAST_HACK_BASECLASS(); - DCAST_HACK_ID(0); }; // END of class ValueNode /*! \class PlaceholderValueNode @@ -305,11 +286,15 @@ public: //! Type that represents a pointer to a ValueNode's constructor - /*! As a pointer to the constructor, it represents a "factory" of + /*! As a pointer to the constructor, it represents a "factory" of ** objects of this class. */ typedef LinkableValueNode* (*Factory)(const ValueBase&); + //! This represents a pointer to a Type check member fucntion + /*! As a pointer to the member, it represents a fucntion that checks + ** the type of the provided ValueBase + */ typedef bool (*CheckType)(ValueBase::Type); struct BookEntry @@ -321,9 +306,9 @@ public: }; //! Book of types of linkable value nodes indexed by type name. - /*! While the sifz file is read, each time a new LinkableValueNode entry - ** is found, the factory constructor that the "factory" pointer member - ** of the "BookEntry" struct points to, is called, and a new object of + /*! While the sifz file is read, each time a new LinkableValueNode entry + ** is found, the factory constructor that the "factory" pointer member + ** of the "BookEntry" struct points to, is called, and a new object of ** that type is created. ** \sa LinkableValueNode::Factory */