void HelpBrowser::slotSourceChanged(const QUrl& url) { if (url.toString().contains("#")) return; QString path = url.path().prepend(":"); QFile f(path); QStringList texts; QStringList links; if( f.open( QIODevice::ReadOnly ) ) { QString str; while( !f.atEnd() ) { str = f.readLine(); if (str.contains("<h3>")) { QRegExp regCmd("<a name=\"([^\"]*)\"></a>([^<]*)</h3>"); if (regCmd.indexIn(str) >= 0) { links.append(regCmd.cap(1).prepend(path+"/#")); texts.append(regCmd.cap(2)); } } } f.close(); } emit linkTargets(texts, links); }
void TestCaseCtx::regCmd(const std::string& str_cmdName,CmdProc proc) { TestCommand cmd; cmd.str_cmdName = str_cmdName; cmd.proc = proc; regCmd(cmd); }