diff options
| author | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
|---|---|---|
| committer | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
| commit | 7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch) | |
| tree | 4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/sctextbrowser.cpp | |
| download | scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip | |
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/sctextbrowser.cpp')
| -rw-r--r-- | scribus/sctextbrowser.cpp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/scribus/sctextbrowser.cpp b/scribus/sctextbrowser.cpp new file mode 100644 index 0000000..2989fb6 --- /dev/null +++ b/scribus/sctextbrowser.cpp @@ -0,0 +1,55 @@ +/* +For general Scribus (>=1.3.2) copyright and licensing information please refer +to the COPYING file provided with the program. Following this notice may exist +a copyright and/or license notice that predates the release of Scribus 1.3.2 +for which a new license (GPL+exception) is in place. +*/ + +#include <QApplication> +#include <QCursor> +#include <QFileDialog> +#include <QFileInfo> +#include <QMessageBox> +#include <QProcess> +#include <QString> +#include <QStringList> +#include <QToolTip> +#include <QUrl> + +#if defined(_WIN32) +#include <windows.h> +#include <shellapi.h> +#endif + +#include "prefsmanager.h" +#include "sctextbrowser.h" +#include "urllauncher.h" + +ScTextBrowser::ScTextBrowser( QWidget * parent ) + : QTextBrowser(parent) +{ + setOpenLinks(false); + connect(this, SIGNAL(highlighted(const QString &)), this, SLOT(hoverMouse(const QString &))); + connect(this, SIGNAL(anchorClicked(const QUrl &)), this, SLOT(navigateOverride(const QUrl &))); +} + +void ScTextBrowser::hoverMouse(const QString &link) +{ + if (link.isEmpty()) + qApp->changeOverrideCursor(QCursor(Qt::ArrowCursor)); + else + { + qApp->changeOverrideCursor(QCursor(Qt::PointingHandCursor)); +// Add this back in if we want links to show in tooltips +// QToolTip::showText(QCursor::pos(), link); + } + emit overLink(link); +} + +void ScTextBrowser::navigateOverride(const QUrl & link) +{ + if (link.scheme()=="http") + UrlLauncher::instance()->launchUrlExt(link, parentWidget()); + else + setSource(link); +} |
