X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2b813b73cd79cfb4d275e9628811f379e8c5ee39..ef094fa075bc56bcbc33b12159c395ea28afda3b:/include/wx/unix/mimetype.h diff --git a/include/wx/unix/mimetype.h b/include/wx/unix/mimetype.h index 5da7269081..a15f76f881 100644 --- a/include/wx/unix/mimetype.h +++ b/include/wx/unix/mimetype.h @@ -1,18 +1,18 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: unix/mimetype.h +// Name: wx/unix/mimetype.h // Purpose: classes and functions to manage MIME types // Author: Vadim Zeitlin // Modified by: // 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__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "mimetype.h" #endif @@ -20,9 +20,9 @@ #if (wxUSE_FILE && wxUSE_TEXTFILE) -class wxMimeArrayString; +class wxMimeTypeCommands; -WX_DEFINE_ARRAY(wxMimeArrayString *, wxArrayTypeEntries); +WX_DEFINE_ARRAY(wxMimeTypeCommands *, wxMimeCommandsArray); // this is the real wxMimeTypesManager for Unix class WXDLLEXPORT wxMimeTypesManagerImpl @@ -33,7 +33,7 @@ public: ~wxMimeTypesManagerImpl(); // load all data into memory - done when it is needed for the first time - void Initialize(int mailcapStyles, + void Initialize(int mailcapStyles = wxMAILCAP_ALL, const wxString& extraDir = wxEmptyString); // and delete the data here @@ -86,7 +86,7 @@ private: m_aIcons; // Icon filenames // verb=command pairs for this file type - wxArrayTypeEntries m_aEntries; + wxMimeCommandsArray m_aEntries; // are we initialized? bool m_initialized; @@ -98,9 +98,11 @@ private: wxString GetCommand(const wxString &verb, size_t nIndex) const; // read Gnome files - void LoadGnomeDataFromKeyFile(const wxString& filename); + void LoadGnomeDataFromKeyFile(const wxString& filename, + const wxArrayString& dirs); void LoadGnomeMimeTypesFromMimeFile(const wxString& filename); - void LoadGnomeMimeFilesFromDir(const wxString& dirbase); + void LoadGnomeMimeFilesFromDir(const wxString& dirbase, + const wxArrayString& dirs); void GetGnomeMimeInfo(const wxString& sExtraDir); // write gnome files @@ -130,18 +132,22 @@ private: bool WriteToMimeTypes (int index, bool delete_index); bool WriteToNSMimeTypes (int index, bool delete_index); + // ReadMailcap() helper + bool ProcessOtherMailcapField(struct MailcapLineData& data, + const wxString& curField); + // functions used to do associations int AddToMimeData(const wxString& strType, const wxString& strIcon, - wxMimeArrayString *entry, + wxMimeTypeCommands *entry, const wxArrayString& strExtensions, const wxString& strDesc, bool replaceExisting = TRUE); bool DoAssociation(const wxString& strType, const wxString& strIcon, - wxMimeArrayString *entry, + wxMimeTypeCommands *entry, const wxArrayString& strExtensions, const wxString& strDesc);