\section{\class{wxHashTable}}\label{wxhashtable}
-This class provides hash table functionality for wxWindows, and for an
+{\bf Please note} that this class is retained for backward compatibility
+reasons; you should use \helpref{wxHashMap}{wxhashmap}.
+
+This class provides hash table functionality for wxWidgets, and for an
application if it wishes. Data can be hashed on an integer or string
key.
<wx/hash.h>
+\wxheading{Library}
+
+\helpref{wxBase}{librarieslist}
+
\wxheading{Example}
Below is an example of using a hash table.
\begin{verbatim}
- wxHashTable table(KEY_STRING);
+ wxHashTable table(wxKEY_STRING);
wxPoint *point = new wxPoint(100, 200);
table.Put("point 1", point);
\latexignore{\rtfignore{\wxheading{Members}}}
-\membersection{wxHashTable::wxHashTable}
+\membersection{wxHashTable::wxHashTable}\label{wxhashtablector}
\func{}{wxHashTable}{\param{unsigned int}{ key\_type}, \param{int}{ size = 1000}}
Constructor. {\it key\_type} is one of wxKEY\_INTEGER, or wxKEY\_STRING,
and indicates what sort of keying is required. {\it size} is optional.
-\membersection{wxHashTable::\destruct{wxHashTable}}
+\membersection{wxHashTable::\destruct{wxHashTable}}\label{wxhashtabledtor}
\func{}{\destruct{wxHashTable}}{\void}
Destroys the hash table.
-\membersection{wxHashTable::BeginFind}
+\membersection{wxHashTable::BeginFind}\label{wxhashtablebeginfind}
\func{void}{BeginFind}{\void}
through all the data in the hash table, it can call {\it BeginFind} and
then loop on {\it Next}.
-\membersection{wxHashTable::Clear}
+\membersection{wxHashTable::Clear}\label{wxhashtableclear}
\func{void}{Clear}{\void}
Clears the hash table of all nodes (but as usual, doesn't delete user data).
-\membersection{wxHashTable::Delete}
+\membersection{wxHashTable::Delete}\label{wxhashtabledelete}
\func{wxObject *}{Delete}{\param{long}{ key}}
Deletes entry in hash table and returns the user's data (if found).
-\membersection{wxHashTable::Get}
+\membersection{wxHashTable::DeleteContents}\label{wxhashtabledeletecontents}
+
+\func{void}{DeleteContents}{\param{bool}{ flag}}
+
+If set to true data stored in hash table will be deleted when hash table object
+is destroyed.
+
+
+\membersection{wxHashTable::Get}\label{wxhashtableget}
\func{wxObject *}{Get}{\param{long}{ key}}
-\func{wxObject *}{Get}{\param{const wxString\& }{ key}}
+\func{wxObject *}{Get}{\param{const char*}{ key}}
Gets data from the hash table, using an integer or string key (depending on which
has table constructor was used).
-\membersection{wxHashTable::MakeKey}
+\membersection{wxHashTable::MakeKey}\label{wxhashtablemakekey}
\func{long}{MakeKey}{\param{const wxString\& }{string}}
Makes an integer key out of a string. An application may wish to make a key
explicitly (for instance when combining two data values to form a key).
-\membersection{wxHashTable::Next}
+\membersection{wxHashTable::Next}\label{wxhashtablenext}
-\func{wxNode *}{Next}{\void}
+\func{wxHashTable::Node *}{Next}{\void}
If the application wishes to iterate through all the data in the hash
table, it can call {\it BeginFind} and then loop on {\it Next}. This function
-returns a {\bf wxNode} pointer (or NULL if there are no more nodes). See the
-description for \helpref{wxNode}{wxnode}. The user will probably only wish to use the
-{\bf wxNode::Data} function to retrieve the data; the node may also be deleted.
+returns a {\bf wxHashTable::Node} pointer (or NULL if there are no more nodes).
+The return value is functionally equivalent to \textbf{wxNode} but might not be
+implemented as a \textbf{wxNode}. The user will probably only wish to use the
+\textbf{GetData} method to retrieve the data; the node may also be deleted.
-\membersection{wxHashTable::Put}
+\membersection{wxHashTable::Put}\label{wxhashtableput}
\func{void}{Put}{\param{long}{ key}, \param{wxObject *}{object}}
-\func{void}{Put}{\param{const wxString\& }{ key}, \param{wxObject *}{object}}
+\func{void}{Put}{\param{const char*}{ key}, \param{wxObject *}{object}}
Inserts data into the hash table, using an integer or string key (depending on which
has table constructor was used). The key string is copied and stored by the hash
table implementation.
+\membersection{wxHashTable::GetCount}\label{wxhashtablegetcount}
+
+\constfunc{size\_t}{GetCount}{\void}
+
+Returns the number of elements in the hash table.