X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e90c1d2a19361551eb07778280f22be3e759cf64..94e2ed3b8db0220160c0b939782cd46914ec073a:/src/generic/helpext.cpp diff --git a/src/generic/helpext.cpp b/src/generic/helpext.cpp index 56a293ca42..8f6276fb25 100644 --- a/src/generic/helpext.cpp +++ b/src/generic/helpext.cpp @@ -36,10 +36,14 @@ #include #include -#ifndef __WINDOWS__ +#if !defined(__WINDOWS__) && !defined(__OS2__) #include #endif +#ifdef __WXMSW__ +#include +#endif + IMPLEMENT_CLASS(wxExtHelpController, wxHTMLHelpControllerBase) /** @@ -77,15 +81,15 @@ void wxExtHelpController::SetViewer(const wxString& viewer, long flags) } bool -wxExtHelpController::DisplayHelp(wxString const &relativeURL) +wxExtHelpController::DisplayHelp(const wxString &relativeURL) { wxBusyCursor b; // display a busy cursor -#ifdef __WXMSW__ +#if defined(__WXMSW__) wxString url; url << m_MapFile << '\\' << relativeURL.BeforeFirst('#'); - bool bOk = (int)ShellExecute(NULL, "open", url, + bool bOk = (int)ShellExecute(NULL, wxT("open"), url.c_str(), NULL, NULL, SW_SHOWNORMAL ) > 32; if ( !bOk ) { @@ -94,6 +98,19 @@ wxExtHelpController::DisplayHelp(wxString const &relativeURL) } else return true; +#elif defined(__WXPM__) + wxString url; + url << m_MapFile << '\\' << relativeURL.BeforeFirst('#'); +// will have to fix for OS/2, later.....DW +// bool bOk = (int)ShellExecute(NULL, "open", url, +// NULL, NULL, SW_SHOWNORMAL ) > 32; +// if ( !bOk ) +// { +// wxLogSysError(_("Cannot open URL '%s'"), relativeURL.c_str()); +// return false; +// } +// else + return TRUE; #else // assume UNIX wxString command; @@ -102,23 +119,29 @@ wxExtHelpController::DisplayHelp(wxString const &relativeURL) { wxString lockfile; wxGetHomeDir(&lockfile); - lockfile << WXEXTHELP_SEPARATOR << T(".netscape/lock"); +#ifdef __VMS__ + lockfile << WXEXTHELP_SEPARATOR << wxT(".netscape]lock."); + struct stat statbuf; + if(stat(lockfile.fn_str(), &statbuf) == 0) +#else + lockfile << WXEXTHELP_SEPARATOR << wxT(".netscape/lock"); struct stat statbuf; if(lstat(lockfile.fn_str(), &statbuf) == 0) // cannot use wxFileExists, because it's a link pointing to a // non-existing location if(wxFileExists(lockfile)) - { +#endif + { long success; - command << m_BrowserName << T(" -remote openURL(") - << T("file://") << m_MapFile - << WXEXTHELP_SEPARATOR << relativeURL << T(")"); + command << m_BrowserName << wxT(" -remote openURL(") + << wxT("file://") << m_MapFile + << WXEXTHELP_SEPARATOR << relativeURL << wxT(")"); success = wxExecute(command); if(success != 0 ) // returns PID on success return TRUE; } } command = m_BrowserName; - command << T(" file://") + command << wxT(" file://") << m_MapFile << WXEXTHELP_SEPARATOR << relativeURL; return wxExecute(command) != 0; #endif