mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-05-21 21:32:26 +12:00
Adds QtWebEngine support, while keeping QtWebKit support.
This commit is contained in:
parent
dfed1e7ec9
commit
2ff7cf80c6
|
@ -1,10 +1,10 @@
|
|||
#!/usr/bin/env python
|
||||
# --!-- coding: utf8 --!--
|
||||
from PyQt5.QtCore import Qt, QUrl
|
||||
from PyQt5.QtWebKitWidgets import QWebView
|
||||
from PyQt5.QtWidgets import QPlainTextEdit, qApp, QTabWidget, QFrame
|
||||
from PyQt5.QtWidgets import QPlainTextEdit, qApp, QTabWidget, QFrame, QTextEdit
|
||||
|
||||
from manuskript.exporter.manuskript.markdown import markdown, markdownSettings
|
||||
from manuskript.ui.views.webView import webView
|
||||
from manuskript.ui.exporters.manuskript.plainTextSettings import exporterSettings
|
||||
import os
|
||||
|
||||
|
@ -50,10 +50,12 @@ class HTML(markdown):
|
|||
w1 = QPlainTextEdit()
|
||||
w1.setFrameShape(QFrame.NoFrame)
|
||||
w1.setReadOnly(True)
|
||||
w2 = QWebView()
|
||||
t.addTab(w0, qApp.translate("Export", "Markdown source"))
|
||||
t.addTab(w1, qApp.translate("Export", "HTML Source"))
|
||||
t.addTab(w2, qApp.translate("Export", "HTML Output"))
|
||||
|
||||
if webView:
|
||||
w2 = webView()
|
||||
t.addTab(w2, qApp.translate("Export", "HTML Output"))
|
||||
|
||||
t.setCurrentIndex(2)
|
||||
return t
|
||||
|
@ -77,7 +79,8 @@ class HTML(markdown):
|
|||
previewWidget.widget(0).setPlainText(md)
|
||||
self.preparesTextEditView(previewWidget.widget(1), settings["Preview"]["PreviewFont"])
|
||||
previewWidget.widget(1).setPlainText(html)
|
||||
previewWidget.widget(2).setHtml(html, QUrl.fromLocalFile(path))
|
||||
|
||||
|
||||
|
||||
w2 = previewWidget.widget(2)
|
||||
if isinstance(w2, QTextEdit):
|
||||
w2.setHtml(html)
|
||||
else:
|
||||
w2.setHtml(html, QUrl.fromLocalFile(path))
|
||||
|
|
|
@ -4,8 +4,6 @@ import random
|
|||
import shutil
|
||||
|
||||
from PyQt5.QtCore import QUrl
|
||||
from PyQt5.QtWebKit import QWebSettings
|
||||
from PyQt5.QtWebKitWidgets import QWebView
|
||||
from PyQt5.QtWidgets import qApp
|
||||
|
||||
from manuskript.exporter.pandoc.abstractOutput import abstractOutput
|
||||
|
|
|
@ -1,22 +1,57 @@
|
|||
#!/usr/bin/env python
|
||||
# --!-- coding: utf8 --!--
|
||||
from PyQt5.QtCore import QUrl
|
||||
from PyQt5.QtNetwork import QNetworkAccessManager
|
||||
from PyQt5.QtWebKit import QWebSettings
|
||||
from PyQt5.QtWebKitWidgets import QWebView, QWebPage
|
||||
from PyQt5.QtWidgets import QLabel
|
||||
from manuskript.ui.views.webView import webView, webEngine
|
||||
|
||||
from manuskript.functions import appPath
|
||||
|
||||
|
||||
class PDFViewer(QWebView):
|
||||
pdf_viewer_page = "file://"+appPath('libs/pdf.js/web/viewer.html')
|
||||
if webEngine == "QtWebKit":
|
||||
|
||||
def __init__(self, parent=None):
|
||||
QWebView.__init__(self, parent)
|
||||
self.settings = QWebSettings.globalSettings()
|
||||
self.settings.setAttribute(QWebSettings.LocalContentCanAccessFileUrls, True)
|
||||
from PyQt5.QtWebKit import QWebSettings
|
||||
from PyQt5.QtWebKitWidgets import QWebView
|
||||
|
||||
def loadPDF(self, pdf):
|
||||
url = QUrl(self.pdf_viewer_page+"?file="+pdf)
|
||||
self.settings.clearMemoryCaches()
|
||||
self.load(url)
|
||||
|
||||
class PDFViewer(QWebView):
|
||||
pdf_viewer_page = "file://"+appPath('libs/pdf.js/web/viewer.html')
|
||||
|
||||
def __init__(self, parent=None):
|
||||
QWebView.__init__(self, parent)
|
||||
self.settings = QWebSettings.globalSettings()
|
||||
self.settings.setAttribute(QWebSettings.LocalContentCanAccessFileUrls, True)
|
||||
|
||||
def loadPDF(self, pdf):
|
||||
url = QUrl(self.pdf_viewer_page+"?file="+pdf)
|
||||
self.settings.clearMemoryCaches()
|
||||
self.load(url)
|
||||
|
||||
|
||||
elif webEngine == "QtWebEngine":
|
||||
|
||||
from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEnginePage, QWebEngineSettings
|
||||
|
||||
|
||||
class PDFViewer(QWebEngineView):
|
||||
pdf_viewer_page = "file://"+appPath('libs/pdf.js/web/viewer.html')
|
||||
|
||||
def __init__(self, parent=None):
|
||||
QWebEngineView.__init__(self, parent)
|
||||
self.settings = QWebEngineSettings.globalSettings()
|
||||
self.settings.setAttribute(QWebEngineSettings.LocalContentCanAccessFileUrls, True)
|
||||
|
||||
def loadPDF(self, pdf):
|
||||
url = QUrl(self.pdf_viewer_page+"?file="+pdf)
|
||||
self.load(url)
|
||||
|
||||
|
||||
else:
|
||||
|
||||
class PDFViewer(QLabel):
|
||||
def __init__(self, parent=None):
|
||||
QLabel.__init__(self, parent)
|
||||
self.setText("No Web Engine installed capable of displaying PDF.\n\n"
|
||||
"Consider installing QtWebKit or QtWebEngine.")
|
||||
|
||||
def loadPDF(self, pdf):
|
||||
pass
|
||||
|
|
Loading…
Reference in a new issue