void HelpPlugin::OnAttach() { // load configuration (only saved in our config dialog) HelpCommon::LoadHelpFilesVector(m_Vector); const wxString man_prefix = _T("man:"); wxString all_man_dirs(man_prefix); for (HelpCommon::HelpFilesVector::const_iterator i = m_Vector.begin(); i != m_Vector.end(); ++i) { if (i->second.name.Mid(0, man_prefix.size()).CmpNoCase(man_prefix) == 0) { // only add ; if a dir is already set if (all_man_dirs.Length() > man_prefix.Length()) { all_man_dirs += _T(";"); } all_man_dirs += i->second.name.Mid(man_prefix.Length()); } } wxBitmap zoominbmp = wxXmlResource::Get()->LoadBitmap(_T("ZoomInBitmap")); wxBitmap zoomoutbmp = wxXmlResource::Get()->LoadBitmap(_T("ZoomOutBitmap")); m_manFrame = new MANFrame(Manager::Get()->GetAppWindow(), wxID_ANY, zoominbmp, zoomoutbmp); m_manFrame->SetDirs(all_man_dirs); CodeBlocksDockEvent evt(cbEVT_ADD_DOCK_WINDOW); evt.name = _T("MANViewer"); evt.title = _("Man/Html pages viewer"); evt.pWindow = m_manFrame; evt.dockSide = CodeBlocksDockEvent::dsRight; evt.desiredSize.Set(320, 240); evt.floatingSize.Set(320, 240); evt.minimumSize.Set(240, 160); Manager::Get()->ProcessEvent(evt); int baseFont = Manager::Get()->GetConfigManager(_T("help_plugin"))->ReadInt(_T("/base_font_size"), 0); if (baseFont > 0) { m_manFrame->SetBaseFontSize(baseFont); } if (Manager::Get()->GetConfigManager(_T("help_plugin"))->ReadBool(_T("/show_man_viewer"), false)) { ShowMANViewer(); } }
void HelpPlugin::SetManPageDirs(MANFrame *manFrame) { const wxString man_prefix = _T("man:"); wxString all_man_dirs(man_prefix); for (HelpCommon::HelpFilesVector::const_iterator i = m_Vector.begin(); i != m_Vector.end(); ++i) { if (i->second.name.Mid(0, man_prefix.size()).CmpNoCase(man_prefix) == 0) { // only add ; if a dir is already set if (all_man_dirs.Length() > man_prefix.Length()) all_man_dirs += _T(";"); all_man_dirs += i->second.name.Mid(man_prefix.Length()); } } manFrame->SetDirs(all_man_dirs); }