added webview toolbar, just elements, not connected

This commit is contained in:
Bachir Soussi Chiadmi
2017-05-30 17:04:07 +02:00
parent 690d10aa60
commit cfb734321c
+78 -10
View File
@@ -6,7 +6,7 @@ import sys, os, re
from PyQt5 import QtCore
from PyQt5.QtCore import QUrl, QSettings
from PyQt5.QtGui import QKeySequence, QFont, QSyntaxHighlighter
from PyQt5.QtWidgets import QWidget, QLabel, QTabWidget, QVBoxLayout, QHBoxLayout, QSplitter, QPlainTextEdit, QShortcut
from PyQt5.QtWidgets import QWidget, QLabel, QTabWidget, QVBoxLayout, QHBoxLayout, QSplitter, QPlainTextEdit, QShortcut, QPushButton, QCheckBox
from PyQt5.QtWebKit import QWebSettings
from PyQt5.QtWebKitWidgets import QWebView, QWebInspector
@@ -28,7 +28,66 @@ class WebkitInspector(QWebInspector):
self.showMaximized()
# TODO: webkitinspector is disappearing when chaging tabs
class WebViewOptions(QWidget):
def __init__(self, parent):
super(WebViewOptions, self).__init__(parent)
self.parent = parent
self.hbox = QHBoxLayout()
self.hbox.setContentsMargins(0,0,0,0)
self.preview = QCheckBox('&Preview', self)
# self.preview.setShortcut('Ctrl+Shift+p')
self.preview.clicked.connect(self.onPreview)
self.hbox.addWidget(self.preview)
self.debug = QCheckBox('Deb&ug', self)
# self.debug.setShortcut('Ctrl+Shift+u')
self.debug.clicked.connect(self.onDebug)
self.hbox.addWidget(self.debug)
self.grid = QCheckBox('&Grid', self)
# self.grid.setShortcut('Ctrl+Shift+g')
self.grid.clicked.connect(self.onGrid)
self.hbox.addWidget(self.grid)
# spread
self.spread = QCheckBox('&Spread', self)
# self.spread.setShortcut('Ctrl+Shift+g')
self.spread.clicked.connect(self.onSpread)
self.hbox.addWidget(self.spread)
self.hbox.addStretch()
# zoom
# page
self.hbox.addStretch()
self.reload = QPushButton("&Reload", self)
# self.reload.setShortcut('Ctrl+Shift+r')
# TODO: how to define same shortcut in different places
# self.reload.setIcon(Icon(ico)))
self.reload.clicked.connect(self.onReload)
self.hbox.addWidget(self.reload)
self.setLayout(self.hbox)
def onReload(self):
print("onReload")
def onPreview(self):
print('onPreview')
def onDebug(self):
print('onDebug')
def onGrid(self):
print('onGrid')
def onSpread(self):
print('onSpread')
class CodeEditor(QPlainTextEdit):
def __init__(self, core, tabs, file=None):
@@ -99,36 +158,45 @@ class DesignStack(QWidget):
super(DesignStack, self).__init__()
# self.grid = QGridLayout()
hbox = QHBoxLayout()
hbox.setContentsMargins(0,0,0,0)
self.setLayout(hbox)
self.hbox = QHBoxLayout()
self.hbox.setContentsMargins(0,0,0,0)
self.setLayout(self.hbox)
# webviewbox = QVBoxLayout()
self.vsplitter = QSplitter(QtCore.Qt.Vertical)
self.webview = QWidget()
self.webview.vbox = QVBoxLayout()
self.webview.setLayout(self.webview.vbox)
self.webview.vbox.setContentsMargins(0,0,0,0)
self.webkitview = WebkitView(self, core.server.port)
self.vsplitter.addWidget(self.webkitview)
self.webkitinspector = WebkitInspector(self, self.webkitview)
self.vsplitter.addWidget(self.webkitinspector)
shortcut = QShortcut(self)
shortcut.setKey("F12")
shortcut.activated.connect(self.toggleInspector)
self.webkitinspector.setVisible(False)
self.webviewoptions = WebViewOptions(self)
self.webview.vbox.addWidget(self.webviewoptions)
self.vsplitter = QSplitter(QtCore.Qt.Vertical)
self.vsplitter.addWidget(self.webkitview)
self.vsplitter.addWidget(self.webkitinspector)
self.vsplitter.splitterMoved.connect(self.movedSplitter)
self.webview.vbox.addWidget(self.vsplitter)
self.hsplitter = QSplitter(QtCore.Qt.Horizontal)
self.hsplitter.addWidget(self.vsplitter)
self.hsplitter.addWidget(self.webview)
self.editor = Editor(self, core)
self.hsplitter.addWidget(self.editor)
self.hsplitter.splitterMoved.connect(self.movedSplitter)
hbox.addWidget(self.hsplitter)
self.hbox.addWidget(self.hsplitter)
self.restorePrefs()