From c481c28b0a534a9db625f5c427e79d98dc4ca39d Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Thu, 1 May 2008 13:11:17 +0000 Subject: better file loading git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1636 17fca916-40b9-46aa-a4ea-0a15b648b75c --- src/modules/help/helpwidget.cpp | 6 +++--- src/modules/help/libkvihelp.cpp | 28 ++++++++++++++++++++-------- 2 files changed, 23 insertions(+), 11 deletions(-) (limited to 'src/modules/help') diff --git a/src/modules/help/helpwidget.cpp b/src/modules/help/helpwidget.cpp index cf4e7f408..9824ac238 100644 --- a/src/modules/help/helpwidget.cpp +++ b/src/modules/help/helpwidget.cpp @@ -69,9 +69,9 @@ KviHelpWidget::KviHelpWidget(QWidget * par,KviFrame * lpFrm,bool bIsStandalone) connect(m_pBtnForward,SIGNAL(clicked()),m_pTextBrowser,SLOT(forward())); m_pBtnForward->setEnabled(false); //m_pBtnForward->setUsesBigPixmap(true); - + QWidget* pSpacer=new QWidget(m_pToolBar); - + if(bIsStandalone) { QToolButton * b = new KviStyledToolButton(m_pToolBar); @@ -130,7 +130,7 @@ QSize KviHelpWidget::sizeHint() const bool KviHelpWidget::eventFilter(QObject * o, QEvent *e) { QClipboard *cb = QApplication::clipboard(); - + if(e->type() == QEvent::MouseButtonRelease) { if(m_pTextBrowser->hasSelectedText()) { cb->setText(m_pTextBrowser->selectedText()); diff --git a/src/modules/help/libkvihelp.cpp b/src/modules/help/libkvihelp.cpp index d0da3456e..8b9dc080a 100644 --- a/src/modules/help/libkvihelp.cpp +++ b/src/modules/help/libkvihelp.cpp @@ -98,7 +98,7 @@ KviPointerList * g_pHelpWindowList = 0; /* #ifdef COMPILE_NEW_KVS static bool help_kvs_cmd_search(KviKvsModuleCommandCall * c) -{ +{ } #endif */ @@ -142,15 +142,26 @@ static bool help_kvs_cmd_open(KviKvsModuleCommandCall * c) g_pApp->getGlobalKvircDirectory(szHelpDir,KviApp::Help); if(doc.isEmpty()){ - doc = szHelpDir + "\\index.html"; + doc = szHelpDir + "/index.html"; qDebug ("No file, use default at path %s",doc.toUtf8().data()); } else qDebug("Doc set from user to %s",doc.toUtf8().data()); QFileInfo * f= new QFileInfo(doc); - debug("Path %d",doc.toUtf8().data()); + qDebug("Path %s",doc.toUtf8().data()); if(f) { - if(!f->exists()) doc = szHelpDir + "/nohelpavailable.html"; + if(!f->exists()) + { + doc = szHelpDir + "/" + doc; + qDebug("No abs path, trying relative path: %s",doc.toUtf8().data()); + f->setFile(doc); + } + if(!f->exists()) + { + doc = szHelpDir + "/nohelpavailable.html"; + qDebug("No rel path, defaulting to error page: %s",doc.toUtf8().data()); + f->setFile(doc); + } } if(!c->switches()->find('n',"new")) @@ -162,7 +173,7 @@ static bool help_kvs_cmd_open(KviKvsModuleCommandCall * c) return true; } } - if(c->switches()->find('m',"mdi")) + if(c->switches()->find('m',"mdi")) { KviHelpWindow *w = new KviHelpWindow(c->window()->frame(),"Help browser"); w->textBrowser()->setSource(QUrl(doc)); @@ -173,19 +184,20 @@ static bool help_kvs_cmd_open(KviKvsModuleCommandCall * c) w->textBrowser()->setSource(QUrl(doc)); w->show(); } + return true; } static bool help_module_init(KviModule * m) { QString szHelpDir,szDocList; - + g_pApp->getLocalKvircDirectory(szDocList,KviApp::Help,"help.doclist." KVI_SOURCES_DATE); g_pApp->getGlobalKvircDirectory(szHelpDir,KviApp::Help); - + g_pDocIndex = new Index(szHelpDir,szDocList); g_pDocIndex->setDocListFile(szDocList); - + g_pApp->getLocalKvircDirectory(szHelpDir,KviApp::Help,"help.dict." KVI_SOURCES_DATE); g_pDocIndex->setDictionaryFile(szHelpDir); -- cgit v1.3.1-10-gc9f91