]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/helpbest.cpp
do use the font in DoGetTextExtent()
[wxWidgets.git] / src / msw / helpbest.cpp
index 8de443a243dcd05e9d3408b8e25bdee058f1f61a..3605ea3daccd5f09c89d86889511c452ba814a4d 100644 (file)
@@ -1,18 +1,14 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        helpbest.cpp
+// Name:        src/msw/helpbest.cpp
 // Purpose:     Tries to load MS HTML Help, falls back to wxHTML upon failure
 // Author:      Mattia Barbon
 // Modified by:
 // Created:     02/04/2001
 // RCS-ID:      $Id$
 // Copyright:   (c) Mattia Barbon
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-#pragma implementation "helpbest.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
 #endif
 
 #ifndef WX_PRECOMP
-#include "wx/defs.h"
+    #include "wx/log.h"
 #endif
 
 #include "wx/filefn.h"
 
-#if wxUSE_HELP && wxUSE_MS_HTML_HELP && defined(__WIN95__) && wxUSE_WXHTML_HELP
+#if wxUSE_HELP && wxUSE_MS_HTML_HELP \
+    && wxUSE_WXHTML_HELP && !defined(__WXUNIVERSAL__)
+
 #include "wx/msw/helpchm.h"
 #include "wx/html/helpctrl.h"
 #include "wx/msw/helpbest.h"
 
-IMPLEMENT_DYNAMIC_CLASS( wxBestHelpController, wxHelpControllerBase );
+IMPLEMENT_DYNAMIC_CLASS( wxBestHelpController, wxHelpControllerBase )
 
 bool wxBestHelpController::Initialize( const wxString& filename )
 {
     // try wxCHMHelpController
-    wxCHMHelpController* chm = new wxCHMHelpController;
+    wxCHMHelpController* chm = new wxCHMHelpController(m_parentWindow);
 
     m_helpControllerType = wxUseChmHelp;
     // do not warn upon failure
@@ -45,26 +43,29 @@ bool wxBestHelpController::Initialize( const wxString& filename )
     if( chm->Initialize( GetValidFilename( filename ) ) )
     {
         m_helpController = chm;
-        return TRUE;
+        m_parentWindow = NULL;
+        return true;
     }
 
     // failed
     delete chm;
 
     // try wxHtmlHelpController
-    wxHtmlHelpController* html = new wxHtmlHelpController;
+    wxHtmlHelpController *
+        html = new wxHtmlHelpController(m_style, m_parentWindow);
 
     m_helpControllerType = wxUseHtmlHelp;
     if( html->Initialize( GetValidFilename( filename ) ) )
     {
         m_helpController = html;
-        return TRUE;
+        m_parentWindow = NULL;
+        return true;
     }
 
     // failed
     delete html;
 
-    return FALSE;
+    return false;
 }
 
 wxString wxBestHelpController::GetValidFilename( const wxString& filename ) const
@@ -74,29 +75,29 @@ wxString wxBestHelpController::GetValidFilename( const wxString& filename ) cons
 
     switch( m_helpControllerType )
     {
-    case wxUseChmHelp:
-        if( ::wxFileExists( tmp + ".chm" ) )
-            return tmp + ".chm";
-
-        return filename;
-        break;
-    case wxUseHtmlHelp:
-        if( ::wxFileExists( tmp + ".htb" ) )
-            return tmp + ".htb";
-        if( ::wxFileExists( tmp + ".zip" ) )
-            return tmp + ".zip";
-        if( ::wxFileExists( tmp + ".hhp" ) )
-            return tmp + ".hhp";
-
-        return filename;
-        break;
-    default:
-        // we CAN'T get here
-        wxFAIL_MSG( "wxBestHelpController: Must call Initialize, first!" );
-        return wxEmptyString;
-        break;
+        case wxUseChmHelp:
+            if( ::wxFileExists( tmp + wxT(".chm") ) )
+                return tmp + wxT(".chm");
+
+            return filename;
+
+        case wxUseHtmlHelp:
+            if( ::wxFileExists( tmp + wxT(".htb") ) )
+                return tmp + wxT(".htb");
+            if( ::wxFileExists( tmp + wxT(".zip") ) )
+                return tmp + wxT(".zip");
+            if( ::wxFileExists( tmp + wxT(".hhp") ) )
+                return tmp + wxT(".hhp");
+
+            return filename;
+
+        default:
+            // we CAN'T get here
+            wxFAIL_MSG( wxT("wxBestHelpController: Must call Initialize, first!") );
     }
+
+    return wxEmptyString;
 }
 
 #endif
-    // wxUSE_HELP && wxUSE_MS_HTML_HELP && defined(__WIN95__) && wxUSE_WXHTML_HELP
+    // wxUSE_HELP && wxUSE_MS_HTML_HELP && wxUSE_WXHTML_HELP