| 1488 | } |
| 1489 | |
| 1490 | void Application::updateProxySettings(QString proxyTypeStr, QString addr, int port, QString user, QString password) |
| 1491 | { |
| 1492 | // Set the application proxy settings. |
| 1493 | if (proxyTypeStr == "SOCKS5") |
| 1494 | { |
| 1495 | QNetworkProxy::setApplicationProxy( |
| 1496 | QNetworkProxy(QNetworkProxy::Socks5Proxy, addr, port, user, password)); |
| 1497 | } |
| 1498 | else if (proxyTypeStr == "HTTP") |
| 1499 | { |
| 1500 | QNetworkProxy::setApplicationProxy( |
| 1501 | QNetworkProxy(QNetworkProxy::HttpProxy, addr, port, user, password)); |
| 1502 | } |
| 1503 | else if (proxyTypeStr == "None") |
| 1504 | { |
| 1505 | // If we have no proxy set, set no proxy and return. |
| 1506 | QNetworkProxy::setApplicationProxy(QNetworkProxy(QNetworkProxy::NoProxy)); |
| 1507 | } |
| 1508 | else |
| 1509 | { |
| 1510 | // If we have "Default" selected, set Qt to use the system proxy settings. |
| 1511 | QNetworkProxyFactory::setUseSystemConfiguration(true); |
| 1512 | } |
| 1513 | |
| 1514 | qDebug() << "Detecting proxy settings..."; |
| 1515 | QNetworkProxy proxy = QNetworkProxy::applicationProxy(); |
| 1516 | m_network->setProxy(proxy); |
| 1517 | |
| 1518 | QString proxyDesc; |
| 1519 | if (proxy.type() == QNetworkProxy::NoProxy) |
| 1520 | { |
| 1521 | qDebug() << "Using no proxy is an option!"; |
| 1522 | return; |
| 1523 | } |
| 1524 | switch (proxy.type()) |
| 1525 | { |
| 1526 | case QNetworkProxy::DefaultProxy: |
| 1527 | proxyDesc = "Default proxy: "; |
| 1528 | break; |
| 1529 | case QNetworkProxy::Socks5Proxy: |
| 1530 | proxyDesc = "Socks5 proxy: "; |
| 1531 | break; |
| 1532 | case QNetworkProxy::HttpProxy: |
| 1533 | proxyDesc = "HTTP proxy: "; |
| 1534 | break; |
| 1535 | case QNetworkProxy::HttpCachingProxy: |
| 1536 | proxyDesc = "HTTP caching: "; |
| 1537 | break; |
| 1538 | case QNetworkProxy::FtpCachingProxy: |
| 1539 | proxyDesc = "FTP caching: "; |
| 1540 | break; |
| 1541 | default: |
| 1542 | proxyDesc = "DERP proxy: "; |
| 1543 | break; |
| 1544 | } |
| 1545 | proxyDesc += QString("%1:%2") |
| 1546 | .arg(proxy.hostName()) |
| 1547 | .arg(proxy.port()); |
no test coverage detected