--- /dev/null
+\section{\class{wxIdManager}}\label{wxidmanager}
+
+wxIdManager is responsible for allocating and releasing window IDs. It
+is used by \helpref{wxWindow::NewControlId}{wxwindownewcontrolid} and
+\helpref{wxWindow::UnreserveControlId}{wxwindowunreservecontrolid}, and can also
+be used be used directly.
+
+\wxheading{Derived from}
+
+No base class
+
+\wxheading{Include files}
+
+<wx/windowid.h> included from defs.h
+
+\wxheading{Library}
+
+\helpref{wxCore}{librarieslist}
+
+\wxheading{See also}
+
+\helpref{wxWindow::NewControlId}{wxwindownewcontrolid}
+\helpref{wxWindow::UnreserveControlId}{wxwindowunreservecontrolid}
+\helpref{Window IDs overview}{windowidsoverview}
+
+\latexignore{\rtfignore{\wxheading{Members}}}
+
+\membersection{wxIdManager::ReserveControlId}\label{wxidmanagerreservecontrolid}
+
+\func{static wxWindowID}{ReserveControlId}{\param{int}{ count = 1}}
+
+Called directly by \helpref{wxWindow::NewControlId}{wxwindownewcontrolid},
+this function will create a new ID or range of IDs. The IDs will be
+reserved until assigned to a \helpref{wxWindowIDRef}{windowidsoverview}
+or unreserved with \helpref{UnreserveControlId}{wxidmanagerunreservecontrolid}.
+Only ID values that are not assigned to a \helpref{wxWindowIDRef}{windowidsoverview}
+need to be unreserved.
+
+\wxheading{Parameters}
+
+\docparam{count}{The number of sequential IDs to reserve.}
+
+\wxheading{Return value}
+
+The value of the first ID in the sequence, or wxID_NONE.
+
+\membersection{wxIdManager::UnreserveControlId}\label{wxidmanagerunreservecontrolid}
+
+\func{static wxWindowID}{UnreserveControlId}{\param{wxWindowID}{ id}, \param{int}{ count = 1}}
+
+Called directly by \helpref{wxWindow::UnreserveControlId}{wxwindowunreservecontrolid},
+this function will unreserve an ID or range of IDs that is currently reserved. This
+should only be called for IDs returned by \helpref{ReserveControlId}{wxidmanagerreservecontrolid}
+that have NOT been assigned to a \helpref{wxWindowIDRef}{windowidsoverview}
+
+\wxheading{Parameters}
+
+\docparam{id}{The first of the range of IDs to unreserve.}
+
+\docparam{count}{The number of sequential IDs to unreserve.}
+
+\wxheading{Return value}
+
+The value of the first ID in the sequence, or wxID_NONE.
See \helpref{Navigate}{wxwindownavigate} for more information.
-\membersection{wxWindow::NextControlId}\label{wxwindownextcontrolid}
+\membersection{wxWindow::NewControlId}\label{wxwindownewcontrolid}
-\func{static int}{NextControlId}{\param{int }{winid}}
+\func{static wxWindowID}{NewControlId}{\param{int}{ count = 1}}
-If two controls are created consecutively using \texttt{wxID\_ANY} id, this
-function allows to retrieve the effective id of the latter control from the id
-of the former. This is useful for example to find the control following its
-\helpref{wxStaticText}{wxstatictext} label if only the id of or pointer to the
-label is available to the caller but it is known that the two controls were
-created together.
+Create a new ID or range of IDs that are not currently in use. The
+IDs will be reserved until assigned to a \helpref{wxWindowIDRef}{windowidsoverview}
+or unreserved with \helpref{UnreserveControlId}{wxwindowunreservecontrolid}.
+
+See \helpref{Window IDs overview}{windowidsoverview} for more information.
+
+\wxheading{Parameters}
+
+\docparam{count}{The number of sequential IDs to reserve.}
+
+\wxheading{Return value}
+
+Returns the ID or the first ID of the range, or wxID_NONE if enough
+free IDs were not available.
\wxheading{See also}
-\helpref{PrevControlId}{wxwindowprevcontrolid}
+\helpref{UnreserveControlId}{wxwindowunreservecontrolid}
+\helpref{wxIdManager}{wxidmanager}
+\helpref{Window IDs overview}{windowidsoverview}
%% VZ: wxWindow::OnXXX() functions should not be documented but I'm leaving
\end{twocollist}}
}
-
-\membersection{wxWindow::PrevControlId}\label{wxwindowprevcontrolid}
-
-\func{static int}{PrevControlId}{\param{int }{winid}}
-
-This is similar to \helpref{NextControlId}{wxwindownextcontrolid} but returns
-the id of the control created just before the one with the given \arg{winid}.
-
-
\membersection{wxWindow::PushEventHandler}\label{wxwindowpusheventhandler}
\func{void}{PushEventHandler}{\param{wxEvtHandler* }{handler}}
\helpref{wxWindow::RegisterHotKey}{wxwindowregisterhotkey}
+\membersection{wxWindow::UnreserveControlId}\label{wxwindowunreservecontrolid}
+
+\func{static void}{UnreserveControlId}{\param{wxWindowID}{ id}, \param{int}{ count = 1}}
+
+Unreserve an ID or range of IDs that was reserved by \helpref{NewControlId}{wxwindownewcontrolid}.
+
+See \helpref{Window IDs overview}{windowidsoverview} for more information.
+
+\wxheading{Parameters}
+
+\docparam{id}{The starting ID of the range of IDs to unreserve.}
+
+\docparam{count}{The number of sequential IDs to unreserve.}
+
+\wxheading{See also}
+
+\helpref{NewControlId}{wxwindownewcontrolid}
+\helpref{wxIdManager}{wxidmanager}
+\helpref{Window IDs overview}{windowidsoverview}
\membersection{wxWindow::Update}\label{wxwindowupdate}