コード例 #1
0
ファイル: mainwindow.cpp プロジェクト: chvink/IRCrap
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow),
    serverView(0),
    manager(0)
{
    ui->setupUi(this);
    serverView = new ChannelDisplay(ui->tabList);
    ui->tabList->addTab(serverView, "Server");
    ui->tabList->setCurrentIndex(0);
    manager = new IrcManager(ui, serverView, &sock);

    enableConnect();

    connect(&sock, SIGNAL(connected()), this, SLOT(connected()));
    connect(&sock,SIGNAL(disconnected()), this, SLOT(disconnected()));
    connect(&sock,SIGNAL(bytesWritten(qint64)), this, SLOT(bytesWritten(qint64)));
    connect(&sock,SIGNAL(readyRead()),this,SLOT(readyRead()));
    connect(ui->sendButton,SIGNAL(clicked(bool)),this,SLOT(issueQuery()));
    connect(ui->connectButton,SIGNAL(clicked(bool)),this,SLOT(connectToServer()));
    connect(&sock,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(error(QAbstractSocket::SocketError)));
    connect(ui->disconnectButton,SIGNAL(clicked(bool)),this,SLOT(disconnect()));
    connect(ui->queryEdit, SIGNAL(returnPressed()), this, SLOT(issueQuery()));
    connect(ui->joinButton, SIGNAL(clicked(bool)), this, SLOT(join()));
}
コード例 #2
0
ファイル: ftp.cpp プロジェクト: rgfernandes/qtdesktop
Ftp::Ftp(void) : ftp(0), networkSession(0) {
	QNetworkConfigurationManager manager;
	if (manager.capabilities() & QNetworkConfigurationManager::NetworkSessionRequired) {
		// Get saved network configuration
		QSettings settings(QSettings::UserScope, QLatin1String("Trolltech"));
		settings.beginGroup(QLatin1String("QtNetwork"));
		const QString id = settings.value(QLatin1String("DefaultNetworkConfiguration")).toString();
		settings.endGroup();
		// If the saved network configuration is not currently discovered use the system default
		QNetworkConfiguration config = manager.configurationFromIdentifier(id);
		if ((config.state() & QNetworkConfiguration::Discovered) != QNetworkConfiguration::Discovered)
			config = manager.defaultConfiguration();
		networkSession = new QNetworkSession(config, this);
		connect(networkSession, SIGNAL(opened()), this, SLOT(enableConnect()));
		connected = false;
		qDebug() << "FTP: Opening session...";
		networkSession->open();
	}
}
コード例 #3
0
ファイル: mainwindow.cpp プロジェクト: chvink/IRCrap
void MainWindow::disconnected()
{
    serverView->append("Disconnected");
    enableConnect();
}
コード例 #4
0
ファイル: mainwindow.cpp プロジェクト: chvink/IRCrap
void MainWindow::disconnect()
{
    sock.close();
    enableConnect();
}
コード例 #5
0
ファイル: mainwindow.cpp プロジェクト: chvink/IRCrap
void MainWindow::error(QAbstractSocket::SocketError err)
{
    QString msg;
    switch(err)
    {
        case QAbstractSocket::ConnectionRefusedError:
            msg = "Connection refused";
            break;
        case QAbstractSocket::RemoteHostClosedError:
            msg = "Remote host closed";
            break;
        case QAbstractSocket::HostNotFoundError:
            msg = "Host not found";
            break;
        case QAbstractSocket::SocketAccessError:
            msg = "Socket access error";
            break;
        case QAbstractSocket::SocketResourceError:
            msg = "Socket resource error";
            break;
        case QAbstractSocket::SocketTimeoutError:
            msg = "Socket timeout error";
            break;
        case QAbstractSocket::DatagramTooLargeError:
            msg = "Datagram too large error";
            break;
        case QAbstractSocket::NetworkError:
            msg = "Network error";
            break;
        case QAbstractSocket::AddressInUseError:
            msg = "Address in use";
            break;
        case QAbstractSocket::SocketAddressNotAvailableError:
            msg = "Socket address not available";
            break;
        case QAbstractSocket::UnsupportedSocketOperationError:
            msg = "Unsupported socket operation";
            break;
        case QAbstractSocket::ProxyAuthenticationRequiredError:
            msg = "Proxy authentication required";
            break;
        case QAbstractSocket::SslHandshakeFailedError:
            msg = "SSL handshake failed";
            break;
        case QAbstractSocket::UnfinishedSocketOperationError:
            msg = "Unfinished socket operation";
            break;
        case QAbstractSocket::ProxyConnectionRefusedError:
        case QAbstractSocket::ProxyConnectionClosedError:
        case QAbstractSocket::ProxyConnectionTimeoutError:
        case QAbstractSocket::ProxyNotFoundError:
        case QAbstractSocket::ProxyProtocolError:
            msg = "Proxy error";
            break;
        case QAbstractSocket::UnknownSocketError:
        default:
            msg = "Unknown socket error";
            break;
    }

    serverView->append(msg);
    enableConnect();
}
コード例 #6
0
BOOL LoginDialog::onCommand(UINT controlID, UINT notificationID)
{
  switch (controlID) {
  case IDC_CSERVER:
    switch (notificationID) {
    case CBN_DROPDOWN:
      updateHistory();
      break;

    // select item in ComboBox with list of history
    case CBN_SELENDOK:
      {
        int selectedItemIndex = m_server.getSelectedItemIndex();
        if (selectedItemIndex < 0) {
          return FALSE;
        }
        StringStorage server;
        m_server.getItemText(selectedItemIndex, &server);
        ConnectionConfigSM ccsm(RegistryPaths::VIEWER_PATH,
                                server.getString());
        m_connectionConfig.loadFromStorage(&ccsm);
        break;
      }
    }

    enableConnect();
    break;

  // click "Connect"
  case IDOK:
    onConnect();
    kill(0);
    break;

  // cancel connection
  case IDCANCEL:
    kill(0);
    break;

  case IDC_BCONFIGURATION:
    onConfiguration();
    break;

  case IDC_BOPTIONS:
    return onOptions();

  case IDC_LISTENING:
    onListening();
    kill(0);
    break;

  case IDC_ORDER_SUPPORT_BUTTON:
    onOrder();
    break;

  case IDC_BABOUT:
    onAbout();
    break;

  default:
    _ASSERT(true);
    return FALSE;
  }
  return TRUE;
}