diff options
author | Andrea Diamantini <adjam7@gmail.com> | 2009-07-08 18:36:25 +0200 |
---|---|---|
committer | Andrea Diamantini <adjam7@gmail.com> | 2009-07-08 18:36:25 +0200 |
commit | 1f0595f0e4c46dce8483d387ceccc1ad12c14576 (patch) | |
tree | 2eb27773cc8b3743949f58f3b93f68af4dd76159 /src/searchbar.cpp | |
parent | Merge commit 'avaddon/master' (diff) | |
download | rekonq-1f0595f0e4c46dce8483d387ceccc1ad12c14576.tar.xz |
Cleaning code && removing unuseful search bar
Diffstat (limited to 'src/searchbar.cpp')
-rw-r--r-- | src/searchbar.cpp | 131 |
1 files changed, 0 insertions, 131 deletions
diff --git a/src/searchbar.cpp b/src/searchbar.cpp deleted file mode 100644 index e8ffb178..00000000 --- a/src/searchbar.cpp +++ /dev/null @@ -1,131 +0,0 @@ -/* ============================================================ -* -* This file is a part of the rekonq project -* -* Copyright (C) 2008-2009 by Andrea Diamantini <adjam7 at gmail dot com> -* -* -* This program is free software; you can redistribute it -* and/or modify it under the terms of the GNU General -* Public License as published by the Free Software Foundation; -* either version 3, or (at your option) any later version. -* -* This program is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details. -* -* ============================================================ */ - - -// Self Includes -#include "searchbar.h" -#include "searchbar.moc" - -// Local Includes -#include "application.h" -#include "mainwindow.h" - -// KDE Includes -#include <KUrl> -#include <KCompletionBox> - -// Qt Includes -#include <QtCore/QString> -#include <QtGui/QSizePolicy> -#include <QtNetwork/QNetworkAccessManager> -#include <QtNetwork/QNetworkRequest> -#include <QtNetwork/QNetworkReply> -#include <QtXml/QXmlStreamReader> - - -SearchBar::SearchBar(QWidget *parent) - : LineEdit(parent) - , m_networkAccessManager(new QNetworkAccessManager(this)) - , m_timer(new QTimer(this)) -{ - setFocusPolicy(Qt::WheelFocus); - setMouseTracking(true); - setAcceptDrops(true); - - setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); - - setClearButtonShown(true); - - // better solution than using QPalette(s).. - setClickMessage(i18n("Search...")); - - // setting QNetworkAccessManager.. - connect(m_networkAccessManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(handleNetworkData(QNetworkReply*))); - - // setting QTimer.. - m_timer->setSingleShot(true); - m_timer->setInterval(200); - connect(m_timer, SIGNAL(timeout()), SLOT(autoSuggest())); - connect(this, SIGNAL(textEdited(QString)), m_timer, SLOT(start())); - - // connect searchNow slot.. - connect(this, SIGNAL(returnPressed()) , this , SLOT(searchNow())); -} - - -SearchBar::~SearchBar() -{ -} - - -void SearchBar::searchNow() -{ - m_timer->stop(); - QString searchText = text(); - completionBox()->hide(); - - KUrl url(QLatin1String("http://www.google.com/search")); - url.addQueryItem(QLatin1String("q"), searchText); - url.addQueryItem(QLatin1String("ie"), QLatin1String("UTF-8")); - url.addQueryItem(QLatin1String("oe"), QLatin1String("UTF-8")); - url.addQueryItem(QLatin1String("client"), QLatin1String("rekonq")); - emit search(url); -} - - -void SearchBar::focusInEvent(QFocusEvent *event) -{ - selectAll(); - LineEdit::focusInEvent(event); -} - - -void SearchBar::autoSuggest() -{ - QString str = text(); - QString url = QString("http://google.com/complete/search?output=toolbar&q=%1").arg(str); - m_networkAccessManager->get(QNetworkRequest(QString(url))); -} - - -void SearchBar::handleNetworkData(QNetworkReply *networkReply) -{ - QUrl url = networkReply->url(); - if (!networkReply->error()) - { - QStringList choices; - - QString response(networkReply->readAll()); - QXmlStreamReader xml(response); - while (!xml.atEnd()) - { - xml.readNext(); - if (xml.tokenType() == QXmlStreamReader::StartElement) - if (xml.name() == "suggestion") - { - QStringRef str = xml.attributes().value("data"); - choices << str.toString(); - } - } - - setCompletedItems(choices, true); - } - - networkReply->deleteLater(); -} |