void mmHelpPanel::CreateControls()
{    
    wxBoxSizer* itemBoxSizer2 = new wxBoxSizer(wxVERTICAL);
    this->SetSizer(itemBoxSizer2);

    wxPanel* itemPanel3 = new wxPanel(this, wxID_ANY
        , wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL);
    itemBoxSizer2->Add(itemPanel3, 0, wxGROW | wxALL, 5);

    wxBoxSizer* itemBoxSizerHeader = new wxBoxSizer(wxHORIZONTAL);
    itemPanel3->SetSizer(itemBoxSizerHeader);

    wxButton* buttonBack     = new wxButton(itemPanel3, wxID_BACKWARD, _("&Back"));
    wxButton* buttonFordward = new wxButton(itemPanel3, wxID_FORWARD, _("&Forward") );

    wxString helpHeader = wxString::Format(_("%1$s - %2$s"), mmex::getProgramName(), _("Help"));
    wxStaticText* itemStaticText9 = new wxStaticText(itemPanel3, wxID_ANY
        , helpHeader);
    itemStaticText9->SetFont(this->GetFont().Larger().Bold());

    itemBoxSizerHeader->Add(buttonBack, 0, wxLEFT, 5);
    itemBoxSizerHeader->Add(buttonFordward, 0, wxLEFT | wxRIGHT, 5);
    itemBoxSizerHeader->Add(itemStaticText9, 0, wxLEFT | wxTOP, 5);

    browser_ = wxWebView::New(this, wxID_ANY);
    itemBoxSizer2->Add(browser_, 1, wxGROW | wxALL, 1);
    
    /**************************************************************************
    Allows help files for a specific language.

    Main default help file name: ./help/index.html
    Default filename names can be found in mmex::getPathDoc(fileIndex)
    
    Language files now reside in their own language subdirectory in ./help/
    example: russian language - changed to: ./help/russian/index.html

    Default help files will be used when the language help file are not found.
    **************************************************************************/
    int helpFileIndex = m_frame->getHelpFileIndex();
 
    wxFileName helpIndexFile(mmex::getPathDoc((mmex::EDocFile)helpFileIndex));
    if (Option::instance().Language() != "english" && Option::instance().Language() != "")
    {
        helpIndexFile.AppendDir(Option::instance().Language());
    }
    wxString url = "file://" + mmex::getPathDoc((mmex::EDocFile)helpFileIndex);
    if (helpIndexFile.FileExists()) // Load the help file for the given language
    {
        url = "file://" + helpIndexFile.GetPathWithSep() + helpIndexFile.GetFullName();
    }
    browser_->LoadURL(url);
    wxLogDebug("%s", url);
}
Пример #2
0
void mmAppStartDialog::OnButtonAppstartHelpClick( wxCommandEvent& /*event*/ )
{
    int helpFileIndex_ = mmex::HTML_INDEX;
    wxFileName helpIndexFile(mmex::getPathDoc((mmex::EDocFile)helpFileIndex_));
    wxString url = "file://";

    if (mmOptions::instance().language_ != "english") helpIndexFile.AppendDir(mmOptions::instance().language_);

    if (helpIndexFile.FileExists()) // Load the help file for the given language
    {
        url << (helpIndexFile.GetPathWithSep() + helpIndexFile.GetFullName());
    }
    else // load the default help file
    {
        url << (mmex::getPathDoc((mmex::EDocFile)helpFileIndex_));
    }
    wxLaunchDefaultBrowser(url);
}