QTfrontend/hwform.cpp
changeset 9100 3f5e0280db4d
parent 9080 9b42757d7e71
child 9127 e350500c4edb
child 9163 67334acaaac7
equal deleted inserted replaced
9098:cba0d2199123 9100:3f5e0280db4d
  1372 // config stuff
  1372 // config stuff
  1373     connect(hwnet, SIGNAL(paramChanged(const QString &, const QStringList &)), ui.pageNetGame->pGameCFG, SLOT(setParam(const QString &, const QStringList &)));
  1373     connect(hwnet, SIGNAL(paramChanged(const QString &, const QStringList &)), ui.pageNetGame->pGameCFG, SLOT(setParam(const QString &, const QStringList &)));
  1374     connect(ui.pageNetGame->pGameCFG, SIGNAL(paramChanged(const QString &, const QStringList &)), hwnet, SLOT(onParamChanged(const QString &, const QStringList &)));
  1374     connect(ui.pageNetGame->pGameCFG, SIGNAL(paramChanged(const QString &, const QStringList &)), hwnet, SLOT(onParamChanged(const QString &, const QStringList &)));
  1375     connect(hwnet, SIGNAL(configAsked()), ui.pageNetGame->pGameCFG, SLOT(fullNetConfig()));
  1375     connect(hwnet, SIGNAL(configAsked()), ui.pageNetGame->pGameCFG, SLOT(fullNetConfig()));
  1376 
  1376 
       
  1377     // using proxy slot to prevent loss of game messages when they're sent to not yet connected slot of game object
       
  1378     connect(hwnet, SIGNAL(FromNet(const QByteArray &)), this, SLOT(FromNetProxySlot(const QByteArray &)), Qt::QueuedConnection);
       
  1379 
  1377     //nick and pass stuff
  1380     //nick and pass stuff
  1378     hwnet->m_private_game = !(hostName == NETGAME_DEFAULT_SERVER && port == NETGAME_DEFAULT_PORT);
  1381     hwnet->m_private_game = !(hostName == NETGAME_DEFAULT_SERVER && port == NETGAME_DEFAULT_PORT);
  1379     if (hwnet->m_private_game == false && AskForNickAndPwd() != 0)
  1382     if (hwnet->m_private_game == false && AskForNickAndPwd() != 0)
  1380         return;
  1383         return;
  1381 
  1384 
  1724     game->StartCampaign(camp, miss, campTeam);
  1727     game->StartCampaign(camp, miss, campTeam);
  1725 }
  1728 }
  1726 
  1729 
  1727 void HWForm::CreateNetGame()
  1730 void HWForm::CreateNetGame()
  1728 {
  1731 {
       
  1732     // go back in pages to prevent user from being stuck on certain pages
       
  1733     if(ui.Pages->currentIndex() == ID_PAGE_GAMESTATS ||
       
  1734        ui.Pages->currentIndex() == ID_PAGE_INGAME)
       
  1735         GoBack();
       
  1736 
  1729     QString ammo;
  1737     QString ammo;
  1730     ammo = ui.pageNetGame->pGameCFG->WeaponsName->itemData(
  1738     ammo = ui.pageNetGame->pGameCFG->WeaponsName->itemData(
  1731                ui.pageNetGame->pGameCFG->WeaponsName->currentIndex()
  1739                ui.pageNetGame->pGameCFG->WeaponsName->currentIndex()
  1732            ).toString();
  1740            ).toString();
  1733 
  1741 
  1734     CreateGame(ui.pageNetGame->pGameCFG, ui.pageNetGame->pNetTeamsWidget, ammo);
  1742     CreateGame(ui.pageNetGame->pGameCFG, ui.pageNetGame->pNetTeamsWidget, ammo);
  1735 
  1743 
  1736     connect(game, SIGNAL(SendNet(const QByteArray &)), hwnet, SLOT(SendNet(const QByteArray &)));
  1744     connect(game, SIGNAL(SendNet(const QByteArray &)), hwnet, SLOT(SendNet(const QByteArray &)));
  1737     connect(game, SIGNAL(SendChat(const QString &)), hwnet, SLOT(chatLineToNet(const QString &)));
  1745     connect(game, SIGNAL(SendChat(const QString &)), hwnet, SLOT(chatLineToNet(const QString &)));
  1738     connect(game, SIGNAL(SendTeamMessage(const QString &)), hwnet, SLOT(SendTeamMessage(const QString &)));
  1746     connect(game, SIGNAL(SendTeamMessage(const QString &)), hwnet, SLOT(SendTeamMessage(const QString &)));
  1739     connect(hwnet, SIGNAL(FromNet(const QByteArray &)), game, SLOT(FromNet(const QByteArray &)), Qt::QueuedConnection);
       
  1740     connect(hwnet, SIGNAL(chatStringFromNet(const QString &)), game, SLOT(FromNetChat(const QString &)), Qt::QueuedConnection);
  1747     connect(hwnet, SIGNAL(chatStringFromNet(const QString &)), game, SLOT(FromNetChat(const QString &)), Qt::QueuedConnection);
  1741 
  1748 
  1742     game->StartNet();
  1749     game->StartNet();
  1743 }
  1750 }
  1744 
  1751 
  1824         connect(hwnet, SIGNAL(netSchemeConfig(QStringList &)),
  1831         connect(hwnet, SIGNAL(netSchemeConfig(QStringList &)),
  1825                 this, SLOT(selectFirstNetScheme()));
  1832                 this, SLOT(selectFirstNetScheme()));
  1826     }
  1833     }
  1827 
  1834 
  1828     ui.pageNetGame->setMasterMode(false);
  1835     ui.pageNetGame->setMasterMode(false);
       
  1836 }
       
  1837 
       
  1838 void HWForm::FromNetProxySlot(const QByteArray & msg)
       
  1839 {
       
  1840     if(game)
       
  1841         game->FromNet(msg);
       
  1842 
  1829 }
  1843 }
  1830 
  1844 
  1831 void HWForm::selectFirstNetScheme()
  1845 void HWForm::selectFirstNetScheme()
  1832 {
  1846 {
  1833     ui.pageNetGame->pGameCFG->GameSchemes->setCurrentIndex(0);
  1847     ui.pageNetGame->pGameCFG->GameSchemes->setCurrentIndex(0);