X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4860d40db4a78d8c2fd20d0b7b75136d749050eb..97f3b1e939c502a05f2717e52b44919c8254d61e:/include/wx/uri.h diff --git a/include/wx/uri.h b/include/wx/uri.h index a2a16b2421..b273c37a12 100644 --- a/include/wx/uri.h +++ b/include/wx/uri.h @@ -1,20 +1,17 @@ ///////////////////////////////////////////////////////////////////////////// // Name: uri.h -// Purpose: wxURI - Class for parsing URIs +// Purpose: wxURI - Class for parsing URIs // Author: Ryan Norton -// Modified By: +// Modified By: // Created: 07/01/2004 // RCS-ID: $Id$ -// Licence: wxWindows +// Copyright: (c) Ryan Norton +// Licence: wxWindows Licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_URI_H_ #define _WX_URI_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "uri.h" -#endif - #include "wx/defs.h" #include "wx/object.h" #include "wx/string.h" @@ -22,10 +19,10 @@ // Host Type that the server component can be enum wxURIHostType { - wxURI_REGNAME, // Host is a normal register name (www.mysite.com etc.) - wxURI_IPV4ADDRESS, // Host is a version 4 ip address (192.168.1.100) + wxURI_REGNAME, // Host is a normal register name (www.mysite.com etc.) + wxURI_IPV4ADDRESS, // Host is a version 4 ip address (192.168.1.100) wxURI_IPV6ADDRESS, // Host is a version 6 ip address [aa:aa:aa:aa::aa:aa]:5050 - wxURI_IPVFUTURE // Host is a future ip address (wxURI is unsure what kind) + wxURI_IPVFUTURE // Host is a future ip address (wxURI is unsure what kind) }; // Component Flags @@ -49,9 +46,7 @@ enum wxURIFlags // Generic class for parsing URIs. // -// Originally based off of RFC 2396 - then -// extended to meet the newer RFC 2396.bis -// specifications. +// See RFC 3986 class WXDLLIMPEXP_BASE wxURI : public wxObject { public: @@ -70,7 +65,7 @@ public: bool HasPath() const { return (m_fields & wxURI_PATH) == wxURI_PATH; } bool HasQuery() const { return (m_fields & wxURI_QUERY) == wxURI_QUERY; } bool HasFragment() const { return (m_fields & wxURI_FRAGMENT) == wxURI_FRAGMENT; } - + const wxString& GetScheme() const { return m_scheme; } const wxString& GetPath() const { return m_path; } const wxString& GetQuery() const { return m_query; } @@ -83,7 +78,7 @@ public: //Note that the following two get functions are explicitly depreciated by RFC 2396 wxString GetUser() const; wxString GetPassword() const; - + wxString BuildURI() const; wxString BuildUnescapedURI() const; @@ -95,7 +90,7 @@ public: bool operator == (const wxURI& uri) const; static wxString Unescape (const wxString& szEscapedURI); - + protected: wxURI& Assign(const wxURI& uri); @@ -121,9 +116,11 @@ protected: static void Normalize(wxChar* uri, bool bIgnoreLeads = false); static void UpTree(const wxChar* uristart, const wxChar*& uri); + static void UpTree(wxString::const_iterator uristart, + wxString::const_iterator& uri); - static wxChar TranslateEscape(const wxChar* s); - static void Escape (wxString& s, const wxChar& c); + static wxUniChar TranslateEscape(const wxString::const_iterator& s); + static void Escape(wxString& s, const wxChar& c); static bool IsEscape(const wxChar*& uri); static wxChar CharToHex(const wxChar& c);