From kde-commits Tue Feb 03 00:31:34 2009 From: Torsten Rahn Date: Tue, 03 Feb 2009 00:31:34 +0000 To: kde-commits Subject: KDE/kdeedu/marble/src/lib Message-Id: <1233621094.684432.12129.nullmailer () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=123362110730612 SVN commit 920484 by rahn: - WebKit patch by Simon Hausmann M +2 -2 CMakeLists.txt M +1 -1 PlaceMarkInfoDialog.ui M +46 -2 TinyWebBrowser.cpp M +35 -6 TinyWebBrowser.h --- trunk/KDE/kdeedu/marble/src/lib/CMakeLists.txt #920483:920484 @@ -199,10 +199,10 @@ # link with release version of Qt libs if (QTONLY) ADD_LIBRARY(marblewidget SHARED ${marblewidget_SRCS} ${SOURCES_UI_HDRS}) - TARGET_LINK_LIBRARIES (marblewidget ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTSVG_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ${QT_QTMAIN_LIBRARY} ) + TARGET_LINK_LIBRARIES (marblewidget ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTSVG_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ${QT_QTMAIN_LIBRARY} ${QT_QTWEBKIT_LIBRARY} ) else (QTONLY) KDE4_ADD_LIBRARY(marblewidget SHARED ${marblewidget_SRCS} ${SOURCES_UI_HDRS}) - TARGET_LINK_LIBRARIES (marblewidget ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTSVG_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${KDE4_KDECORE_LIBRARY} ${KDE4_KDEUI_LIBRARY} ${KDE4_KIO_LIBRARY} ${QT_QTMAIN_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ) + TARGET_LINK_LIBRARIES (marblewidget ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTSVG_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${KDE4_KDECORE_LIBRARY} ${KDE4_KDEUI_LIBRARY} ${KDE4_KIO_LIBRARY} ${QT_QTMAIN_LIBRARY} ${QT_QTSCRIPT_LIBRARY} ${QT_QTWEBKIT_LIBRARY} ) endif (QTONLY) if (APPLE) --- trunk/KDE/kdeedu/marble/src/lib/PlaceMarkInfoDialog.ui #920483:920484 @@ -5,7 +5,7 @@ 0 0 - 513 + 800 565 --- trunk/KDE/kdeedu/marble/src/lib/TinyWebBrowser.cpp #920483:920484 @@ -7,6 +7,7 @@ // // Copyright 2006-2007 Torsten Rahn " // Copyright 2007 Inge Wallin " +// Copyright 2008 Simon Hausmann " // @@ -54,6 +55,8 @@ return QString ( "http://%1.wikipedia.org/" ).arg ( code ); } +#if QT_VERSION < 0x040400 + TinyWebBrowser::TinyWebBrowser ( QWidget *parent ) : QTextBrowser ( parent ), m_source ( guessWikipediaDomain() ) @@ -78,9 +81,9 @@ << MarbleDirs::systemPath() + "/cache/"; setSearchPaths ( searchPaths ); -#if QT_VERSION >= 0x040300 +// #if QT_VERSION >= 0x040300 setOpenLinks ( false ); -#endif +// #endif setOpenExternalLinks ( false ); } @@ -220,4 +223,45 @@ format.setMargin ( 12 ) ; document()->rootFrame()->setFrameFormat ( format ); } + +#else + +TinyWebBrowser::TinyWebBrowser( QWidget* parent ) +{ + connect( this, SIGNAL( statusBarMessage( QString ) ), + this, SIGNAL( statusMessage( QString ) ) ); + + page()->setLinkDelegationPolicy( QWebPage::DelegateAllLinks ); + connect( this, SIGNAL( linkClicked( QUrl ) ), + this, SLOT( openExternalLink( QUrl ) ) ); +} + +TinyWebBrowser::~TinyWebBrowser() +{ +} + +void TinyWebBrowser::setSource( const QString& relativeUrl ) +{ + QUrl url = relativeUrl; + if ( url.isRelative() ) + url = QUrl( guessWikipediaDomain() ).resolved( url ); + load( url ); +} + +void TinyWebBrowser::print() +{ + QPrinter printer; + + QPrintDialog dlg( &printer, this ); + if ( dlg.exec() ) + QWebView::print( &printer ); +} + +void TinyWebBrowser::openExternalLink( QUrl url ) +{ + QDesktopServices::openUrl( url ); +} + +#endif + #include "TinyWebBrowser.moc" --- trunk/KDE/kdeedu/marble/src/lib/TinyWebBrowser.h #920483:920484 @@ -15,19 +15,21 @@ // Author: Torsten Rahn // +#include #ifndef TINYWEBBROWSER_H #define TINYWEBBROWSER_H +// namespace Marble +// { + +#if QT_VERSION < 0x040400 + #include #include #include class QUrl; - -namespace Marble -{ - class HttpDownloadManager; class CacheStoragePolicy; @@ -43,7 +45,6 @@ void setSource ( const QString& urlString ); void print(); - Q_SIGNALS: void backwardAvailable ( bool ); void statusMessage ( QString ); @@ -64,6 +65,34 @@ QString m_source; }; -} +#else +#include +#include + +class TinyWebBrowser : public QWebView +{ + Q_OBJECT + + public: + TinyWebBrowser( QWidget* parent = 0 ); + ~TinyWebBrowser(); + + public Q_SLOTS: + void setSource( const QString& relativeUrl ); + void print(); + + Q_SIGNALS: + void statusMessage( QString ); + + private Q_SLOTS: + void openExternalLink( QUrl ); + + private: + QString m_source; +}; +#endif + +// } + #endif // TINYWEBBROWSER_H