void SplashDialog::OnButton_Logo(wxCommandEvent& event) { #if (AUDACITY_BRANDING == BRAND_AUDACITY) wxHtmlLinkInfo link(AUDACITY_URL); #else wxHtmlLinkInfo link(AUDACITY_BRANDING_BRANDURL); #endif OpenInDefaultBrowser(link); mButton_Logo->PopUp(); }
void LinkingHtmlWindow::OnLinkClicked(const wxHtmlLinkInfo& link) { wxString href = link.GetHref(); if( href.StartsWith(wxT("innerlink:")) ) { this->SetPage( HelpText( href.Mid( 10 ))); this->GetParent()->SetLabel( TitleText( href.Mid( 10 ))); return; } OpenInDefaultBrowser(link); }
void LinkingHtmlWindow::OnLinkClicked(const wxHtmlLinkInfo& link) { wxString href = link.GetHref(); if( href.StartsWith(wxT("innerlink:")) ) { wxString FileName = wxFileName( FileNames::HtmlHelpDir(), href.Mid( 10 ) + wxT(".htm") ).GetFullPath(); if( wxFileExists( FileName ) ) { HelpSystem::ShowHelpDialog(NULL, FileName, wxT("")); return; } else { SetPage( HelpText( href.Mid( 10 ))); wxGetTopLevelParent(this)->SetLabel( TitleText( href.Mid( 10 ))); } } else if( href.StartsWith(wxT("mailto:")) || href.StartsWith(wxT("file:")) ) { OpenInDefaultBrowser( link ); return; } else if( !href.StartsWith( wxT("http:")) && !href.StartsWith( wxT("https:")) ) { HtmlWindow::OnLinkClicked( link ); } else { OpenInDefaultBrowser(link); return; } BrowserFrame * pDlg = wxDynamicCast( GetRelatedFrame(), BrowserFrame ); if( pDlg ) { pDlg->UpdateButtons(); }; }
void ErrorDialog::OnHelp(wxCommandEvent & WXUNUSED(event)) { if( dhelpURL.StartsWith(wxT("innerlink:")) ) { HelpSystem::ShowHtmlText( this, TitleText(dhelpURL.Mid( 10 ) ), HelpText( dhelpURL.Mid( 10 )), false, true ); return; } OpenInDefaultBrowser( dhelpURL ); if(dClose) EndModal(true); }
void HelpSystem::ShowHelpDialog(wxWindow *parent, const wxString &localFileName, const wxString &remoteURL, bool bModal) { AudacityProject * pProj = GetActiveProject(); wxString HelpMode = wxT("Local"); if( pProj ) { HelpMode = pProj->mHelpPref; // these next lines are for legacy cfg files (pre 2.0) where we had different modes if( (HelpMode == wxT("Standard")) || (HelpMode == wxT("InBrowser")) ) { HelpMode = wxT("Local"); pProj->mHelpPref = HelpMode; gPrefs->Write(wxT("/GUI/Help"), HelpMode); gPrefs->Flush(); } } // Anchors (URLs with a '#' in them) are not supported by many OSs for local file names // See, for example, https://groups.google.com/forum/#!topic/wx-users/pC0uOZJalRQ // Problems have been reported on Win, Mac and some versions of Linux. // So we set HelpMode to use the internet if an anchor is found. if (localFileName.Find('#', true) != wxNOT_FOUND) HelpMode = wxT("FromInternet"); // Until a solution is found for this, the next few lines are irrelevant. // Obtain the local file system file name, without the anchor if present. wxString localfile; if (localFileName.Find('#', true) != wxNOT_FOUND) localfile = localFileName.BeforeLast('#'); else localfile = localFileName; if( (HelpMode == wxT("FromInternet")) && !remoteURL.IsEmpty() ) { // Always go to remote URL. Use External browser. OpenInDefaultBrowser( remoteURL ); } else if( !wxFileExists( localfile )) { // If you give an empty remote URL, you should have already ensured // that the file exists! wxASSERT( !remoteURL.IsEmpty() ); // I can't find it'. // Use Built-in browser to suggest you use the remote url. wxString Text = HelpText( wxT("remotehelp") ); Text.Replace( wxT("*URL*"), remoteURL ); ShowHtmlText( parent, _("Help on the Internet"), Text, false, bModal ); } else if( HelpMode == wxT("Local") ) { // Local file, External browser OpenInDefaultBrowser( wxString(wxT("file:"))+localFileName ); } else { // Local file, Built-in browser ShowHtmlText( parent, wxT(""), localFileName, true, bModal ); } }