]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/os2/mimetype.h
Don't infinitely recurse when setting the child focus. Without
[wxWidgets.git] / include / wx / os2 / mimetype.h
index e6a444059336d04a4b1e5c45c199d459740e0d9f..475fb052882bc1273ea1937327d810245fe1d92a 100644 (file)
@@ -1,23 +1,33 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        wx/mimetype.h
+// Name:        wx/os2/mimetype.h
 // Purpose:     classes and functions to manage MIME types
 // Author:      David Webster
 // Modified by:
 // Created:     01.21.99
 // RCS-ID:      $Id$
 // Copyright:   adopted from msw port -- (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__
+    #pragma interface "mimetype.h"
+#endif
+
 #include "wx/defs.h"
 
+#if wxUSE_MIMETYPE
+
 #include "wx/mimetype.h"
 
+// ----------------------------------------------------------------------------
+// wxFileTypeImpl is the OS/2 version of wxFileType, this is a private class
+// and is never used directly by the application
+// ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxFileTypeImpl
+class WXDLLIMPEXP_BASE wxFileTypeImpl
 {
 public:
     // ctor
@@ -40,13 +50,29 @@ public:
     bool GetExtensions(wxArrayString& extensions);
     bool GetMimeType(wxString *mimeType) const;
     bool GetMimeTypes(wxArrayString& mimeTypes) const;
-    bool GetIcon(wxIcon *icon) const;
+    bool GetIcon(wxIconLocation *iconLoc) const;
     bool GetDescription(wxString *desc) const;
     bool GetOpenCommand(wxString *openCmd,
                         const wxFileType::MessageParameters& params) const;
     bool GetPrintCommand(wxString *printCmd,
                          const wxFileType::MessageParameters& params) const;
 
+    size_t GetAllCommands(wxArrayString * verbs, wxArrayString * commands,
+                          const wxFileType::MessageParameters& params) const;
+
+    bool Unassociate();
+
+    // 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);
+
+    // 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)
@@ -60,7 +86,7 @@ private:
 
 
 
-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
@@ -69,11 +95,12 @@ public:
 
     // implement containing class functions
     wxFileType *GetFileTypeFromExtension(const wxString& ext);
+    wxFileType *GetOrAllocateFileTypeFromExtension(const wxString& ext);
     wxFileType *GetFileTypeFromMimeType(const wxString& mimeType);
 
     size_t EnumAllFileTypes(wxArrayString& mimetypes);
 
-    // this are NOPs under Windows
+    // these are NOPs under OS/2
     bool ReadMailcap(const wxString& filename, bool fallback = TRUE)
         { return TRUE; }
     bool ReadMimeTypes(const wxString& filename)
@@ -85,6 +112,7 @@ private:
     wxArrayFileTypeInfo m_fallbacks;
 };
 
+#endif // wxUSE_MIMETYPE
 
 #endif
   //_MIMETYPE_IMPL_H