ginebra/emulator/chromeconsole.cpp
branchGCC_SURGE
changeset 8 2e16851ffecd
parent 2 bf4420e9fa4d
parent 6 1c3b8676e58c
--- a/ginebra/emulator/chromeconsole.cpp	Fri Jun 11 16:23:26 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,144 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "chromeconsole.h"
-#include "../chromeview.h"
-#include "../chromewidget.h"
-#include "qwebpage.h"
-#include "qwebframe.h"
-#include "ui_console.h"
-
-ChromeConsole::ChromeConsole(ChromeView *chromeView)
-  : QDialog(),
-    m_chromeView(chromeView),
-    m_historyIndex(0)
-{
-    m_ui = new Ui_ConsoleDialog;
-    m_ui->setupUi(this);
-
-    QList<int> sizes;
-    sizes.append(300);
-    sizes.append(30);
-    m_ui->splitter->setSizes(sizes);
-
-    // Read the saved state from disk.
-    try {
-        QFile file("console.dat");
-        if(file.open(QIODevice::ReadOnly)) {
-            QDataStream in(&file);
-            QString str;
-            in >> str;
-            m_ui->outputEdit->setPlainText(str);
-            in >> str;
-            m_ui->inputEdit->setPlainText(str);
-            int i;
-            in >> i;
-            QTextCursor cursor = m_ui->inputEdit->textCursor();
-            cursor.setPosition(i);
-            m_ui->inputEdit->setTextCursor(cursor);
-            in >> m_expressionHistory;
-            file.close();
-        }
-    }
-    catch(...) {
-    }
-    m_ui->outputEdit->moveCursor(QTextCursor::End);
-    m_ui->outputEdit->ensureCursorVisible();
-}
-
-QVariant ChromeConsole::evaluateExpression(const QString &expression) {
-    m_expressionHistory.push_front(expression);
-    m_historyIndex = 0;
-
-    QVariant result = m_chromeView->getChromeWidget()->chromePage()->mainFrame()->evaluateJavaScript(expression);
-    qDebug() << result;
-    return result;
-}
-
-void ChromeConsole::evaluate() {   // slot
-    QString expression = m_ui->inputEdit->toPlainText();
-    m_ui->outputEdit->appendPlainText(">> " + expression);
-    QVariant result = evaluateExpression(expression);
-
-    // Figure out the best way to print the result, must be a better way to do this...
-    if(result == QVariant()) {
-        m_ui->outputEdit->appendPlainText("undefined");
-    }
-    else if(result.toString() != "") {
-        m_ui->outputEdit->appendPlainText(result.toString());
-    }
-    else if(result.type() == QVariant::List) {
-        m_ui->outputEdit->appendPlainText(result.toStringList().join(","));
-    }
-    else {
-        // Probably a complex object, this won't be a real javascript value but it
-        // will be informative to the developer.
-        //m_ui->outputEdit->appendPlainText(result.typeName());
-        QString resultString;
-        QDebug debug(&resultString);
-        debug << result;
-        m_ui->outputEdit->appendPlainText(resultString);
-    }
-
-    m_ui->outputEdit->ensureCursorVisible();
-
-    // Force outputEdit to repaint, otherwise get garbled text (at least on Windows).
-    // Note: m_ui->outputEdit->update() doesn't work...
-    m_ui->outputEdit->hide();
-    m_ui->outputEdit->show();
-}
-
-void ChromeConsole::keyPressEvent(QKeyEvent *event) {
-    switch(event->key()) {
-        case Qt::Key_Enter:
-        case Qt::Key_Return:
-          if(event->modifiers() | Qt::ControlModifier)
-              evaluate();
-          break;
-        case Qt::Key_Up:
-          if(event->modifiers() | Qt::ControlModifier) {
-              if(m_historyIndex < m_expressionHistory.count() - 1)
-                  m_ui->inputEdit->setPlainText(m_expressionHistory[++m_historyIndex]);
-          }
-          break;
-        case Qt::Key_Down:
-          if(event->modifiers() | Qt::ControlModifier) {
-              if(m_historyIndex > 0)
-                  m_ui->inputEdit->setPlainText(m_expressionHistory[--m_historyIndex]);
-          }
-          break;
-    }
-}
-
-void ChromeConsole::accept() {  // slot
-    try {
-        // Save the state to disk.
-        QFile file("console.dat");
-        if(file.open(QIODevice::WriteOnly)) {
-            QDataStream out(&file);
-            out << m_ui->outputEdit->toPlainText();
-            out << m_ui->inputEdit->toPlainText();
-            out << m_ui->inputEdit->textCursor().position();
-            out << m_expressionHistory;
-            file.close();
-        }
-    }
-    catch(...) {
-    }
-    QDialog::accept();
-}