Add QUrl::setQuery overload with QUrlQuery
Change-Id: I0cba92b6bf7f848f1918383b380c0444b8bead3a Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
This commit is contained in:
parent
f40e934983
commit
8cf66c3bc4
@ -199,6 +199,7 @@
|
||||
#include "qdir.h" // for QDir::fromNativeSeparators
|
||||
#include "qtldurl_p.h"
|
||||
#include "private/qipaddress_p.h"
|
||||
#include "qurlquery.h"
|
||||
#if defined(Q_OS_WINCE_WM)
|
||||
#pragma optimize("g", off)
|
||||
#endif
|
||||
@ -1725,6 +1726,18 @@ void QUrl::setQuery(const QString &query)
|
||||
d->sectionIsPresent &= ~QUrlPrivate::Query;
|
||||
}
|
||||
|
||||
void QUrl::setQuery(const QUrlQuery &query)
|
||||
{
|
||||
detach();
|
||||
|
||||
// we know the data is in the right format
|
||||
d->query = query.toString();
|
||||
if (query.isEmpty())
|
||||
d->sectionIsPresent &= ~QUrlPrivate::Query;
|
||||
else
|
||||
d->sectionIsPresent |= QUrlPrivate::Query;
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the query string of the URL in percent encoded form.
|
||||
*/
|
||||
|
@ -53,6 +53,7 @@ QT_BEGIN_HEADER
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
|
||||
class QUrlQuery;
|
||||
class QUrlPrivate;
|
||||
class QDataStream;
|
||||
|
||||
@ -213,6 +214,7 @@ public:
|
||||
|
||||
bool hasQuery() const;
|
||||
void setQuery(const QString &query);
|
||||
void setQuery(const QUrlQuery &query);
|
||||
QString query(ComponentFormattingOptions = PrettyDecoded) const;
|
||||
|
||||
bool hasFragment() const;
|
||||
|
@ -116,9 +116,9 @@ Q_DECLARE_SHARED(QUrlQuery)
|
||||
|
||||
#if QT_DEPRECATED_SINCE(5,0)
|
||||
inline void QUrl::setQueryItems(const QList<QPair<QString, QString> > &qry)
|
||||
{ QUrlQuery q(*this); q.setQueryItems(qry); setQuery(q.query()); }
|
||||
{ QUrlQuery q(*this); q.setQueryItems(qry); setQuery(q); }
|
||||
inline void QUrl::addQueryItem(const QString &key, const QString &value)
|
||||
{ QUrlQuery q(*this); q.addQueryItem(key, value); setQuery(q.query()); }
|
||||
{ QUrlQuery q(*this); q.addQueryItem(key, value); setQuery(q); }
|
||||
inline QList<QPair<QString, QString> > QUrl::queryItems() const
|
||||
{ return QUrlQuery(*this).queryItems(); }
|
||||
inline bool QUrl::hasQueryItem(const QString &key) const
|
||||
@ -128,7 +128,7 @@ inline QString QUrl::queryItemValue(const QString &key) const
|
||||
inline QStringList QUrl::allQueryItemValues(const QString &key) const
|
||||
{ return QUrlQuery(*this).allQueryItemValues(key); }
|
||||
inline void QUrl::removeQueryItem(const QString &key)
|
||||
{ QUrlQuery q(*this); q.removeQueryItem(key); setQuery(q.query()); }
|
||||
{ QUrlQuery q(*this); q.removeQueryItem(key); setQuery(q); }
|
||||
inline void QUrl::removeAllQueryItems(const QString &key)
|
||||
{ QUrlQuery q(*this); q.removeAllQueryItems(key); }
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user