/////////////////////////////////////////////////////////////////////////////
-// Name: variant.h
+// Name: wx/variant.h
// Purpose: wxVariant class, container for any type
// Author: Julian Smart
// Modified by:
// Created: 10/09/98
// RCS-ID: $Id$
-// Copyright: (c)
+// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_VARIANT_H_
#define _WX_VARIANT_H_
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "variant.h"
-#endif
-
#include "wx/defs.h"
+
+#if wxUSE_VARIANT
+
#include "wx/object.h"
#include "wx/string.h"
#include "wx/arrstr.h"
#endif
wxVariant(const wxVariant& variant);
- ~wxVariant();
+ virtual ~wxVariant();
// Generic operators
// Assignment
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;
bool IsValueKindOf(const wxClassInfo* type) const;
// Return the number of elements in a list
- int GetCount() const;
+ size_t GetCount() const;
// Value accessors
double GetReal() const ;
#if WXWIN_COMPATIBILITY_2_4
wxDEPRECATED( wxStringList& GetStringList() const );
#endif
- void* GetVoidPtr() const ;
- wxObject* GetWxObjectPtr() ;
+ void* GetVoidPtr() const;
+ wxObject* GetWxObjectPtr() const;
#if wxUSE_DATETIME
wxDateTime GetDateTime() const ;
#endif // wxUSE_DATETIME
bool Member(const wxVariant& value) const;
// Deletes the nth element of the list
- bool Delete(int item);
+ bool Delete(size_t item);
// Clear list
void ClearList();
extern wxVariant WXDLLIMPEXP_BASE wxNullVariant;
-#endif
- // _WX_VARIANT_H_
+#endif // wxUSE_VARIANT
+
+#endif // _WX_VARIANT_H_