Пример #1
0
void WebImageWidget::onNetworkReplyFinished(QNetworkReply *reply)
{
	if (reply->error() == QNetworkReply::NoError)
	{
		int http_status = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();

		if (http_status == 302)
		{
			QString urlLocation = reply->rawHeader("Location");
			getNetworkManager()->get(QNetworkRequest(QUrl(urlLocation)));
			return;
		}
		else
		{
			if (!m_sourceImage)
			{
				m_sourceImage = new QImage();
			}
			m_sourceImage->loadFromData(reply->readAll());

			if (!m_autoSizeToContainer) resize(m_sourceImage->size());

			if (!m_toolTipText.isEmpty()) setToolTip(m_toolTipText);

			update();
		}
	}

	deleteNetworkManager();
	reply->deleteLater();
}
Пример #2
0
void WebImageWidget::setSource(QString source, bool autoSizeToContainer /* = true */)
{
	// 图片没变化则不做操作
	if (m_source.compare(source) == 0) return;

	m_source = source;
	m_autoSizeToContainer = autoSizeToContainer;

	// 删除原图片,并更新显示
	deleteSourceImage();
	update();

	// 网络获取新图片
	if (!m_source.isEmpty())
		getNetworkManager()->get(QNetworkRequest(QUrl(m_source)));
}
Пример #3
0
void HttpManager::sendHttpGetReq(QObject* ths, QString url, HttpGetCallback callback){
    QNetworkAccessManager *netMgr = getNetworkManager();
    HttpRequest request;
    request.sendHttpGetReq(ths, netMgr, url, callback);
}
void mog::network::NetworkGame::internalUpdate(float dt /*= 0*/)
{
	Game::internalUpdate(dt);
	getNetworkManager()->update(dt);
}