X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a6c65e881e42bfed000fbcac31ac8c1db2729152..02cecc4dc2c07b3e4b109edf44c4c87a2fed87d9:/include/wx/msw/mimetype.h diff --git a/include/wx/msw/mimetype.h b/include/wx/msw/mimetype.h index d931a52d4f..f93b67c5bf 100644 --- a/include/wx/msw/mimetype.h +++ b/include/wx/msw/mimetype.h @@ -6,18 +6,16 @@ // Created: 23.09.98 // RCS-ID: $Id$ // Copyright: (c) 1998 Vadim Zeitlin -// Licence: wxWindows license (part of wxExtra library) +// Licence: wxWindows licence (part of wxExtra library) ///////////////////////////////////////////////////////////////////////////// #ifndef _MIMETYPE_IMPL_H #define _MIMETYPE_IMPL_H -#ifdef __GNUG__ - #pragma interface "mimetype.h" -#endif - #include "wx/defs.h" +#if wxUSE_MIMETYPE + #include "wx/mimetype.h" // ---------------------------------------------------------------------------- @@ -25,7 +23,7 @@ // and is never used directly by the application // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxFileTypeImpl +class WXDLLIMPEXP_BASE wxFileTypeImpl { public: // ctor @@ -42,7 +40,7 @@ public: bool GetExtensions(wxArrayString& extensions); bool GetMimeType(wxString *mimeType) const; bool GetMimeTypes(wxArrayString& mimeTypes) const; - bool GetIcon(wxIcon *icon, wxString *sCommand = NULL, int *iIndex = NULL) const; + bool GetIcon(wxIconLocation *iconLoc) const; bool GetDescription(wxString *desc) const; bool GetOpenCommand(wxString *openCmd, const wxFileType::MessageParameters& params) const; @@ -54,36 +52,43 @@ public: bool Unassociate(); - // these methods are not publicly accessible (as wxMimeTypesManager - // doesn't know about them), and generally not very useful - they could be - // removed in the (near) future - bool SetCommand(const wxString& cmd, const wxString& verb, + // set an arbitrary command, ask confirmation if it already exists and + // overwriteprompt is true + bool SetCommand(const wxString& cmd, + const wxString& verb, bool overwriteprompt = true); - bool SetMimeType(const wxString& mimeType); + bool SetDefaultIcon(const wxString& cmd = wxEmptyString, int index = 0); - bool RemoveOpenCommand(); - bool RemoveCommand(const wxString& verb); - bool RemoveMimeType(); - bool RemoveDefaultIcon(); + // this is called by Associate + bool SetDescription (const wxString& desc); private: // helper function: reads the command corresponding to the specified verb // from the registry (returns an empty string if not found) - wxString GetCommand(const wxChar *verb) const; + wxString GetCommand(const wxString& verb) const; // get the registry path for the given verb wxString GetVerbPath(const wxString& verb) const; // check that the registry key for our extension exists, create it if it - // doesn't, return FALSE if this failed + // doesn't, return false if this failed bool EnsureExtKeyExists(); wxString m_strFileType, // may be empty m_ext; + + // these methods are not publicly accessible (as wxMimeTypesManager + // doesn't know about them), and should only be called by Unassociate + + bool RemoveOpenCommand(); + bool RemoveCommand(const wxString& verb); + bool RemoveMimeType(); + bool RemoveDefaultIcon(); + bool RemoveDescription(); }; -class WXDLLEXPORT wxMimeTypesManagerImpl +class WXDLLIMPEXP_BASE wxMimeTypesManagerImpl { public: // nothing to do here, we don't load any data but just go and fetch it from @@ -92,17 +97,11 @@ public: // implement containing class functions wxFileType *GetFileTypeFromExtension(const wxString& ext); - wxFileType *GetOrAllocateFileTypeFromExtension(const wxString& ext) ; + wxFileType *GetOrAllocateFileTypeFromExtension(const wxString& ext); wxFileType *GetFileTypeFromMimeType(const wxString& mimeType); size_t EnumAllFileTypes(wxArrayString& mimetypes); - // this are NOPs under Windows - bool ReadMailcap(const wxString& filename, bool fallback = TRUE) - { return TRUE; } - bool ReadMimeTypes(const wxString& filename) - { return TRUE; } - // create a new filetype association wxFileType *Associate(const wxFileTypeInfo& ftInfo); @@ -110,6 +109,7 @@ public: wxFileType *CreateFileType(const wxString& filetype, const wxString& ext); }; +#endif // wxUSE_MIMETYPE #endif //_MIMETYPE_IMPL_H