X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1e6feb95a79834836e88143b15d9f424ebe79621..dab73021272104a5997f43658831658d8a783474:/src/msw/mimetype.cpp diff --git a/src/msw/mimetype.cpp b/src/msw/mimetype.cpp index 53a0551e81..6ce8557e4e 100644 --- a/src/msw/mimetype.cpp +++ b/src/msw/mimetype.cpp @@ -6,7 +6,7 @@ // 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) ///////////////////////////////////////////////////////////////////////////// #ifdef __GNUG__ @@ -41,7 +41,7 @@ #ifdef __WXMSW__ #include "wx/msw/registry.h" - #include "windows.h" + #include "wx/msw/private.h" #endif // OS #include "wx/msw/mimetype.h" @@ -88,7 +88,7 @@ void wxFileTypeImpl::Init(const wxString& strFileType, const wxString& ext) m_strFileType = strFileType; if ( !strFileType ) { - m_strFileType = m_ext.AfterFirst('.') + "_auto_file"; + m_strFileType = m_ext.AfterFirst('.') + _T("_auto_file"); } } @@ -237,6 +237,9 @@ wxString wxFileTypeImpl::GetCommand(const wxChar *verb) const wxRegKey(wxRegKey::HKCR, strKey + _T("\\Topic")). QueryValue(_T(""), ddeTopic); + if (ddeTopic.IsEmpty()) + ddeTopic = wxT("System"); + // HACK: we use a special feature of wxExecute which exists // just because we need it here: it will establish DDE // conversation with the program it just launched @@ -365,6 +368,7 @@ bool wxFileTypeImpl::GetIcon(wxIcon *icon, int nIndex = wxAtoi(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/... @@ -374,6 +378,8 @@ bool wxFileTypeImpl::GetIcon(wxIcon *icon, default: icon->SetHICON((WXHICON)hIcon); + wxSize size = wxGetHiconSize(hIcon); + icon->SetSize(size); if ( iconIndex ) *iconIndex = nIndex; if ( iconFile )