summaryrefslogtreecommitdiffstats
path: root/python/pyqt/examples3/webbrowser/webbrowser.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/pyqt/examples3/webbrowser/webbrowser.py')
-rw-r--r--python/pyqt/examples3/webbrowser/webbrowser.py91
1 files changed, 91 insertions, 0 deletions
diff --git a/python/pyqt/examples3/webbrowser/webbrowser.py b/python/pyqt/examples3/webbrowser/webbrowser.py
new file mode 100644
index 00000000..bd1462e5
--- /dev/null
+++ b/python/pyqt/examples3/webbrowser/webbrowser.py
@@ -0,0 +1,91 @@
+# Copyright (C) 2001-2002 Trolltech AS. All rights reserved.
+# Copyright (C) 2004 Riverbank Computing Ltd. All rights reserved.
+#
+# This file is part of an example program for the ActiveQt integration.
+# This example program may be used, distributed and modified without
+# limitation.
+
+
+import sys
+import qt
+import qtaxcontainer
+
+import mainwindow
+
+
+class MainWindowImpl(mainwindow.MainWindow):
+ def init(self):
+ self.pb = qt.QProgressBar(self.statusBar())
+ self.pb.setPercentageVisible(False)
+ self.pb.hide()
+ self.statusBar().addWidget(self.pb, 0, True)
+
+ self.connect(self.WebBrowser, qt.SIGNAL("ProgressChange(int,int)"), self.setProgress)
+ self.connect(self.WebBrowser, qt.SIGNAL("StatusTextChange(const QString&)"), self.statusBar(), qt.SLOT("message(const QString&)"))
+
+ self.WebBrowser.dynamicCall("GoHome()");
+
+ self.subwindows = []
+
+ def go(self):
+ self.actionStop.setEnabled(True)
+ self.WebBrowser.dynamicCall("Navigate(const QString&)", qt.QVariant(self.addressEdit.text()))
+
+ def setTitle(self, title):
+ self.setCaption("Qt WebBrowser - " + title.latin1())
+
+ def setProgress(self, a, b):
+ if a <= 0 or b <= 0:
+ self.pb.hide()
+ return
+
+ self.pb.show()
+ self.pb.setTotalSteps(b)
+ self.pb.setProgress(a)
+
+ def setCommandState(self, cmd, on):
+ if cmd == 1:
+ self.actionForward.setEnabled(on)
+ elif cmd == 2:
+ self.actionBack.setEnabled(on)
+
+ def navigateBegin(self):
+ self.actionStop.setEnabled(True)
+
+ def navigateComplete(self):
+ self.actionStop.setEnabled(False)
+
+ def newWindow(self):
+ window = MainWindowImpl()
+ window.show()
+
+ if self.addressEdit.text().isEmpty():
+ return
+
+ window.addressEdit.setText(self.addressEdit.text())
+ window.actionStop.setEnabled(True)
+ window.go()
+
+ self.subwindows += window
+
+ def aboutSlot(self):
+ qt.QMessageBox.about(self, self.tr("About WebBrowser"), self.tr(
+"""This Example has been created using the ActiveQt integration into Qt Designer.
+It demonstrates the use of QAxWidget to embed the Internet Explorer ActiveX
+control into a Qt application."""))
+
+ def aboutQtSlot(self):
+ qt.QMessageBox.aboutQt(self, self.tr("About Qt"))
+
+
+def main(args):
+ a = qt.QApplication(args)
+ w = MainWindowImpl()
+ a.setMainWidget(w)
+ w.show()
+
+ return a.exec_loop()
+
+
+if __name__ == "__main__":
+ sys.exit(main(sys.argv))