Added wxVariant's =, == and != operators for wxObject*

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2006-09-26 21:08:23 +00:00
parent cfd5930dcd
commit 2f62094615
3 changed files with 28 additions and 1 deletions

View File

@@ -306,6 +306,8 @@ Sets the internal variant data, deleting the existing data if there is any.
\func{void}{operator $=$}{\param{void* }{value}}
\func{void}{operator $=$}{\param{wxObject* }{value}}
\func{void}{operator $=$}{\param{const wxList\& }{value}}
\func{void}{operator $=$}{\param{const wxDateTime\& }{value}}
@@ -338,6 +340,8 @@ Assignment operators.
\constfunc{bool}{operator $==$}{\param{void* }{value}}
\constfunc{bool}{operator $==$}{\param{wxObject* }{value}}
\constfunc{bool}{operator $==$}{\param{const wxList\& }{value}}
\constfunc{bool}{operator $==$}{\param{const wxArrayString\& }{value}}
@@ -364,6 +368,8 @@ Equality test operators.
\constfunc{bool}{operator $!=$}{\param{void* }{value}}
\constfunc{bool}{operator $!=$}{\param{wxObject* }{value}}
\constfunc{bool}{operator $!=$}{\param{const wxList\& }{value}}
\constfunc{bool}{operator $!=$}{\param{const wxArrayString\& }{value}}

View File

@@ -168,7 +168,11 @@ public:
void operator= (const wxList& value) ;
bool operator== (void* value) const;
bool operator!= (void* value) const;
void operator= (void* value) ;
void operator= (void* value);
bool operator== (wxObject* value) const;
bool operator!= (wxObject* value) const;
void operator= (wxObject* value);
// Treat a list variant as an array
wxVariant operator[] (size_t idx) const;

View File

@@ -1628,6 +1628,23 @@ void wxVariant::operator= (void* value)
}
}
bool wxVariant::operator== (wxObject* value) const
{
return (value == ((wxVariantDataWxObjectPtr*)GetData())->GetValue());
}
bool wxVariant::operator!= (wxObject* value) const
{
return (!((*this) == (void*) value));
}
void wxVariant::operator= (wxObject* value)
{
if (m_data)
delete m_data;
m_data = new wxVariantDataWxObjectPtr(value);
}
#if wxUSE_DATETIME
bool wxVariant::operator== (const wxDateTime& value) const
{