Esempio n. 1
0
    def initialize(self):
        # create a gui application
        qt_app = QtGui.QApplication(sys.argv)
        self.qt_gui = qt_app

        # start the web site app and set app manager
        app_manager = gui.OAppManager()
        app = gui.WSGIApp('core', web.app.wsgi_app)
        app_manager.register(app)

        page = QtWebKit.QWebPage()
        page.setNetworkAccessManager(
            gui.ONetworkAccessManager(page, page.networkAccessManager()))
        page.settings().setAttribute(
            QtWebKit.QWebSettings.DeveloperExtrasEnabled, True)
        self.page = page

        view = QtWebKit.QWebView()
        view.setPage(page)
        view.resize(1024, 950)
        view.move(qt_app.desktop().screen().rect().center() -
                  view.rect().center())
        view.show()
        self.view = view

        api = OJSAPI()
        # add to js, then js can access oegarn
        api.attach(self)
Esempio n. 2
0
def loadPage(url):
    page = QtWebKit.QWebPage()
    loop = QtCore.QEventLoop() # Create event loop
    page.mainFrame().loadFinished.connect(loop.quit) # Connect loadFinished to loop quit
    page.mainFrame().load(url)
    loop.exec_() # Run event loop, it will end on loadFinished
    return page.mainFrame().toHtml()
Esempio n. 3
0
 def __init__(self, neo, applet):
     super(JS_API, self).__init__()
     self._neo = neo
     self._applet = applet
     self._webpage = QtWebKit.QWebPage()
     self._frame = self._webpage.mainFrame()
     self._frame.addToJavaScriptWindowObject('_JS_API', self)
Esempio n. 4
0
 def print(self, filename):
     print(filename)
     self.filename = filename
     self.printer = QtGui.QPrinter()
     self.printer.setPageSize(QtGui.QPrinter.A4)
     self.printer.setColorMode(QtGui.QPrinter.Color)
     self.printer.setOutputFormat(QtGui.QPrinter.PdfFormat)
     self.printer.setOutputFileName(filename)
     self.page = QtWebKit.QWebPage(self.parent())
     self.page.mainFrame().load("file://%s" % self.url)
     self.view = QtWebKit.QWebView()
     self.view.setPage(self.page)
     #self.view.show()
     self.page.mainFrame().loadFinished.connect(self.print_)
Esempio n. 5
0
    def test_power_on(self):
        page = QtWebKit.QWebPage()
        display = Display(page, hostname="kiosk-01")
        if os.path.exists(self.status_file):
            os.remove(self.status_file)

        # trigger powerOn via JavaScript
        display.page.mainFrame().evaluateJavaScript("window.display.powerOn()")
        QtCore.QCoreApplication.processEvents()

        self.assert_(os.path.exists(self.status_file),
                     'status file does not exist')
        f = open(self.status_file, 'r')
        status = f.read().strip()
        f.close()
        self.assertEquals('on', status)
Esempio n. 6
0
    def __init__(self, parent=None):
        super(Form, self).__init__(parent)
        self.setWindowTitle("My Form")
        #self.setWindowFlags(Qt.FramelessWindowHint)
        self.setWindowFlags(Qt.WindowStaysOnTopHint)
        #self.showFullScreen()
        layout = QHBoxLayout()
        self.text = QTextEdit()
        self.scene = QGraphicsScene()
        self.view = QGraphicsView(self.scene)
        #layout.addWidget(self.text)
        layout.addWidget(self.view)
        #textItem = QGraphicsTextItem('test')
        #textItem.linkHovered.connect(self.itemHover)
        anotherItem = QGraphicsTextItem()
        anotherItem.setHtml(
            '<html><style>a { color: green; text-decoration: none; } a:hover { color: red; }</style><body>Another one <a id="test"  href="test">bites!</a></body></html>'
        )
        anotherItem.linkHovered.connect(self.itemHover)
        anotherItem.setTextInteractionFlags(Qt.LinksAccessibleByMouse)
        #self.scene.addItem(textItem)
        self.scene.addItem(anotherItem)

        # USE THIS
        textBrowser = QtWebKit.QWebView()
        webPage = QtWebKit.QWebPage()
        webPage.mainFrame().setHtml(
            '<html><style>a { color: green; text-decoration: none; } a:hover { color: red; }</style><body>Another one <a id="test"  href="test">bites!</a></body></html>'
        )
        webPage.linkHovered.connect(self.itemHover)
        textBrowser.setPage(webPage)
        layout.addWidget(textBrowser)
        # END OF THIS

        label = QLabel(
            '<html><style>a { color: green; text-decoration: none; }</style><body>Another one <a id="test"  href="test">bites!</a></body></html>'
        )
        label.linkHovered.connect(self.itemHover)
        label.setStyleSheet('''a {
                            color: white;
                            }''')
        layout.addWidget(label)
        # Set dialog layout
        self.setLayout(layout)
Esempio n. 7
0
 def test_display(self):
     page = QtWebKit.QWebPage()
     display = Display(page, hostname="kiosk-01")
     self.assert_(display)