X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2e907fab47d506f5c8096b4a7675d9bd4216320e..a452af5e682893eb97b15cde1e63a09fd02e5931:/include/wx/protocol/ftp.h diff --git a/include/wx/protocol/ftp.h b/include/wx/protocol/ftp.h index b9194c7db1..c76355b1da 100644 --- a/include/wx/protocol/ftp.h +++ b/include/wx/protocol/ftp.h @@ -7,17 +7,20 @@ // Created: 07/07/1997 // RCS-ID: $Id$ // Copyright: (c) 1997, 1998 Guilhem Lavaux -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef __WX_FTP_H__ #define __WX_FTP_H__ -#ifdef __GNUG__ -#pragma interface +#if defined(__GNUG__) && !defined(__APPLE__) + #pragma interface "ftp.h" #endif -#include "wx/object.h" +#include "wx/defs.h" + +#if wxUSE_PROTOCOL_FTP + #include "wx/sckaddr.h" #include "wx/protocol/protocol.h" #include "wx/url.h" @@ -27,6 +30,7 @@ class WXDLLEXPORT wxFTP : public wxProtocol public: enum TransferMode { + NONE, // not set by user explicitly ASCII, BINARY }; @@ -77,6 +81,16 @@ public: bool Rename(const wxString& src, const wxString& dst); bool RmFile(const wxString& path); + // Get the size of a file in the current dir. + // this function tries its best to deliver the size in bytes using BINARY + // (the SIZE command reports different sizes depending on whether + // type is set to ASCII or BINARY) + // returns -1 if file is non-existant or size could not be found + int GetFileSize(const wxString& fileName); + + // Check to see if a file exists in the current dir + bool FileExists(const wxString& fileName); + // Download methods bool Abort(); @@ -106,7 +120,7 @@ public: const wxString& wildcard = wxEmptyString, bool details = FALSE); -#ifdef WXWIN_COMPATIBILITY_2 +#if WXWIN_COMPATIBILITY_2 // deprecated wxList *GetList(const wxString& wildcard, bool details = FALSE); #endif // WXWIN_COMPATIBILITY_2 @@ -135,8 +149,9 @@ protected: // true if there is an FTP transfer going on bool m_streaming; - // true if the user had set the transfer mode - bool m_modeSet; + // although this should be set to ASCII by default according to STD9, + // we will use BINARY transfer mode by default for backwards compatibility + TransferMode m_currentTransfermode; friend class wxInputFTPStream; friend class wxOutputFTPStream; @@ -145,4 +160,10 @@ protected: DECLARE_PROTOCOL(wxFTP) }; +// the trace mask used by assorted wxLogTrace() in ftp code, do +// wxLog::AddTraceMask(FTP_TRACE_MASK) to see them in output +#define FTP_TRACE_MASK _T("ftp") + +#endif // wxUSE_PROTOCOL_FTP + #endif // __WX_FTP_H__