.. index:: pair: class; EE::UI::Models::Variant .. _doxid-class_e_e_1_1_u_i_1_1_models_1_1_variant: class EE::UI::Models::Variant ============================= .. toctree:: :hidden: enum_EE_UI_Models_Variant_Type.rst .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class Variant { public: // enums enum :ref:`Type`; // fields void* :target:`asDataPtr` { nullptr }; :ref:`Drawable`* :target:`asDrawable`; :ref:`UIIcon`* :target:`asIcon`; std::string* :target:`asStdString`; :ref:`String`* :target:`asString`; bool :target:`asBool`; :ref:`Float` :target:`asFloat`; int :target:`asInt`; unsigned int :target:`asUint`; :ref:`Int64` :target:`asInt64`; :ref:`Uint64` :target:`asUint64`; :ref:`Vector2f`* :target:`asVector2f`; :ref:`Rectf`* :target:`asRectf`; const char* :target:`asCStr`; // construction :target:`Variant`(); :target:`Variant`(const std::string& string); :target:`Variant`(const :ref:`String`& string); :target:`Variant`(:ref:`Drawable`* drawable, bool ownDrawable = false); :target:`Variant`(:ref:`UIIcon`* icon); :target:`Variant`(const :ref:`Vector2f`& v); :target:`Variant`(void* data); :target:`Variant`(const :ref:`Rectf`& r); :target:`Variant`(bool val); :target:`Variant`(const :ref:`Float`& val); :target:`Variant`(const int& val); :target:`Variant`(const unsigned int& val); :target:`Variant`(const :ref:`Int64`& val); :target:`Variant`(const :ref:`Uint64`& val); :target:`Variant`(const char* data); :target:`~Variant`(); // methods const std::string& :target:`asStdString`() const; const :ref:`String`& :target:`asString`() const; :ref:`Drawable`* :target:`asDrawable`() const; const bool& :target:`asBool`() const; const :ref:`Float`& :target:`asFloat`() const; const int& :target:`asInt`() const; const unsigned int& :target:`asUint`() const; const :ref:`Int64`& :target:`asInt64`() const; const :ref:`Uint64`& :target:`asUint64`() const; const :ref:`Vector2f`& :target:`asVector2f`() const; const :ref:`Rectf`& :target:`asRectf`() const; const char* :target:`asCStr`() const; :ref:`UIIcon`* :target:`asIcon`() const; void* :target:`asDataPtr`() const; bool :target:`is`(const :ref:`Type`& type) const; bool :target:`isString`() const; void :target:`reset`(); bool :target:`isValid`() const; std::string :target:`toString`() const; bool :target:`operator<`(const Variant& other) const; bool :target:`operator==`(const Variant& other) const; size_t :target:`size`() const; };