First implementation of a progress bar
This commit is contained in:
parent
3a76d52ffb
commit
c0320a911b
@ -1,9 +1,10 @@
|
|||||||
from PyQt5.QtCore import QObject, pyqtSlot, QUrl
|
from PyQt5.QtCore import QObject, pyqtSlot, QUrl, pyqtSignal
|
||||||
from PyQt5.QtWebKitWidgets import QWebView
|
from PyQt5.QtWebKitWidgets import QWebView
|
||||||
from qutebrowser.widgets.tabbar import TabWidget
|
from qutebrowser.widgets.tabbar import TabWidget
|
||||||
|
|
||||||
class TabbedBrowser(TabWidget):
|
class TabbedBrowser(TabWidget):
|
||||||
tabs = []
|
tabs = []
|
||||||
|
cur_progress = pyqtSignal(int)
|
||||||
|
|
||||||
def __init__(self, parent):
|
def __init__(self, parent):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
@ -52,11 +53,19 @@ class TabbedBrowser(TabWidget):
|
|||||||
|
|
||||||
|
|
||||||
class BrowserTab(QWebView):
|
class BrowserTab(QWebView):
|
||||||
|
parent = None
|
||||||
|
|
||||||
def __init__(self, parent):
|
def __init__(self, parent):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
|
self.parent = parent
|
||||||
|
self.loadProgress.connect(self.progress_changed)
|
||||||
self.show()
|
self.show()
|
||||||
|
|
||||||
def openurl(self, url):
|
def openurl(self, url):
|
||||||
if not url.startswith('http://'):
|
if not url.startswith('http://'):
|
||||||
url = 'http://' + url
|
url = 'http://' + url
|
||||||
super().load(QUrl(url))
|
super().load(QUrl(url))
|
||||||
|
|
||||||
|
def progress_changed(self, prog):
|
||||||
|
if self.parent.currentWidget() == self:
|
||||||
|
self.parent.cur_progress.emit(prog)
|
||||||
|
@ -21,9 +21,12 @@ class MainWindow(QMainWindow):
|
|||||||
self.vbox.addWidget(self.tabs)
|
self.vbox.addWidget(self.tabs)
|
||||||
|
|
||||||
self.status = StatusBar(self.cwidget)
|
self.status = StatusBar(self.cwidget)
|
||||||
self.status.lbl.setText("Hello World")
|
|
||||||
self.vbox.addWidget(self.status)
|
self.vbox.addWidget(self.status)
|
||||||
|
|
||||||
|
|
||||||
|
# FIXME: cur_progress also should be set on tab switch
|
||||||
|
self.tabs.cur_progress.connect(self.status.lbl.set_progress)
|
||||||
|
|
||||||
#self.retranslateUi(MainWindow)
|
#self.retranslateUi(MainWindow)
|
||||||
#self.tabWidget.setCurrentIndex(0)
|
#self.tabWidget.setCurrentIndex(0)
|
||||||
#QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
#QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||||
|
@ -36,6 +36,9 @@ class StatusText(QLabel):
|
|||||||
self.setObjectName(self.__class__.__name__)
|
self.setObjectName(self.__class__.__name__)
|
||||||
self.setStyleSheet("padding-right: 1px")
|
self.setStyleSheet("padding-right: 1px")
|
||||||
|
|
||||||
|
def set_progress(self, prog):
|
||||||
|
self.setText('{}%'.format(prog))
|
||||||
|
|
||||||
class StatusCommand(QLineEdit):
|
class StatusCommand(QLineEdit):
|
||||||
got_cmd = pyqtSignal(str)
|
got_cmd = pyqtSignal(str)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user