]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/mimetype.h
Fixed to work with the new wxMacControl system.
[wxWidgets.git] / include / wx / msw / mimetype.h
index d931a52d4f374c6857df4d3ce3b8c58a06583c00..041ddcfd585c0b7ba5b4ea66ce2961c142f8e587 100644 (file)
@@ -6,18 +6,20 @@
 // Created:     23.09.98
 // RCS-ID:      $Id$
 // Copyright:   (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
-// 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(NO_GCC_PRAGMA)
     #pragma interface "mimetype.h"
 #endif
 
 #include "wx/defs.h"
 
+#if wxUSE_MIMETYPE
+
 #include "wx/mimetype.h"
 
 // ----------------------------------------------------------------------------
@@ -25,7 +27,7 @@
 // and is never used directly by the application
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxFileTypeImpl
+class WXDLLIMPEXP_BASE wxFileTypeImpl
 {
 public:
     // ctor
@@ -42,7 +44,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,18 +56,16 @@ 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,
-                    bool overwriteprompt = true);
-    bool SetMimeType(const wxString& mimeType);
+    // 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 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
@@ -81,9 +81,18 @@ private:
 
     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,15 +101,15 @@ 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)
+    bool ReadMailcap(const wxString& WXUNUSED(filename), bool WXUNUSED(fallback) = TRUE)
         { return TRUE; }
-    bool ReadMimeTypes(const wxString& filename)
+    bool ReadMimeTypes(const wxString& WXUNUSED(filename))
         { return TRUE; }
 
     // create a new filetype association
@@ -110,6 +119,7 @@ public:
     wxFileType *CreateFileType(const wxString& filetype, const wxString& ext);
 };
 
+#endif // wxUSE_MIMETYPE
 
 #endif
   //_MIMETYPE_IMPL_H