def config(): app = QtGui.QApplication(sys.argv) app.setApplicationName("Cota Croche") pyObj = JS_Object() file_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "public/index.html")) local_url = QtCore.QUrl.fromLocalFile(file_path) webView = QtWebKit.QWebView() # add javaScript obj in page webView.page().mainFrame().addToJavaScriptWindowObject("pyObj", pyObj) inspector = QtWebKit.QWebInspector() webView.page().settings().setAttribute( QtWebKit.QWebSettings.DeveloperExtrasEnabled, True ) inspector.setPage(webView.page()) webView.load(local_url) window = QtGui.QMainWindow() window.setWindowTitle("Cota Croche") window.resize(800, 500)# funciona para ajustar o tamanho da janela. window.setCentralWidget(webView) window.show() app.exec_()
def __init__(self, parent=None): super(MyWindow, self).__init__(parent) layout = QtGui.QVBoxLayout() layout.setContentsMargins(0, 0, 0, 0) webView = QtWebKit.QWebView() webInspector = QtWebKit.QWebInspector(self) page = webView.page() page.settings().setAttribute( QtWebKit.QWebSettings.DeveloperExtrasEnabled, True) webInspector.setPage(page) webInspector.setVisible(True) splitter = QtGui.QSplitter(self) splitter.addWidget(webView) splitter.addWidget(webInspector) splitter.setSizes([3, 0]) layout.addWidget(splitter) self.setLayout(layout) webView.load( QtCore.QUrl(os.path.join(os.path.dirname(__file__), 'index.html'))) self.resize(950, 500)
def __init__(self): self.question.settings().setAttribute(\ QtWebKit.QWebSettings.PluginsEnabled, True) self.answer.settings().setAttribute(\ QtWebKit.QWebSettings.PluginsEnabled, True) # Add some dummy QWebViews that will be used to determine the actual # size of the rendered html. This information will then be used to # determine the optimal split between the question and the answer # pane. self.question_preview = QtWebKit.QWebView() self.question_preview.loadFinished.connect(\ self.question_preview_load_finished) self.answer_preview = QtWebKit.QWebView() self.answer_preview.loadFinished.connect(\ self.answer_preview_load_finished) # Calculate an offset to use in the stretching factor of the boxes, # e.g. question_box = question_label + question. self.stretch_offset = self.question_label.size().height() if self.question_box.spacing() != -1: self.stretch_offset += self.question_box.spacing() self.scrollbar_width = QtGui.QScrollBar().sizeHint().width() self.question_text = "" self.answer_text = "" self.required_question_size = self.question.size() self.required_answer_size = self.answer.size() self.is_answer_showing = False self.times_resized = 0
def __init__(self): QWidget.__init__(self) self.setWindowTitle('Control Panel') self.img_label = QtGui.QLabel(self) self.info_label = QtGui.QLabel(self) self.status_label = QtGui.QLabel(self) self.info_label.setText("Exam Not Start") self.capture = Capture(self) self.start_button = QtGui.QPushButton('Start',self) self.start_button.clicked.connect(self.capture.start) self.end_button = QtGui.QPushButton('Submit',self) self.end_button.clicked.connect(self.capture.end) self.quit_button = QtGui.QPushButton('Quit',self) self.quit_button.clicked.connect(self.capture.quit) self.timer = QtCore.QTimer() self.timer.timeout.connect(self.capture.capture) self.timer.start(1000/self.capture.fps) rtbox = QtGui.QHBoxLayout() rtbox.addWidget(self.img_label) rtbox.addWidget(self.status_label) rtbox.addWidget(self.info_label) rbbox = QtGui.QHBoxLayout() rbbox.addWidget(self.start_button) rbbox.addWidget(self.end_button) rbbox.addWidget(self.quit_button) rbox = QtGui.QVBoxLayout() ans_page = QtWebKit.QWebView() ans_page.load(QtCore.QUrl("sample_choices.html")) rbox.addLayout(rtbox) rbox.addWidget(ans_page) rbox.addLayout(rbbox) mainbox = QtGui.QHBoxLayout() info_page = QtWebKit.QWebView() info_page.load(QtCore.QUrl("sample_question.html")) #info_edit.setText(open('sample_question.txt').read()) mainbox.addWidget(info_page) mainbox.addLayout(rbox) self.setLayout(mainbox) #self.setGeometry(100,100,200,200) #self.show() self.capture.capture(force=True) self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) self.showFullScreen()
def __init__(self, parent=None): super(Browser, self).__init__(parent) # Deux pages dans deux onglets comme centralWidget page1 = QtWebKit.QWebView() page1.load(QtCore.QUrl("http://www.developpez.com/")) page2 = QtWebKit.QWebView() page2.load(QtCore.QUrl("http://www.google.com/")) self.tabs = QtGui.QTabWidget() self.tabs.addTab(page1, "Developpez") self.tabs.addTab(page2, "Google") self.setCentralWidget(self.tabs) # Creation du timer self.timer = QtCore.QTimer() self.timer.timeout.connect(self.switchTab) self.timerInterval = 3000 self.timer.start(self.timerInterval) # Barre de menus # Menu "application" menuApp = self.menuBar().addMenu("&Application") self.actionQuit = QtGui.QAction("&Quitter", self) self.actionQuit.triggered.connect( QtGui.qApp.quit) # reference magique a l'application en cours menuApp.addAction(self.actionQuit) # Menu "tabs" menuTabs = self.menuBar().addMenu("&Onglets") self.actionAdd = QtGui.QAction("&Ajouter", self) self.actionAdd.triggered.connect(self.addTab) menuTabs.addAction(self.actionAdd) self.actionRemove = QtGui.QAction("&Enlever", self) self.actionRemove.triggered.connect(self.removeTab) menuTabs.addAction(self.actionRemove) # Menu "timer" menuTimer = self.menuBar().addMenu("&Timer") self.actionStop = QtGui.QAction("&Stopper", self) self.actionStop.triggered.connect(self.stopTimer) menuTimer.addAction(self.actionStop) self.actionRestart = QtGui.QAction("&Relancer", self) self.actionRestart.triggered.connect(self.restartTimer) menuTimer.addAction(self.actionRestart) self.actionChangeTimerInterval = QtGui.QAction("&Periodicite", self) self.actionChangeTimerInterval.triggered.connect( self.changeTimerInterval) menuTimer.addAction(self.actionChangeTimerInterval)
def __init__(self, parent, url='about:blank'): super(WebBrowser, self).__init__(parent) # 关闭窗口时自动销毁 # self.setAttribute(Qt.Qt.WA_DeleteOnClose, True) # 显示最小和最大按钮 self.setWindowFlags(self.windowFlags() | Qt.Qt.WindowCloseButtonHint | Qt.Qt.WindowMinimizeButtonHint | Qt.Qt.WindowMaximizeButtonHint) # 修改webkit全局设置 default_settings = QtWebKit.QWebSettings.globalSettings() # 启用javascript支持 default_settings.setAttribute(QtWebKit.QWebSettings.JavascriptEnabled, True) default_settings.setAttribute( QtWebKit.QWebSettings.JavascriptCanOpenWindows, True) # 启动开发者工具支持 default_settings.setAttribute( QtWebKit.QWebSettings.DeveloperExtrasEnabled, True) default_settings.setAttribute( QtWebKit.QWebSettings.LocalContentCanAccessRemoteUrls, True) default_settings.setAttribute( QtWebKit.QWebSettings.LocalStorageEnabled, True) default_settings.setAttribute(QtWebKit.QWebSettings.PluginsEnabled, True) # 创建浏览器子窗口 self.view = QtWebKit.QWebView() # 禁用浏览器的右键菜单(利用qwidget自带的方法) # self.view.setContextMenuPolicy(Qt.Qt.NoContextMenu) # 部分链接会调用外部浏览器打开 self.page = WebPage() self.view.setPage(self.page) # 创建开发者工具子窗口 self.wi = QtWebKit.QWebInspector() self.wi.setPage(self.view.page()) # 加载url self.view.load(QtCore.QUrl(url)) # 处理点击一些链接没有反应的问题 self.view.page().setLinkDelegationPolicy( QtWebKit.QWebPage.DelegateAllLinks) self.view.page().linkClicked.connect(self.onLinkClicked) layout = QtGui.QVBoxLayout() layout.setMargin(0) layout.addWidget(self.view) layout.addWidget(self.wi) self.setLayout(layout) self.resize(800, 600)
def __init__(self, parent=None): super(App, self).__init__(parent) x, y, w, h = 500, 200, 1024, 768 self.setGeometry(x, y, w, h) self.setFixedSize(w, h) self.url_lineedit = QtGui.QLineEdit(self) self.url_lineedit.setGeometry(0, 0, 900, 22) self.connect(self.url_lineedit, QtCore.SIGNAL('returnPressed()'), self.url_returnPressed) self.progressbar = QtGui.QProgressBar(self) self.progressbar.setGeometry(900, 0, 124, 22) self.progressbar.setMinimum(0) self.progressbar.setMaximum(100) self.webview = QtWebKit.QWebView(self) qsettings = self.webview.settings() qsettings.setAttribute(QtWebKit.QWebSettings.DeveloperExtrasEnabled, True) self.inspector = QtWebKit.QWebInspector(self) self.inspector.setPage(self.webview.page()) self.inspector.setGeometry(0, h - 200, w, 200) self.inspector.setVisible(True) self.webview.setGeometry(0, 22, w, h - 200) self.connect(self.webview, QtCore.SIGNAL("loadStarted()"), self.webview_loadStarted) self.connect(self.webview, QtCore.SIGNAL("loadFinished(bool)"), self.webview_loadFinished) self.connect(self.webview, QtCore.SIGNAL('loadProgress(int)'), self.webview_loadProgress) cache = QtNetwork.QNetworkDiskCache() dir = QtGui.QDesktopServices.storageLocation( QtGui.QDesktopServices.CacheLocation) cache.setCacheDirectory(dir) self.am = self.webview.page().networkAccessManager() self.am.setCache(cache) self.cj = QtNetwork.QNetworkCookieJar() self.am.setCookieJar(self.cj) self._portal_url = "http://www.baidu.com/" self.url_lineedit.setText(self._portal_url) self.webview.load(QtCore.QUrl(self._portal_url)) self.url_lineedit.setFocus() self.setup_global_shortcuts()
def __init__(self, parent=None, flags=QtCore.Qt.Widget): super(MainWindow, self).__init__(parent, flags) splitter_widget = QtGui.QSplitter(QtCore.Qt.Horizontal) self.code_object_view = QtGui.QTreeView(splitter_widget) self.code_object_view.setHeaderHidden(True) self.code_object_view.setModel(QtGui.QStandardItemModel()) self.code_object_view.selectionModel().currentChanged.connect(self.on_code_object_view_current_changed) tab_widget = QtGui.QTabWidget(splitter_widget) self.summary_view = QtWebKit.QWebView() self.summary_view.page().setLinkDelegationPolicy(QtWebKit.QWebPage.DelegateAllLinks) self.summary_view.linkClicked.connect(self.on_summary_view_link_clicked) self.disassembly_view = QtWebKit.QWebView() self.disassembly_view.page().setLinkDelegationPolicy(QtWebKit.QWebPage.DelegateAllLinks) self.disassembly_view.linkClicked.connect(self.on_disassembly_view_link_clicked) self.hex_edit = hexedit.HexEdit() tab_widget.addTab(self.summary_view, 'Summary') tab_widget.addTab(self.disassembly_view, 'Disassembly') tab_widget.addTab(self.hex_edit, 'Hex Dump') menu = self.menuBar().addMenu('&File') menu.addAction('&Open...').triggered.connect(self.on_menu_bar_open_triggered) menu.addAction('&Close').triggered.connect(self.on_menu_bar_close_triggered) menu.addAction('&Reload').triggered.connect(self.on_menu_bar_reload_triggered) menu.addSeparator() menu.addAction('E&xit').triggered.connect(Qt.qApp.quit) menu = self.menuBar().addMenu('&Help') menu.addAction('About...').triggered.connect(self.on_menu_bar_about_triggered) menu.addSeparator() menu.addAction('About Qt...').triggered.connect(Qt.qApp.aboutQt) splitter_widget.setStretchFactor(0, 0) splitter_widget.setStretchFactor(1, 1) splitter_widget.setSizes([200, splitter_widget.width()-200]) self.setCentralWidget(splitter_widget) self.setWindowTitle('Chrysanthemum') self.setWindowIcon(QtGui.QIcon(':/images/icon.png')) self.setAcceptDrops(True) self.resize(1024, 768) self.setGeometry(QtGui.QStyle.alignedRect(QtCore.Qt.LeftToRight, QtCore.Qt.AlignCenter, self.size(), QtGui.QDesktopWidget().availableGeometry())) self.close()
def __init__(self, parent=None): super(ExampleWidget, self).__init__(parent) self.setWindowTitle('iPython in PyQt5 app example') self.mainWidget = QtGui.QWidget(self) self.setCentralWidget(self.mainWidget) layout = QtGui.QVBoxLayout(self.mainWidget) #self.button = QtGui.QPushButton('Another widget') viewer = QtWebKit.QWebView() viewer.setHtml(HTML) viewer.setFixedSize(400, 300) customBanner = "Welcome to the embedded ipython console\n" ipyConsole = ConsoleWidget() monokai = qtconsole.styles.default_dark_style_sheet ipyConsole.style_sheet = monokai ipyConsole.execute_command("%run -m src.loadenv") ipyConsole.execute_command("%matplotlib inline\n") instructions = "{}{}{}{}".format( "Check 'ghargs': ", str(sys.argv[1]) if len(sys.argv) > 1 else "Null", "%run -m src.openstudio_python $osmfile\n", "PID: " + str(os.getpid())) ipyConsole.print_text(instructions) ipyConsole.setFixedSize(400, 500) layout.addWidget(viewer) layout.addWidget(ipyConsole)
def show_doc_dialog(self): dialog = QtGui.QDialog(self) dialog.setWindowTitle( self.c.get(const.CONFIG_WINDOW_TITLES, "doc_dialog")) filename = os.path.join(PrefHelper.get_addons_folder(), const.FOLDER_NAME, "docs", "doc_start.html") if not os.path.exists(filename): print "FILENAME {!r} DOES NOT EXIST".format(filename) return help_buttons = QtGui.QDialogButtonBox(dialog) help_buttons.setStandardButtons(QtGui.QDialogButtonBox.Ok) help_buttons.accepted.connect(dialog.accept) view = QtWebKit.QWebView(dialog) view.load(QtCore.QUrl(filename)) help_vbox = QtGui.QVBoxLayout() help_vbox.addWidget(view) help_vbox.addWidget(help_buttons) dialog.setLayout(help_vbox) dialog.exec_()
def aboutHtml(self): import sys from PyQt4.QtCore import qVersion, PYQT_VERSION_STR import sipconfig from PyQt4 import QtWebKit from Tc2Lib.gocr import gocr p = '<html><head>' p += '<LINK REL=StyleSheet HREF="default.css" TYPE="text/css" MEDIA=screen>' p += '</head><body>' p += '<div class="textBox">' p += '<div class="headerBox">About TableCrab</div>' p += '<ul>' p += '<li>%s: %s' % (Tc2Config.ApplicationName, Tc2Config.Version) p += '<li>Author: %s' % Tc2Config.Author p += '<li>Mail: [email protected]' p += '</ul>' p += '<ul>' p += '<li>Python: %s.%s.%s' % sys.version_info[:3] p += '<li>Sip: %s\n' % sipconfig.Configuration().sip_version_str p += '<li>Qt: %s' % qVersion() p += '<li>PyQt: %s' % PYQT_VERSION_STR p += '<li>WebKit: %s\n' % QtWebKit.qWebKitVersion() p += '<li>Gocr: %s\n' % gocr.version() p += '</ul>' p += '</div>' p += '</body></html>' return p
def __init__(self, size=(800, 600), position=None): """ Parameters ---------- size : *(800, 600)* or tuple tuple containing the width and the height of the window in pixel position : *None* or tuple if None the screen center is used, otherwise the position given in a tuple containing the position of the center of the window relative to the screen center is used (positive values mean up/right). """ super(PsyTML, self).__init__() self.setWindowFlags(QtCore.Qt.FramelessWindowHint | QtCore.Qt.WindowStaysOnTopHint) self.resize(size[0], size[1]) self.position = position self.data = {} self.view = QtWebKit.QWebView(self) layout = QtGui.QVBoxLayout(self) layout.addWidget(self.view) layout.setContentsMargins(0, 0, 0, 0) self.view.setPage(MyWebPage()) self.view.page().formSubmitted.connect(self.handleFormSubmitted)
def tryout_with_qt(): import sys from PyQt4 import QtCore, QtWebKit, QtWidgets from os.path import join, dirname import ibeis.viz class Browser(QtWebKit.QWebView): def __init__(self): super(Browser, self).__init__() self.loadFinished.connect(self._result_available) def _result_available(self, ok): pass #frame = self.page().mainFrame() #print(unicode(frame.toHtml()).encode('utf-8')) app = QtWidgets.QApplication(sys.argv) view = Browser() view.show() path = join(dirname(ibeis.viz.__file__), 'd3_example.html') view.load(QtCore.QUrl(path)) view.page().settings().setAttribute( QtWebKit.QWebSettings.DeveloperExtrasEnabled, True) insp = QtWebKit.QWebInspector() insp.setPage(view.page()) insp.show() app.exec_()
def initUI(self): #self.webView = QtWebKit.QWebView() #first just show a map without marks in the map #the data is the last time i compute the averge of the lat/lon map_osm = folium.Map(location=[33.59359997467155,-111.94546800838894]) map_osm.save(r"./map.html") self.webView = QtWebKit.QWebView() self.webView.setHtml(open(r"./map.html").read()) self.setCentralWidget(self.webView) self.statusBar() openFile = QtGui.QAction(QtGui.QIcon('open.png'), 'Open', self) openFile.setShortcut('Ctrl+O') openFile.setStatusTip('Open new File') openFile.triggered.connect(self.showDialog) menubar = self.menuBar() fileMenu = menubar.addMenu('&File') fileMenu.addAction(openFile) self.setGeometry(300, 300, 750, 650) self.setWindowTitle('WebView') self.show() self.webView.show()
def __init__(self, myList): # Pay homage to our parents QtGui.QMainWindow.__init__(self, None) # Our data self.myList = myList # How big are we going to be? self.setGeometry(100, 100, 1024, 768) # This is the area we want to render self.region = QtGui.QRegion(QtCore.QRect(0, 0, 1920, 1200)) # The "view" that we will be displaying each page in self.view = QtWebKit.QWebView(None) self.view.setGeometry(0, 0, 1920, 1200) # This is where feedback will be shown self.table = QtGui.QTableWidget(len(myList), 3, None) layout = QtGui.QHBoxLayout() layout.addWidget(self.table) self.setLayout(layout) # Table headers self.setupTable() # This will perform work once the page is loaded self.view.connect(self.view, QtCore.SIGNAL('loadFinished(bool)'), self.loaded) # This is some stuff for hopefully saving the images self.image = QtGui.QImage(1920, 1200, QtGui.QImage.Format_RGB32) # Now we tell the frame to load the page and all that jazz self.loadNext()
def show_doc_dialog(self): dialog = QtGui.QDialog(self) dialog.setWindowTitle("Supplementary Buttons for Anki Documentation") filename = os.path.join(PrefHelper.get_addons_folder(), "extra_buttons", "docs", "doc_start.html") if not os.path.exists(filename): print "FILENAME {!r} DOES NOT EXIST".format(filename) return help_buttons = QtGui.QDialogButtonBox(dialog) help_buttons.setStandardButtons(QtGui.QDialogButtonBox.Ok) help_buttons.accepted.connect(dialog.accept) view = QtWebKit.QWebView(dialog) view.load(QtCore.QUrl(filename)) help_vbox = QtGui.QVBoxLayout() help_vbox.addWidget(view) help_vbox.addWidget(help_buttons) dialog.setLayout(help_vbox) dialog.exec_()
def __init__(self, parent=None): QtGui.QWidget.__init__(self, parent) self.setWindowTitle('probeMap') self.setGeometry(1000, 800, 800, 800) self.layout = QtGui.QVBoxLayout(self) self.list_btn = QtGui.QPushButton('list ssids') self.connect(self.list_btn, QtCore.SIGNAL("released()"), self.update_list) self.data_widget = QtGui.QListWidget() self.data_widget.currentItemChanged.connect(self.check_list_ssid) self.webview = QtWebKit.QWebView() self.layout.addWidget(self.list_btn) self.layout.addWidget(self.data_widget) self.layout.addWidget(self.webview) self.thread_pool = [] sniffer = SniffWorker('wlan0') self.thread_pool.append(sniffer) sniffer.start()
def initUI(self): self.trace = False mainLayout = QtGui.QVBoxLayout() self.linkLabel = QtGui.QLabel(self) self.inputLine = QtGui.QLineEdit(self) self.viewer = QtWebKit.QWebView(self) self.viewer.load(QtCore.QUrl("http://www.google.com")) toolBar = QtGui.QToolBar() goButton = QtGui.QPushButton("Go") goButton.clicked.connect(self.switchPages) toolBar.addWidget(goButton) mainLayout.setMenuBar(toolBar) mainLayout.addWidget(self.inputLine) mainLayout.addWidget(self.viewer) self.inputLine.textChanged[str].connect(self.userEdits) self.setLayout(mainLayout) self.setGeometry(2560, 1620, 500, 500) self.setWindowTitle("Web Browser") self.resize(2000, 2000) self.show()
def __init__(self, trilat_pipe, usb_pipe, parent=None): # Origin for ENU coordinates displayed on front panel self.origin = [0,0,0] # e,n,u self.apogee = 0 # Record of apogee in m # Flag for trilat_rx method: self.first_trilat_rx_packet = True super().__init__(parent) self.setupUi(self) # Add map self.map_view = QtWebKit.QWebView() self.map_view.setObjectName(_fromUtf8("map_view")) self.map_view.page().mainFrame().addToJavaScriptWindowObject("TOAD Map", self) rel_path = 'leaflet_map/map.html' abs_file_path = os.path.abspath(os.path.join(script_dir,rel_path)) self.map_view.load(QtCore.QUrl.fromLocalFile(abs_file_path)) #self.map_view.loadFinished.connect(self.on_map_load) self.tabWidget.addTab(self.map_view,'Map') # Add slots and signals manually self.frame_toad_master.pushButton_conn.clicked.connect(self.toggle_con) self.pushButton_zero.clicked.connect(self.confirm_zero) self.actionSave_Terminal.triggered.connect(self.terminal_save) self.actionRefresh.triggered.connect(self.refresh_map) # Start update thread thread_end,self.gui_end = Pipe(duplex=False) # So that QThread and gui don't use same pipe end at same time self.update_thread = MainThd(thread_end, trilat_pipe, usb_pipe) self.connect(self.update_thread, SIGNAL("new_packet(PyQt_PyObject)"),self.new_packet) self.connect(self.update_thread, SIGNAL("new_fix(PyQt_PyObject)"),self.trilat_rx) self.update_thread.start(QThread.LowPriority)
def loaded(self, status): # Shortcut things if the page isn't actually loaded if not status: self.feedback('icons/error.png', 2) self.view.stop() # Now, create a new one, I suppose? # This seems to be a work-around for a bug where the QtWebView will not # load any more pages after it errors on one. At least most of the time # this seems to get the job done. del self.view self.view = QtWebKit.QWebView(None) self.view.setGeometry(0, 0, 1920, 1200) self.view.connect(self.view, QtCore.SIGNAL('loadFinished(bool)'), self.loaded) else: # This is the HTML frame that holds our rendered site frame = self.view.page().mainFrame() # We construct a painter object that will hold the image we save painter = QtGui.QPainter(self.image) frame.render(painter, self.region) # We have to save the results out to a file self.image.save(self.filename) # TODO: Is this possibly being a memory leak? The application is running into very # high memory usage (700MB+) after it has been running for a while (400 shots). # Next time I run this I will try putting in some del statements here to see if I can # encourage the GC to behave properly. # If everything was successful self.feedback('icons/success.png') # Load the next one in the list self.loadNext()
def __init__(self, parent=None): super(gwSelectFaction, self).__init__(parent) self.parent = parent self.client = parent.client self.selectedFaction = None self.webview = QtWebKit.QWebView() QtWebKit.QWebSettings.globalSettings().setAttribute( QtWebKit.QWebSettings.PluginsEnabled, True) self.addPage(IntroPage(self)) self.addPage(selectFactionPage(self)) self.addPage(factionSelected(self)) #self.cleanupPage.connect(self.cleaningPage) self.setWizardStyle(QtGui.QWizard.ModernStyle) self.setPixmap(QtGui.QWizard.BannerPixmap, QtGui.QPixmap('client/banner.png')) self.setPixmap(QtGui.QWizard.BackgroundPixmap, QtGui.QPixmap('client/background.png')) self.setWindowTitle("Create Account")
def __init__(self, neds, executor, parent=None): super(FancyDownloader, self).__init__(parent) # store some info for later self.neds = neds print(self.neds) if len(self.neds)==0: self.close() self.destroy() return self.curNedIdx = 0 self.executor = executor print('current idx',self.curNedIdx) print('num neds', len(self.neds)) self.curNed = self.neds[self.curNedIdx] # Create the web control self.qwp = QtWebKit.QWebView(self) self.qwp.load(QtCore.QUrl(self.curNed['new_url'])) self.connect(self.qwp, QtCore.SIGNAL('loadFinished(bool)'), self.loadFinished) htl = QtGui.QHBoxLayout() htl.addWidget(self.qwp) self.setLayout(htl)
def setupUi(self): vbox = QtGui.QVBoxLayout() self.setLayout(vbox) hbox = QtGui.QHBoxLayout() open_cat_button = QtGui.QPushButton('Open Earthquake Catalogue') openCat = functools.partial(self.open_cat_file) open_cat_button.released.connect(openCat) hbox.addWidget(open_cat_button) vbox.addLayout(hbox) view = self.view = QtWebKit.QWebView() cache = QtNetwork.QNetworkDiskCache() cache.setCacheDirectory("cache") view.page().networkAccessManager().setCache(cache) view.page().networkAccessManager() view.page().mainFrame().addToJavaScriptWindowObject("MainWindow", self) view.page().setLinkDelegationPolicy(QtWebKit.QWebPage.DelegateAllLinks) view.load(QtCore.QUrl('map.html')) view.loadFinished.connect(self.onLoadFinished) view.linkClicked.connect(QtGui.QDesktopServices.openUrl) vbox.addWidget(view)
def __init__(self, titulo, archivo, parent=None): super(HelpView, self).__init__(parent) self.setWindowState(QtCore.Qt.WindowMaximized) self.setWindowIcon( QtGui.QIcon( QtGui.QPixmap(os.environ["pychemqt"] + "/images/button/help.png"))) self.setWindowTitle( QtGui.QApplication.translate("pychemqt", "Help") + " - " + titulo) layout = QtGui.QVBoxLayout(self) backAction = QtGui.QAction( QtGui.QIcon(os.environ["pychemqt"] + "/images/button/back.png"), "&Back", self) backAction.setShortcut(QtGui.QKeySequence.Back) homeAction = QtGui.QAction( QtGui.QIcon(os.environ["pychemqt"] + "/images/button/home.png"), "&Home", self) homeAction.setShortcut("Home") self.pageLabel = QtGui.QLabel() toolBar = QtGui.QToolBar() toolBar.addAction(backAction) toolBar.addAction(homeAction) toolBar.addWidget(self.pageLabel) layout.addWidget(toolBar) self.Viewer = QtWebKit.QWebView() self.Viewer.setUrl(archivo) layout.addWidget(self.Viewer) self.buttonBox = QtGui.QDialogButtonBox(QtGui.QDialogButtonBox.Close) self.buttonBox.rejected.connect(self.reject) layout.addWidget(self.buttonBox)
def __init__(self, parent, zoomFactor=None): QtGui.QFrame.__init__(self, parent) self.lastHand = None self._browser = QtWebKit.QWebView(self) self._browser.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self._browser.customContextMenuRequested.connect( self.onContextMenuWebView) if zoomFactor is not None: self._browser.setZoomFactor(zoomFactor) self.comboBox = QtGui.QComboBox(self) for i, (text, _, _) in enumerate(self.PayoutStructures): self.comboBox.addItem(text, i) self.editPayoutStructure = QtGui.QLineEdit(self) self.editPayoutStructure.setEnabled(False) #setup actions self.actionSave = QtGui.QAction(self) self.actionSave.setText('Save..') self.actionSave.setEnabled(False) #self.actionSave.setToolTip('Save hand history (Alt+S)') #self.actionSave.setShortcut(QtGui.QKeySequence('Alt+S') ) self.actionSave.triggered.connect(self.onActionSaveTriggered) #self._toolBar.addAction(self.actionSave) # connect signals Tc2Config.globalObject.initSettingsFinished.connect( self.onGlobalObjectInitSettingsFinished) Tc2Config.globalObject.closeEvent.connect(self.onCloseEvent)
def show_shortcuts(): try: from PyQt4 import QtWebKit except ImportError: # redhat disabled QtWebKit in their qt build but don't punish the # users qtutils.critical( N_('This PyQt4 does not include QtWebKit.\n' 'The keyboard shortcuts feature is unavailable.')) return try: html = show_shortcuts.html except AttributeError: hotkeys_html = resources.doc(N_('hotkeys.html')) html = show_shortcuts.html = core.read(hotkeys_html) try: widget = show_shortcuts.widget except AttributeError: parent = qtutils.active_window() widget = show_shortcuts.widget = QtGui.QDialog(parent) widget.setWindowModality(Qt.WindowModal) widget.setWindowTitle(N_('Shortcuts')) web = QtWebKit.QWebView(parent) web.setHtml(html) layout = qtutils.hbox(defs.no_margin, defs.spacing, web) widget.setLayout(layout) widget.resize(800, min(parent.height(), 600)) qtutils.add_action(widget, N_('Close'), widget.accept, hotkeys.QUESTION, *hotkeys.ACCEPT) widget.show() return widget
def __init__(self, main): super(DocReader, self).__init__(main) self.main = main if os.path.exists(os.path.join('..', 'images')): img_path = os.path.join('..', 'images') else: img_path = os.path.join('images') self.toolbar = QtGui.QToolBar('Documentation Toolbar') self.ContainerGrid = QtGui.QGridLayout(self) self.ContainerGrid.setMargin(0) self.ContainerGrid.setSpacing(0) self.webkit = QtWebKit.QWebView() self.ContainerGrid.addWidget(self.toolbar) self.ContainerGrid.addWidget(self.webkit) self.setLayout(self.ContainerGrid) url = "docs/index.html" self.webkit.load(QtCore.QUrl(url)) self.webkit.show()
def loadAndWait(self, theHtmlPath=None, theHtmlSnippet=None): """Load some html to a web view and wait till it is done.""" if theHtmlSnippet: myHeader = html_header() myFooter = html_footer() myHtml = myHeader + theHtmlSnippet + myFooter else: myFile = file(theHtmlPath, 'rt') myHtml = myFile.readlines() myFile.close() self.webView = QtWebKit.QWebView() myFrame = self.webView.page().mainFrame() myFrame.setScrollBarPolicy(QtCore.Qt.Vertical, QtCore.Qt.ScrollBarAlwaysOff) myFrame.setScrollBarPolicy(QtCore.Qt.Horizontal, QtCore.Qt.ScrollBarAlwaysOff) # noinspection PyUnresolvedReferences self.webView.loadFinished.connect(self.htmlLoadedSlot) self.webView.setHtml(myHtml) self.htmlLoadedFlag = False myTimeOut = 20 myCounter = 0 mySleepPeriod = 1 while not self.htmlLoadedFlag and myCounter < myTimeOut: # Block until the event loop is done printing the page myCounter += 1 time.sleep(mySleepPeriod) # noinspection PyArgumentList QtCore.QCoreApplication.processEvents() if not self.htmlLoadedFlag: LOGGER.error('Failed to load html')
def create_page(self, wait_timeout=20, wait_callback=None, is_popup=False, max_resource_queued=None, download_images=True, prevent_download=[]): """Create a new GhostWebPage :param wait_timeout: The timeout used when we want to load a new url. :param wait_callback: An optional callable that is periodically executed until Ghost stops waiting. :param is_popup: Indicates if the QWebPage it's a popup :param max_resource_queued: Indicates witch it's the max number of resources that can be saved in memory. If None then no limits are applied. If 0 then no resources are kept. If the number it's > 0 then the number of resources won't be more than max_resource_queued :param download_images: Indicate if the browser download or not the images :param prevent_download: A List of extensions of the files that you want to prevent from downloading """ cache_name = self.cache_dir if self.share_cache else self.cache_dir + str( random.randint(0, 100000000)) network_manager = NetworkAccessManager( cache_dir=cache_name, cache_size=self.cache_size, prevent_download=prevent_download) if not self.share_cookies or len(self.network_managers) == 0: cookie_jar = QNetworkCookieJar() network_manager.setCookieJar(cookie_jar) self.cookie_jar = cookie_jar else: network_manager.setCookieJar(self.cookie_jar) if self.share_cookies: self.cookie_jar.setParent(None) self.network_managers.append(network_manager) page = GhostWebPage(app=Ghost._app, network_manager=network_manager, wait_timeout=wait_timeout, wait_callback=wait_callback, viewport_size=self.viewport_size, user_agent=self.user_agent, log_level=self.log_level, create_page_callback=self.create_page, is_popup=is_popup, max_resource_queued=max_resource_queued, download_images=download_images) page.removeWindowFromList.connect(self._remove_page) self._pages.append(page) if self.display: self.webview = QtWebKit.QWebView() self.webview.setPage(page) self.webview.show() return page, (len(self._pages) - 1)
def set_up(self): """ Setting up of GUI components """ # Lazy import of widgets # Putting everything together self.tabWidget = QtGui.QTabWidget(self) self.tabWidget.setTabsClosable(True) self.connect(self.tabWidget, QtCore.SIGNAL('tabCloseRequested (int)'), self._closeTab) # The tab for configuring and controlling operations self.ControlTab = ControlWidget(self) self.tabWidget.addTab(self.ControlTab, "Control") # The tabs that show the documentation # TODO: Currently, it is not possible to login via the viewer such that # the desired page can not be displayed. Thus, we use the local # documentation DocumentationTab = QtWebKit.QWebView(self) DocumentationTab.load(QtCore.QUrl("../../../docs/.build/html/index.html")) self.tabWidget.addTab(DocumentationTab, "pySPACE Documentation") self.connect(DocumentationTab.page().networkAccessManager(), QtCore.SIGNAL("sslErrors (QNetworkReply *, const QList<QSslError> &)"), self._sslErrorHandler) # Set initially selected tab self.tabWidget.setCurrentWidget(self.ControlTab) self.setCentralWidget(self.tabWidget) # Connect handler for signal that signals that an operation has been finished self.ControlTab.operationFinishedSignal.connect(self._operation_finished) # Implement proper shutdown self.connect(self, QtCore.SIGNAL('quit()'), self._close_event)
def webkit_version(): """ Return the Webkit version in use. Note method added relatively recently, so return 0 if prior to this """ try: webkit_ver = float(QtWebKit.qWebKitVersion()) log.debug("Webkit version = %s" % webkit_ver) except AttributeError: webkit_ver = 0 return webkit_ver
MAKO_VERSION = u'-' try: import uno arg = uno.createUnoStruct(u'com.sun.star.beans.PropertyValue') arg.Name = u'nodepath' arg.Value = u'/org.openoffice.Setup/Product' context = uno.getComponentContext() provider = context.ServiceManager.createInstance(u'com.sun.star.configuration.ConfigurationProvider') node = provider.createInstanceWithArguments(u'com.sun.star.configuration.ConfigurationAccess', (arg,)) UNO_VERSION = node.getByName(u'ooSetupVersion') except ImportError: UNO_VERSION = u'-' except: UNO_VERSION = u'- (Possible non-standard UNO installation)' try: WEBKIT_VERSION = QtWebKit.qWebKitVersion() except AttributeError: WEBKIT_VERSION = u'-' from openlp.core.lib import UiStrings, Settings, translate from openlp.core.utils import get_application_version from exceptiondialog import Ui_ExceptionDialog log = logging.getLogger(__name__) class ExceptionForm(QtGui.QDialog, Ui_ExceptionDialog): """ The exception dialog
from PyQt4.QtCore import qVersion, PYQT_VERSION_STR p += 'QtVersion: %s\n' % qVersion() p += 'PyQtVersion: %s\n' % PYQT_VERSION_STR except Exception,d: print '>>%s: %s' % (releaseName, d) p += 'QtVersion: Unknown\n' p += 'PyQtVersion: Unknown\n' try: import sipconfig p += 'SipVersion: %s\n' % sipconfig.Configuration().sip_version_str except Exception,d: print '>>%s: %s' % (releaseName, d) p += 'SipVersion: Unknown\n' try: from PyQt4 import QtWebKit p += 'WebKitVersion: %s\n' % QtWebKit.qWebKitVersion() except: p += 'WebKitVersion: Unknown\n' p += ''.join(traceback.format_exception(type, value, tb)) if data is not None: try: p += data except Exception, d: print '>>%s: %s' % (releaseName, d) try: globalObject.feedbackException.emit(p) except Exception, d: print '>>%s: %s' % (releaseName, d) try: # try to log logger.critical(p) except Exception, d: