X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/adaaa68635b4c8a4d8c5284add40366ea3eefb07..7344108e8a129a3f9b4df5ab0f98a1713db03b89:/interface/wx/tokenzr.h?ds=sidebyside diff --git a/interface/wx/tokenzr.h b/interface/wx/tokenzr.h index ed88750a31..f27ba1a5f6 100644 --- a/interface/wx/tokenzr.h +++ b/interface/wx/tokenzr.h @@ -3,7 +3,7 @@ // Purpose: interface of wxStringTokenizer // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// /** @@ -28,8 +28,8 @@ enum wxStringTokenizerMode /** In this mode, the empty tokens in the middle of the string will be returned, - i.e. @c "a::b:" will be tokenized in three tokens @c 'a', " and @c 'b'. Notice - that all trailing delimiters are ignored in this mode, not just the last one, + i.e. @c "a::b:" will be tokenized in three tokens @c 'a', @c '' and @c 'b'. + Notice that all trailing delimiters are ignored in this mode, not just the last one, i.e. a string @c "a::b::" would still result in the same set of tokens. */ wxTOKEN_RET_EMPTY, @@ -59,6 +59,9 @@ enum wxStringTokenizerMode wxTOKEN_STRTOK }; +/// Default wxStringTokenizer delimiters are the usual white space characters. +#define wxDEFAULT_DELIMITERS " \t\r\n" + /** @class wxStringTokenizer @@ -88,7 +91,7 @@ enum wxStringTokenizerMode @library{wxbase} @category{data} - @see wxStringTokenize() + @see ::wxStringTokenize() */ class wxStringTokenizer : public wxObject { @@ -106,7 +109,7 @@ public: @see SetString() */ wxStringTokenizer(const wxString& str, - const wxString& delims = " \t\r\n", + const wxString& delims = wxDEFAULT_DELIMITERS, wxStringTokenizerMode mode = wxTOKEN_DEFAULT); /** @@ -115,7 +118,7 @@ public: GetNextToken() is called and when it reaches 0, HasMoreTokens() returns @false. */ - int CountTokens() const; + size_t CountTokens() const; /** Returns the delimiter which ended scan for the last token returned by @@ -154,7 +157,29 @@ public: containing delimiters, and the @a mode specifying how the string should be tokenized. */ - void SetString(const wxString& to_tokenize, - const wxString& delims = " \t\r\n", + void SetString(const wxString& str, + const wxString& delims = wxDEFAULT_DELIMITERS, wxStringTokenizerMode mode = wxTOKEN_DEFAULT); }; + + +/** @addtogroup group_funcmacro_string */ +//@{ + +/** + This is a convenience function wrapping wxStringTokenizer which simply + returns all tokens found in the given @a str as an array. + + Please see wxStringTokenizer::wxStringTokenizer for the description + of the other parameters. + + @return The array with the parsed tokens. + + @header{wx/string.h} +*/ +wxArrayString +wxStringTokenize(const wxString& str, + const wxString& delims = wxDEFAULT_DELIMITERS, + wxStringTokenizerMode mode = wxTOKEN_DEFAULT); + +//@}