diff options
Diffstat (limited to 'examples/webkit/formextractor')
-rwxr-xr-x | examples/webkit/formextractor/form.html | 24 | ||||
-rw-r--r-- | examples/webkit/formextractor/formextractor.cpp | 29 | ||||
-rw-r--r-- | examples/webkit/formextractor/formextractor.h | 4 | ||||
-rw-r--r-- | examples/webkit/formextractor/formextractor.pro | 7 | ||||
-rw-r--r-- | examples/webkit/formextractor/mainwindow.cpp | 3 |
5 files changed, 33 insertions, 34 deletions
diff --git a/examples/webkit/formextractor/form.html b/examples/webkit/formextractor/form.html index 18ddff1..6b0bbde 100755 --- a/examples/webkit/formextractor/form.html +++ b/examples/webkit/formextractor/form.html @@ -1,22 +1,4 @@ -<html><script> -function extractFormValues() -{ - var firstName = document.getElementById("firstname").value; - var lastName = document.getElementById("lastname").value; - var maleGender = document.getElementById("genderMale"); - var femaleGender = document.getElementById("genderFemale"); - - var gender = ""; - if (maleGender.checked) - gender = maleGender.value; - else if (femaleGender.checked) - gender = femaleGender.value; - - var updates = document.getElementById("updates").checked; - - formExtractor.setValues(firstName, lastName, gender, updates); -} -</script><body> +<html><body> <h1> The Green People Book Club </h1> @@ -24,7 +6,7 @@ The Green People Book Club <p> Welcome to The Green People Book Club. Please register to obtain a membership with us. </p> - <form onsubmit="extractFormValues()"> + <form onsubmit="formExtractor.submit()"> <table> <tbody><tr> <td> @@ -61,4 +43,4 @@ Welcome to The Green People Book Club. Please register to obtain a membership wi <input type="submit" value="Submit"> </form> -</body></html>
\ No newline at end of file +</body></html> diff --git a/examples/webkit/formextractor/formextractor.cpp b/examples/webkit/formextractor/formextractor.cpp index e1d31e8..c0d4063 100644 --- a/examples/webkit/formextractor/formextractor.cpp +++ b/examples/webkit/formextractor/formextractor.cpp @@ -41,6 +41,8 @@ #include "formextractor.h" +#include <QWebElement> + FormExtractor::FormExtractor(QWidget *parent, Qt::WFlags flags) : QWidget(parent, flags) { @@ -55,17 +57,28 @@ FormExtractor::~FormExtractor() { } -void FormExtractor::setValues(const QString &firstName, const QString &lastName, - const QString &gender, bool updates) +void FormExtractor::submit() { - ui.firstNameEdit->setText(firstName); - ui.lastNameEdit->setText(lastName); - ui.genderEdit->setText(gender); + QWebFrame *frame = ui.webView->page()->mainFrame(); - if (updates == false) - ui.updatesEdit->setText("No"); - else + QWebElement firstName = frame->findFirstElement("#firstname"); + QWebElement lastName = frame->findFirstElement("#lastname"); + QWebElement maleGender = frame->findFirstElement("#genderMale"); + QWebElement femaleGender = frame->findFirstElement("#genderFemale"); + QWebElement updates = frame->findFirstElement("#updates"); + + ui.firstNameEdit->setText(firstName.scriptableProperty("value").toString()); + ui.lastNameEdit->setText(lastName.scriptableProperty("value").toString()); + + if (maleGender.scriptableProperty("checked").toBool()) + ui.genderEdit->setText(maleGender.scriptableProperty("value").toString()); + else if (femaleGender.scriptableProperty("checked").toBool()) + ui.genderEdit->setText(femaleGender.scriptableProperty("value").toString()); + + if (updates.scriptableProperty("checked").toBool()) ui.updatesEdit->setText("Yes"); + else + ui.updatesEdit->setText("No"); } void FormExtractor::populateJavaScriptWindowObject() diff --git a/examples/webkit/formextractor/formextractor.h b/examples/webkit/formextractor/formextractor.h index 9aba404..a3d67ac 100644 --- a/examples/webkit/formextractor/formextractor.h +++ b/examples/webkit/formextractor/formextractor.h @@ -55,9 +55,7 @@ public: ~FormExtractor(); public slots: - void setValues(const QString &firstName, const QString &lastName, - const QString &gender, bool updates); - + void submit(); void populateJavaScriptWindowObject(); private: diff --git a/examples/webkit/formextractor/formextractor.pro b/examples/webkit/formextractor/formextractor.pro index d2cb240..ba9c72f 100644 --- a/examples/webkit/formextractor/formextractor.pro +++ b/examples/webkit/formextractor/formextractor.pro @@ -1,4 +1,4 @@ -QT += webkit +QT += webkit network TARGET = formExtractor TEMPLATE = app SOURCES += main.cpp \ @@ -14,3 +14,8 @@ target.path = $$[QT_INSTALL_EXAMPLES]/webkit/formextractor sources.files = $$SOURCES $$HEADERS $$FORMS $$RESOURCES *.pro form.html images sources.path = $$[QT_INSTALL_EXAMPLES]/webkit/formextractor INSTALLS += target sources + +symbian { + include($$QT_SOURCE_TREE/examples/symbianpkgrules.pri) + TARGET.UID3 = 0xA000CF6D +} diff --git a/examples/webkit/formextractor/mainwindow.cpp b/examples/webkit/formextractor/mainwindow.cpp index dde9e39..7bf8b6b 100644 --- a/examples/webkit/formextractor/mainwindow.cpp +++ b/examples/webkit/formextractor/mainwindow.cpp @@ -48,13 +48,14 @@ MainWindow::MainWindow() createMenus(); centralWidget = new FormExtractor(this); setCentralWidget(centralWidget); + setUnifiedTitleAndToolBarOnMac(true); } void MainWindow::createActions() { exitAct = new QAction(tr("E&xit"), this); exitAct->setStatusTip(tr("Exit the application")); - exitAct->setShortcut(tr("Ctrl+Q")); + exitAct->setShortcuts(QKeySequence::Quit); connect(exitAct, SIGNAL(triggered()), this, SLOT(close())); aboutAct = new QAction(tr("&About"), this); |