Mercurial > hg > octave-terminal
changeset 13615:6ab76213ea74
Added progress bar to browser widget. Fixed bug with sites using https protocol.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Wed, 17 Aug 2011 15:51:28 +0200 |
parents | 5cb93c6d8aab |
children | 83bcf326e984 |
files | gui/src/BrowserWidget.cpp gui/src/BrowserWidget.h |
diffstat | 2 files changed, 19 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/gui/src/BrowserWidget.cpp +++ b/gui/src/BrowserWidget.cpp @@ -35,6 +35,8 @@ m_webView = new QWebView (this); m_urlLineEdit = new QLineEdit (this); m_statusBar = new QStatusBar (this); + m_progressBar = new QProgressBar (this); + m_progressBar->setMaximumWidth (150); m_webView->setSizePolicy (QSizePolicy::Expanding, QSizePolicy::Expanding); QAction *backAction = @@ -51,7 +53,15 @@ QVBoxLayout *layout = new QVBoxLayout (); layout->addWidget (m_navigationToolBar); layout->addWidget (m_webView); - layout->addWidget (m_statusBar); + + QWidget *bottomWidget = new QWidget (this); + QHBoxLayout *bottomLineLayout = new QHBoxLayout (); + bottomLineLayout->addWidget (m_statusBar); + bottomLineLayout->addWidget (m_progressBar); + bottomLineLayout->setMargin (0); + bottomWidget->setLayout (bottomLineLayout); + + layout->addWidget (bottomWidget); layout->setMargin (2); setLayout (layout); @@ -61,6 +71,11 @@ connect (m_webView, SIGNAL (urlChanged (QUrl)), this, SLOT (setUrl (QUrl))); connect (m_urlLineEdit, SIGNAL (returnPressed ()), this, SLOT (jumpToWebsite ())); + + connect (m_webView, SIGNAL (statusBarMessage(QString)), + m_statusBar, SLOT (showMessage(QString))); + connect (m_webView, SIGNAL (loadProgress(int)), + m_progressBar, SLOT (setValue(int))); } void @@ -73,7 +88,7 @@ BrowserWidget::jumpToWebsite () { QString url = m_urlLineEdit->text (); - if (!url.startsWith ("http://")) + if (!url.startsWith ("http://") && !url.startsWith ("https://")) url = "http://" + url; load (url); }
--- a/gui/src/BrowserWidget.h +++ b/gui/src/BrowserWidget.h @@ -24,6 +24,7 @@ #include <QLineEdit> #include <QtWebKit/QWebView> #include <QStatusBar> +#include <QProgressBar> class BrowserWidget:public QWidget { @@ -44,6 +45,7 @@ QToolBar *m_navigationToolBar; QWebView *m_webView; QStatusBar *m_statusBar; + QProgressBar *m_progressBar; }; #endif // BROWSERMDISUBWINDOW_H