]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/registry.cpp
no message
[wxWidgets.git] / src / msw / registry.cpp
index b2650bcb6bb876d8135668de6bf02bbe57d8ec8d..114169fad1c7e3510322235e81a9da0f1e7b26a8 100644 (file)
 //              - add high level functions (RegisterOleServer, ...)
 ///////////////////////////////////////////////////////////////////////////////
 
-// ============================================================================
-// declarations
-// ============================================================================
-
-// ----------------------------------------------------------------------------
-// headers
-// ----------------------------------------------------------------------------
+#ifdef __GNUG__
+#pragma implementation "registry.h"
+#endif
 
 // for compilers that support precompilation, includes "wx.h".
 #include  "wx/wxprec.h"
@@ -797,139 +793,3 @@ void RemoveTrailingSeparator(wxString& str)
   if ( !str.IsEmpty() && str.Last() == REG_SEPARATOR )
     str.Truncate(str.Len() - 1);
 }
-
-// ============================================================================
-// global public functions
-// ============================================================================
-
-bool GetExtensionFromMimeType(wxString *pExt, const wxString& strMimeType)
-{
-  // @@@ VZ: I don't know of any official documentation which mentions this
-  //         location, but as a matter of fact IE uses it, so why not we?
-  static const char *szMimeDbase = "MIME\\Database\\Content Type\\";
-
-  wxString strKey = szMimeDbase;
-  strKey << strMimeType;
-
-  // suppress possible error messages
-  wxLogNull nolog;
-  wxRegKey key(wxRegKey::HKCR, strKey);
-  if ( key.Open() ) {
-    if ( key.QueryValue("Extension", *pExt) )
-      return TRUE;
-  }
-
-  // no such MIME type or no extension for it
-  return FALSE;
-}
-
-bool GetMimeTypeFromExtension(wxString *pMimeType, const wxString& strExt)
-{
-  wxCHECK( !strExt.IsEmpty(), FALSE );
-
-  // add the leading point if necessary
-  wxString str;
-  if ( strExt[0] != '.' ) {
-    str = '.';
-  }
-  str << strExt;
-
-  // suppress possible error messages
-  wxLogNull nolog;
-  wxRegKey key(wxRegKey::HKCR, str);
-  if ( key.Open() ) {
-    if ( key.QueryValue("Content Type", *pMimeType) )
-      return TRUE;
-  }
-
-  // no such extension or no content-type
-  return FALSE;
-}
-
-bool GetFileTypeFromExtension(wxString *pFileType, const wxString& strExt)
-{
-  wxCHECK( !strExt.IsEmpty(), FALSE );
-
-  // add the leading point if necessary
-  wxString str;
-  if ( strExt[0] != '.' ) {
-    str = '.';
-  }
-  str << strExt;
-
-  // suppress possible error messages
-  wxLogNull nolog;
-  wxRegKey key(wxRegKey::HKCR, str);
-  if ( key.Open() ) {
-    if ( key.QueryValue("", *pFileType) )  // it's the default value of the key
-      return TRUE;
-  }
-
-  // no such extension or no value
-  return FALSE;
-}
-
-bool GetFileTypeIcon(wxIcon *pIcon, const wxString& strFileType)
-{
-  wxCHECK( !strFileType.IsEmpty(), FALSE );
-
-  wxString strIconKey;
-  strIconKey << strFileType << REG_SEPARATOR << "DefaultIcon";
-
-  // suppress possible error messages
-  wxLogNull nolog;
-  wxRegKey key(wxRegKey::HKCR, strIconKey);
-
-  if ( key.Open() ) {
-    wxString strIcon;
-    if ( key.QueryValue("", strIcon) ) { // it's the default value of the key
-      // the format is the following: <full path to file>, <icon index>
-      // NB: icon index may be negative as well as positive and the full path
-      //     may contain the environment variables inside '%'
-      wxString strFullPath = strIcon.Before(','),
-               strIndex = strIcon.After(',');
-
-      // unless I misunderstand the format (may be index may be ommited, I
-      // don't know)
-      wxASSERT( !(strFullPath.IsEmpty() || strIndex.IsEmpty()) );
-
-      wxString strExpPath = wxExpandEnvVars(strFullPath);
-      int nIndex = atoi(strIndex);
-
-      HICON hIcon = ExtractIcon(GetModuleHandle(NULL), strExpPath, nIndex);
-      switch ( (int)hIcon ) {
-        case 0: // means no icons were found
-        case 1: // means no such file or it wasn't a DLL/EXE/OCX/ICO/...
-          wxLogDebug("incorrect registry entry '%s': no such icon.",
-                     GetFullName(&key));
-          break;
-
-        default:
-          pIcon->SetHICON((WXHICON)hIcon);
-          return TRUE;
-      }
-    }
-  }
-
-  // no such file type or no value or incorrect icon entry
-  return FALSE;
-}
-
-bool GetFileTypeDescription(wxString *pDesc, const wxString& strFileType)
-{
-  wxCHECK( !strFileType.IsEmpty(), FALSE );
-
-  // suppress possible error messages
-  wxLogNull nolog;
-  wxRegKey key(wxRegKey::HKCR, strFileType);
-
-  if ( key.Open() ) {
-    if ( key.QueryValue("", *pDesc) )  // it's the default value of the key
-      return TRUE;
-  }
-
-  // no such file type or no value
-  return FALSE;
-}
-
-