From: Clifford Wolf Date: Wed, 27 Nov 2013 19:43:42 +0000 (+0100) Subject: Added some svgviewer code for possible future switch to QGraphicsWebView X-Git-Tag: yosys-0.2.0~292 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9826f6ae029c67c01d6984970af0af9918080257;p=yosys.git Added some svgviewer code for possible future switch to QGraphicsWebView --- diff --git a/libs/svgviewer/mainwindow.cpp b/libs/svgviewer/mainwindow.cpp index b352ff9f7..f8f72e5c4 100644 --- a/libs/svgviewer/mainwindow.cpp +++ b/libs/svgviewer/mainwindow.cpp @@ -109,7 +109,7 @@ MainWindow::MainWindow() this, SLOT(setRenderer(QAction*))); setCentralWidget(m_view); - setWindowTitle(tr("SVG Viewer")); + setWindowTitle(tr("Yosys SVG Viewer")); } void MainWindow::openFile(const QString &path, bool reload) @@ -147,7 +147,7 @@ void MainWindow::openFile(const QString &path, bool reload) if (!fileName.startsWith(":/")) { m_currentPath = fileName; - setWindowTitle(tr("%1 - SVGViewer").arg(m_currentPath)); + setWindowTitle(tr("%1 - Yosys SVG Viewer").arg(m_currentPath)); // just keep the file open so this process is found using 'fuser' m_filehandle = fopen(fileName.toAscii(), "r"); diff --git a/libs/svgviewer/svgview.cpp b/libs/svgviewer/svgview.cpp index da9a4aee3..d41f542d0 100644 --- a/libs/svgviewer/svgview.cpp +++ b/libs/svgviewer/svgview.cpp @@ -44,6 +44,7 @@ #include #include #include +#include #include #include @@ -96,16 +97,29 @@ void SvgView::openFile(const QFile &file) s->clear(); resetTransform(); +#if 0 + QGraphicsWebView *webview = new QGraphicsWebView(); + QString fn = file.fileName(); + if (fn[0] != '/') { + char cwd_buffer[4096]; + if (getcwd(cwd_buffer, 4096) != NULL) + fn = cwd_buffer + ("/" + fn); + } + webview->load(QUrl::fromLocalFile(fn)); + webview->setResizesToContents(true); + m_svgItem = webview; +#else m_svgItem = new QGraphicsSvgItem(file.fileName()); +#endif m_svgItem->setFlags(QGraphicsItem::ItemClipsToShape); m_svgItem->setCacheMode(QGraphicsItem::NoCache); - m_svgItem->setZValue(0); + m_svgItem->setZValue(1); m_backgroundItem = new QGraphicsRectItem(m_svgItem->boundingRect()); m_backgroundItem->setBrush(Qt::white); m_backgroundItem->setPen(Qt::NoPen); m_backgroundItem->setVisible(drawBackground); - m_backgroundItem->setZValue(-1); + m_backgroundItem->setZValue(0); m_outlineItem = new QGraphicsRectItem(m_svgItem->boundingRect()); QPen outline(Qt::black, 2, Qt::DashLine); @@ -113,7 +127,7 @@ void SvgView::openFile(const QFile &file) m_outlineItem->setPen(outline); m_outlineItem->setBrush(Qt::NoBrush); m_outlineItem->setVisible(drawOutline); - m_outlineItem->setZValue(1); + m_outlineItem->setZValue(2); s->addItem(m_backgroundItem); s->addItem(m_svgItem); diff --git a/libs/svgviewer/svgviewer.pro b/libs/svgviewer/svgviewer.pro index 0d938f444..488c62fd5 100644 --- a/libs/svgviewer/svgviewer.pro +++ b/libs/svgviewer/svgviewer.pro @@ -4,7 +4,7 @@ RESOURCES = svgviewer.qrc SOURCES = main.cpp \ mainwindow.cpp \ svgview.cpp -QT += svg xml +QT += webkit svg xml contains(QT_CONFIG, opengl): QT += opengl