#define _WX_HASH_H__
#include "wx/defs.h"
+#include "wx/string.h"
#define wxUSE_OLD_HASH_TABLE 0
typedef wxHashTableBase_Node Node;
wxHashTableBase();
- virtual ~wxHashTableBase() { };
+ virtual ~wxHashTableBase() { }
void Create( wxKeyType keyType = wxKEY_INTEGER,
size_t size = wxHASH_SIZE_DEFAULT );
{ DoPut( value, lhash, object ); }
void Put(const wxChar *value, wxObject *object)
{ DoPut( value, MakeKey( value ), object ); }
+ // FIXME-UTF8: have only wxString forms here
+ void Put(const wxString& value, wxObject *object)
+ { DoPut( value, MakeKey( value ), object ); }
void Put(long lhash, const wxChar *value, wxObject *object)
{ DoPut( value, lhash, object ); }
{ return (wxObject*)DoGet( value, lhash ); }
wxObject *Get(const wxChar *value) const
{ return (wxObject*)DoGet( value, MakeKey( value ) ); }
+ // FIXME-UTF8: have only wxString forms here
+ wxObject *Get(const wxString& value) const
+ { return (wxObject*)DoGet( value, MakeKey( value ) ); }
wxObject *Get(long lhash, const wxChar *value) const
{ return (wxObject*)DoGet( value, lhash ); }
{ return (wxObject*)DoDelete( key, lhash ); }
wxObject *Delete(const wxChar *key)
{ return (wxObject*)DoDelete( key, MakeKey( key ) ); }
+ // FIXME-UTF8: have only wxString forms here
+ wxObject *Delete(const wxString& key)
+ { return (wxObject*)DoDelete( key, MakeKey( key ) ); }
wxObject *Delete(long lhash, const wxChar *key)
{ return (wxObject*)DoDelete( key, lhash ); }
#else // if wxUSE_OLD_HASH_TABLE
+typedef wxNode wxHashTable_Node;
+
class WXDLLIMPEXP_BASE wxHashTable : public wxObject
{
public: