X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cd560c961a09a8ae80b9c32856e195ed784cc547..fbd8ac5236fa20355e69418f79b0c2aef8aa050e:/src/msw/helpchm.cpp?ds=sidebyside diff --git a/src/msw/helpchm.cpp b/src/msw/helpchm.cpp index 4f26427f28..9e8c8846fa 100644 --- a/src/msw/helpchm.cpp +++ b/src/msw/helpchm.cpp @@ -9,7 +9,7 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "helpchm.h" #endif @@ -25,66 +25,15 @@ #include "wx/filefn.h" #include "wx/msw/helpchm.h" -#include "wx/dynlib.h" +#include "wx/dynload.h" -#include "wx/msw/private.h" - -// instead of including htmlhelp.h, duplicate the things from it we need here +#ifndef WX_PRECOMP + #include "wx/intl.h" + #include "wx/app.h" +#endif -enum -{ - HH_DISPLAY_TOPIC, - HH_DISPLAY_TOC, - HH_DISPLAY_INDEX, - HH_DISPLAY_SEARCH, - HH_SET_WIN_TYPE, - HH_GET_WIN_TYPE, - HH_GET_WIN_HANDLE, - HH_ENUM_INFO_TYPE, - HH_SET_INFO_TYPE, - HH_SYNC, - HH_RESERVED1, - HH_RESERVED2, - HH_RESERVED3, - HH_KEYWORD_LOOKUP, - HH_DISPLAY_TEXT_POPUP, - HH_HELP_CONTEXT, - HH_TP_HELP_CONTEXTMENU, - HH_TP_HELP_WM_HELP, - HH_CLOSE_ALL, - HH_ALINK_LOOKUP, - HH_GET_LAST_ERROR, - HH_ENUM_CATEGORY, - HH_ENUM_CATEGORY_IT, - HH_RESET_IT_FILTER, - HH_SET_INCLUSIVE_FILTER, - HH_SET_EXCLUSIVE_FILTER -}; - -struct HH_POPUP -{ - int cbStruct; - HINSTANCE hinst; - UINT idString; - LPCTSTR pszText; - POINT pt; - COLORREF clrForeground; - COLORREF clrBackground; - RECT rcMargins; - LPCTSTR pszFont; -}; - -struct HH_AKLINK -{ - int cbStruct; - BOOL fReserved; - LPCTSTR pszKeywords; - LPCTSTR pszUrl; - LPCTSTR pszMsgText; - LPCTSTR pszMsgTitle; - LPCTSTR pszWindow; - BOOL fIndexOnFail; -}; +#include "wx/msw/private.h" +#include "wx/msw/missing.h" // ---------------------------------------------------------------------------- // utility functions to manage the loading/unloading @@ -93,10 +42,10 @@ struct HH_AKLINK #ifndef UNICODE typedef HWND ( WINAPI * HTMLHELP )( HWND, LPCSTR, UINT, DWORD ); - #define HTMLHELP_NAME "HtmlHelpA" + #define HTMLHELP_NAME wxT("HtmlHelpA") #else // ANSI typedef HWND ( WINAPI * HTMLHELP )( HWND, LPCWSTR, UINT, DWORD ); - #define HTMLHELP_NAME "HtmlHelpW" + #define HTMLHELP_NAME wxT("HtmlHelpW") #endif // dll symbol handle @@ -109,7 +58,7 @@ static bool LoadHtmlHelpLibrary() if( !lib ) { wxLogError(_("MS HTML Help functions are unavailable because the MS HTML Help library is not installed on this machine. Please install it.")); - return FALSE; + return false; } else { @@ -120,20 +69,19 @@ static bool LoadHtmlHelpLibrary() wxLogError(_("Failed to initialize MS HTML Help.")); lib->UnrefLib(); - return FALSE ; + return false ; } } - return TRUE; + return true; } static void UnloadHtmlHelpLibrary() { if ( gs_htmlHelp ) { - wxPluginManager::UnloadLibrary( _T("HHCTRL.OCX") ); - - gs_htmlHelp = 0; + if (wxPluginManager::UnloadLibrary( _T("HHCTRL.OCX") )) + gs_htmlHelp = 0; } } @@ -151,60 +99,60 @@ bool wxCHMHelpController::Initialize(const wxString& filename) { // warn on failure if( !LoadHtmlHelpLibrary() ) - return FALSE; + return false; m_helpFile = filename; - return TRUE; + return true; } bool wxCHMHelpController::LoadFile(const wxString& file) { if (!file.IsEmpty()) m_helpFile = file; - return TRUE; + return true; } bool wxCHMHelpController::DisplayContents() { - if (m_helpFile.IsEmpty()) return FALSE; + if (m_helpFile.IsEmpty()) return false; wxString str = GetValidFilename(m_helpFile); gs_htmlHelp(GetSuitableHWND(), (const wxChar*) str, HH_DISPLAY_TOPIC, 0L); - return TRUE; + return true; } // Use topic or HTML filename bool wxCHMHelpController::DisplaySection(const wxString& section) { - if (m_helpFile.IsEmpty()) return FALSE; + if (m_helpFile.IsEmpty()) return false; wxString str = GetValidFilename(m_helpFile); // Is this an HTML file or a keyword? - bool isFilename = (section.Find(wxT(".htm")) != -1); + bool isFilename = (section.Find(wxT(".htm")) != wxNOT_FOUND); if (isFilename) gs_htmlHelp(GetSuitableHWND(), (const wxChar*) str, HH_DISPLAY_TOPIC, (DWORD) (const wxChar*) section); else KeywordSearch(section); - return TRUE; + return true; } // Use context number bool wxCHMHelpController::DisplaySection(int section) { - if (m_helpFile.IsEmpty()) return FALSE; + if (m_helpFile.IsEmpty()) return false; wxString str = GetValidFilename(m_helpFile); gs_htmlHelp(GetSuitableHWND(), (const wxChar*) str, HH_HELP_CONTEXT, (DWORD)section); - return TRUE; + return true; } bool wxCHMHelpController::DisplayContextPopup(int contextId) { - if (m_helpFile.IsEmpty()) return FALSE; + if (m_helpFile.IsEmpty()) return false; wxString str = GetValidFilename(m_helpFile); @@ -224,7 +172,7 @@ bool wxCHMHelpController::DisplayContextPopup(int contextId) popup.pszText = NULL; gs_htmlHelp(GetSuitableHWND(), (const wxChar*) str, HH_DISPLAY_TEXT_POPUP, (DWORD) & popup); - return TRUE; + return true; } bool wxCHMHelpController::DisplayTextPopup(const wxString& text, const wxPoint& pos) @@ -241,7 +189,7 @@ bool wxCHMHelpController::DisplayTextPopup(const wxString& text, const wxPoint& popup.pszText = (const wxChar*) text; gs_htmlHelp(GetSuitableHWND(), NULL, HH_DISPLAY_TEXT_POPUP, (DWORD) & popup); - return TRUE; + return true; } bool wxCHMHelpController::DisplayBlock(long block) @@ -249,9 +197,10 @@ bool wxCHMHelpController::DisplayBlock(long block) return DisplaySection(block); } -bool wxCHMHelpController::KeywordSearch(const wxString& k) +bool wxCHMHelpController::KeywordSearch(const wxString& k, + wxHelpSearchMode WXUNUSED(mode)) { - if (m_helpFile.IsEmpty()) return FALSE; + if (m_helpFile.IsEmpty()) return false; wxString str = GetValidFilename(m_helpFile); @@ -266,14 +215,14 @@ bool wxCHMHelpController::KeywordSearch(const wxString& k) link.fIndexOnFail = TRUE ; gs_htmlHelp(GetSuitableHWND(), (const wxChar*) str, HH_KEYWORD_LOOKUP, (DWORD)& link); - return TRUE; + return true; } bool wxCHMHelpController::Quit() { gs_htmlHelp(GetSuitableHWND(), 0, HH_CLOSE_ALL, 0L); - return TRUE; + return true; } // Append extension if necessary.