X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83e51c483e9c3621d150fb5bdb3f28493af833ef..9bf6a1b80cb856903e15387ebecc926142e73010:/docs/latex/wx/list.tex diff --git a/docs/latex/wx/list.tex b/docs/latex/wx/list.tex index 93f4663fa5..2d49800caf 100644 --- a/docs/latex/wx/list.tex +++ b/docs/latex/wx/list.tex @@ -15,7 +15,11 @@ The wxList class provides linked list functionality. It has been written to be type safe and to provide the full API of the STL std::list container and should be used like it. The exception is that wxList actually stores pointers and therefore its iterators return pointers and not references -to the actual objets in the list (see example below). Unfortunately, the +to the actual objets in the list (see example below) and {\it value\_type} +is defined as {\it T*}. + + +Unfortunately, the new wxList class requires that you declare and define each wxList class in your program. This is done with {\it WX\_DECLARE\_LIST} and {\it WX\_DEFINE\_LIST} macros (see example). We hope that we'll be able @@ -23,16 +27,15 @@ to provide a proper template class providing both the STL std::list and the old wxList API in the future. Please refer to the STL std::list documentation for further -information on how to use the class. Below we documented the legacy -API that originated from the old wxList class and which can still -be used alternatively for the the same class. +information on how to use the class. Below we documented both +the supported STL and the legacy API that originated from the +old wxList class and which can still be used alternatively for +the the same class. -Note that if you compile wxWidgets in STL mode (wxUSE_STL defined as 1) +Note that if you compile wxWidgets in STL mode (wxUSE\_STL defined as 1) then wxList will actually derive from std::list and just add a legacy compatibility layer for the old wxList class. -each list type (i.e. list of ints, of wxStrings or of MyObjects). - \wxheading{Example} \begin{verbatim} @@ -55,7 +58,6 @@ each list type (i.e. list of ints, of wxStrings or of MyObjects). WX_DEFINE_LIST(MyList); - MyList list; MyListElement element; list.Append(&element); // ok @@ -93,9 +95,14 @@ it is not only unsafe but is also much less efficient than +\wxheading{Library} + +\helpref{wxBase}{librarieslist} + \wxheading{See also} -\helpref{wxArray}{wxarray} +\helpref{wxArray}{wxarray}, +\helpref{wxVector}{wxvector} \latexignore{\rtfignore{\wxheading{Members}}} @@ -103,7 +110,7 @@ it is not only unsafe but is also much less efficient than \func{}{wxList}{\void} -\func{}{wxList}{\param{size_t}{ count}, \param{T *}{elements[]}} +\func{}{wxList}{\param{size\_t}{ count}, \param{T *}{elements[]}} Constructors. @@ -116,11 +123,11 @@ unless you called DeleteContents({\tt true} ). \membersection{wxList::Append}\label{wxlistappend} -\func{wxList::compatibility_iterator }{Append}{\param{T *}{object}} +\func{wxList::compatibility\_iterator }{Append}{\param{T *}{object}} Appends the pointer to \rtfsp{\it object} to the list. -\membersection{wxList::Clear}\label{wxlistclear} +\membersection{wxList::Clear}\label{wxlistclear1} \func{void}{Clear}{\void} @@ -137,7 +144,7 @@ The default is {\tt false}. \membersection{wxList::DeleteNode}\label{wxlistdeletenode} -\func{bool}{DeleteNode}{\param{const compatibility_iterator &}{iter}} +\func{bool}{DeleteNode}{\param{const compatibility\_iterator &}{iter}} Deletes the given element refered to by {\tt iter} from the list, returning {\tt true} if successful. @@ -152,13 +159,13 @@ separately. \membersection{wxList::Erase}\label{wxlisterase} -\func{void}{Erase}{\param{const compatibility_iterator &}{iter}} +\func{void}{Erase}{\param{const compatibility\_iterator &}{iter}} Removes element refered to be {\tt iter}. \membersection{wxList::Find}\label{wxlistfind} -\constfunc{wxList::compatibility_iterator}{Find}{\param{T *}{ object}} +\constfunc{wxList::compatibility\_iterator}{Find}{\param{T *}{ object}} Returns the iterator refering to {\it object} or NULL if none found. @@ -170,13 +177,13 @@ Returns the number of elements in the list. \membersection{wxList::GetFirst}\label{wxlistgetfirst} -\constfunc{wxList::compatibility_iterator}{GetFirst}{\void} +\constfunc{wxList::compatibility\_iterator}{GetFirst}{\void} Returns the first iterator in the list (NULL if the list is empty). \membersection{wxList::GetLast}\label{wxlistgetlast} -\constfunc{wxList::compatibility_iterator}{GetLast}{\void} +\constfunc{wxList::compatibility\_iterator}{GetLast}{\void} Returns the last iterator in the list (NULL if the list is empty). @@ -187,20 +194,20 @@ Returns the last iterator in the list (NULL if the list is empty). Returns the index of {\it obj} within the list or {\tt wxNOT\_FOUND} if {\it obj} is not found in the list. -\membersection{wxList::Insert}\label{wxlistinsert} +\membersection{wxList::Insert}\label{wxlistinsert1} -\func{wxList::compatibility_iterator}{Insert}{\param{T *}{object}} +\func{wxList::compatibility\_iterator}{Insert}{\param{T *}{object}} Insert object at the front of list. -\func{wxList::compatibility_iterator}{Insert}{\param{size\_t }{position}, \param{T *}{object}} +\func{wxList::compatibility\_iterator}{Insert}{\param{size\_t }{position}, \param{T *}{object}} Insert object before {\it position}, i.e. the index of the new item in the list will be equal to {\it position}. {\it position} should be less than or equal to \helpref{GetCount}{wxlistgetcount}; if it is equal to it, this is the same as calling \helpref{Append}{wxlistappend}. -\func{wxList::compatibility_iterator}{Insert}{\param{compatibility_iterator}{iter}, \param{T *}{object}} +\func{wxList::compatibility\_iterator}{Insert}{\param{compatibility\_iterator}{iter}, \param{T *}{object}} Inserts the object before the object refered to be {\it iter}. @@ -213,20 +220,20 @@ Returns {\tt true} if the list is empty, {\tt false} otherwise. % Use different label name to avoid clashing with wxListItem label \membersection{wxList::Item}\label{wxlistitemfunc} -\constfunc{wxList::compatibility_iterator}{Item}{\param{size\_t }{index}} +\constfunc{wxList::compatibility\_iterator}{Item}{\param{size\_t }{index}} Returns the iterator refering to the object at the given {\tt index} in the list. \membersection{wxList::Member}\label{wxlistmember} -\constfunc{wxList::compatibility_iterator}{Member}{\param{T *}{ object}} +\constfunc{wxList::compatibility\_iterator}{Member}{\param{T *}{ object}} {\bf NB:} This function is deprecated, use \helpref{Find}{wxlistfind} instead. \membersection{wxList::Nth}\label{wxlistnth} -\constfunc{wxList::compatibility_iterator}{Nth}{\param{int }{n}} +\constfunc{wxList::compatibility\_iterator}{Nth}{\param{int }{n}} {\bf NB:} This function is deprecated, use \helpref{Item}{wxlistitemfunc} instead. @@ -254,3 +261,160 @@ Allows the sorting of arbitrary lists by giving a function to compare two list elements. We use the system {\bf qsort} function for the actual sorting process. + + +\membersection{wxList::assign}\label{wxlistassign} + +\func{void}{assign}{\param{const\_iterator }{first}, \param{const const\_iterator\& }{last}} + + +\func{void}{assign}{\param{size\_type }{n}, \param{const\_reference }{v = value\_type()}} + + +\membersection{wxList::back}\label{wxlistback} + +\func{reference}{back}{\void} + +\constfunc{const\_reference}{back}{\void} + +Returns the last item of the list. + +\membersection{wxList::begin}\label{wxlistbegin} + +\func{iterator}{begin}{\void} + +\constfunc{const\_iterator}{begin}{\void} + +Returns a (const) iterator pointing to the beginning of the list. + +\membersection{wxList::clear}\label{wxlistclear} + +\func{void}{clear}{\void} + +Removes all items from the list. + +\membersection{wxList::empty}\label{wxlistempty} + +\constfunc{bool}{empty}{\void} + +Returns {\it true} if the list is empty. + +\membersection{wxList::end}\label{wxlistend} + +\func{iterator}{end}{\void} + +\constfunc{const\_iterator}{end}{\void} + +Returns a (const) iterator pointing at the end of the list. + +\membersection{wxList::erase}\label{wxlisterase2} + +\func{iterator}{erase}{\param{const iterator\& }{it}} + +Erases the item pointed to by {\it it}. + +\func{iterator}{erase}{\param{const iterator\& }{first}, \param{const iterator\& }{last}} + +Erases the items from {\it first} to {\it last}. + +\membersection{wxList::front}\label{wxlistfront} + +\func{reference}{front}{\void} + +\constfunc{const\_reference}{front}{\void} + +Returns the first item in the list. + +\membersection{wxList::insert}\label{wxlistinsert} + +\func{iterator}{insert}{\param{const iterator\& }{it}, \param{const\_reference }{v = value\_type()}} + +\func{void}{insert}{\param{const iterator\& }{it}, \param{size\_type }{n}, \param{const\_reference }{v = value\_type()}} + +\func{void}{insert}{\param{const iterator\& }{it}, \param{const\_iterator }{first}, \param{const const\_iterator\& }{last}} + +Inserts an item (or several) at the given position. + +\membersection{wxList::max\_size}\label{wxlistmaxsize} + +\constfunc{size\_type}{max\_size}{\void} + +Returns the largest possible size of the list. + +\membersection{wxList::pop\_back}\label{wxlistpopback} + +\func{void}{pop\_back}{\void} + +Removes the last item from the list. + +\membersection{wxList::pop\_front}\label{wxlistpopfront} + +\func{void}{pop\_front}{\void} + +Removes the first item from the list. + +\membersection{wxList::push\_back}\label{wxlistpushback} + +\func{void}{push\_back}{\param{const\_reference }{v = value\_type()}} + +Adds an item to end of the list. + +\membersection{wxList::push\_front}\label{wxlistpushfront} + +\func{void}{push\_front}{\param{const\_reference }{v = value\_type()}} + +Adds an item to the front of the list. + +\membersection{wxList::rbegin}\label{wxlistrbegin} + +\func{reverse\_iterator}{rbegin}{\void} + +\constfunc{const\_reverse\_iterator}{rbegin}{\void} + +Returns a (const) reverse iterator pointing to the beginning of the +reversed list. + +\membersection{wxList::remove}\label{wxlistremove} + +\func{void}{remove}{\param{const\_reference }{v}} + +Removes an item from the list. + +\membersection{wxList::rend}\label{wxlistrend} + +\func{reverse\_iterator}{rend}{\void} + +\constfunc{const\_reverse\_iterator}{rend}{\void} + +Returns a (const) reverse iterator pointing to the end of the +reversed list. + +\membersection{wxList::resize}\label{wxlistresize} + +\func{void}{resize}{\param{size\_type }{n}, \param{value\_type }{v = value\_type()}} + +Resizes the list. If the the list is enlarges items with +the value {\it v} are appended to the list. + +\membersection{wxList::reverse}\label{wxlistreverse} + +\func{void}{reverse}{\void} + +Reverses the list. + +\membersection{wxList::size}\label{wxlistsize} + +\constfunc{size\_type}{size}{\void} + +Returns the size of the list. + +\membersection{wxList::splice}\label{wxlistsplice} + +\func{void}{splice}{\param{const iterator\& }{it}, \param{wxList\& }{l}} + +\func{void}{splice}{\param{const iterator\& }{it}, \param{wxList\& }{l}, \param{const iterator\& }{first}} + +\func{void}{splice}{\param{const iterator\& }{it}, \param{wxList\& }{l}, \param{const iterator\& }{first}, \param{const iterator\& }{last}} + +Moves part of the list into another list, starting from {\it first} and +ending at {\it last} if specified.