dolphin/Externals/wxWidgets3/include/wx/url.h
Soren Jorvang d14efe561b Import r67258 of the wxWidgets trunk, which I expect will before
long become wxWidgets 2.9.2, which in turn is expected to be the
last 2.9 release before the 3.0 stable release.

Since the full wxWidgets distribution is rather large, I have
imported only the parts that we use, on a subdirectory basis:

art
include/wx/*.*
include/wx/aui
include/wx/cocoa
include/wx/generic
include/wx/gtk
include/wx/meta
include/wx/msw
include/wx/osx
include/wx/persist
include/wx/private
include/wx/protocol
include/wx/unix
src/aui
src/common
src/generic
src/gtk
src/msw
src/osx
src/unix


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7380 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-20 18:05:19 +00:00

118 lines
2.7 KiB
C++

/////////////////////////////////////////////////////////////////////////////
// Name: wx/url.h
// Purpose: URL parser
// Author: Guilhem Lavaux
// Modified by: Ryan Norton
// Created: 20/07/1997
// RCS-ID: $Id: url.h 67254 2011-03-20 00:14:35Z DS $
// Copyright: (c) 1997, 1998 Guilhem Lavaux
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_URL_H
#define _WX_URL_H
#include "wx/defs.h"
#if wxUSE_URL
#include "wx/uri.h"
#include "wx/protocol/protocol.h"
#if wxUSE_PROTOCOL_HTTP
#include "wx/protocol/http.h"
#endif
typedef enum {
wxURL_NOERR = 0,
wxURL_SNTXERR,
wxURL_NOPROTO,
wxURL_NOHOST,
wxURL_NOPATH,
wxURL_CONNERR,
wxURL_PROTOERR
} wxURLError;
#if wxUSE_URL_NATIVE
class WXDLLIMPEXP_FWD_NET wxURL;
class WXDLLIMPEXP_NET wxURLNativeImp : public wxObject
{
public:
virtual ~wxURLNativeImp() { }
virtual wxInputStream *GetInputStream(wxURL *owner) = 0;
};
#endif // wxUSE_URL_NATIVE
class WXDLLIMPEXP_NET wxURL : public wxURI
{
public:
wxURL(const wxString& sUrl = wxEmptyString);
wxURL(const wxURI& uri);
wxURL(const wxURL& url);
virtual ~wxURL();
wxURL& operator = (const wxString& url);
wxURL& operator = (const wxURI& uri);
wxURL& operator = (const wxURL& url);
wxProtocol& GetProtocol() { return *m_protocol; }
wxURLError GetError() const { return m_error; }
wxString GetURL() const { return m_url; }
wxURLError SetURL(const wxString &url)
{ *this = url; return m_error; }
bool IsOk() const
{ return m_error == wxURL_NOERR; }
wxInputStream *GetInputStream();
#if wxUSE_PROTOCOL_HTTP
static void SetDefaultProxy(const wxString& url_proxy);
void SetProxy(const wxString& url_proxy);
#endif // wxUSE_PROTOCOL_HTTP
protected:
static wxProtoInfo *ms_protocols;
#if wxUSE_PROTOCOL_HTTP
static wxHTTP *ms_proxyDefault;
static bool ms_useDefaultProxy;
wxHTTP *m_proxy;
bool m_useProxy;
#endif // wxUSE_PROTOCOL_HTTP
#if wxUSE_URL_NATIVE
friend class wxURLNativeImp;
// pointer to a native URL implementation object
wxURLNativeImp *m_nativeImp;
// Creates on the heap and returns a native
// implementation object for the current platform.
static wxURLNativeImp *CreateNativeImpObject();
#endif // wxUSE_URL_NATIVE
wxProtoInfo *m_protoinfo;
wxProtocol *m_protocol;
wxURLError m_error;
wxString m_url;
void Init(const wxString&);
bool ParseURL();
void CleanData();
void Free();
bool FetchProtocol();
friend class wxProtoInfo;
friend class wxURLModule;
private:
DECLARE_DYNAMIC_CLASS(wxURL)
};
#endif // wxUSE_URL
#endif // _WX_URL_H