diff -r 2fbd1d709fe7 -r d4198dcb9983 wlanutilities/wlanwizard/src/wlanwizardscanlist.cpp --- a/wlanutilities/wlanwizard/src/wlanwizardscanlist.cpp Tue Jul 06 15:29:22 2010 +0300 +++ b/wlanutilities/wlanwizard/src/wlanwizardscanlist.cpp Wed Aug 18 10:52:46 2010 +0300 @@ -26,13 +26,20 @@ // User includes #include "wlanwizardscanlist.h" #include "wlanwizardpageinternal.h" +#include "OstTraceDefinitions.h" +#ifdef OST_TRACE_COMPILER_IN_USE +#include "wlanwizardscanlistTraces.h" +#endif + /*! * Constructor for WlanWizardScanList object. */ -WlanWizardScanList::WlanWizardScanList() +WlanWizardScanList::WlanWizardScanList(): mWpsSelected(false) { + OstTraceFunctionEntry0( WLANWIZARDSCANLIST_WLANWIZARDSCANLIST_ENTRY ); + OstTraceFunctionExit0( WLANWIZARDSCANLIST_WLANWIZARDSCANLIST_EXIT ); } /*! @@ -40,9 +47,11 @@ * @param [in] scanList is the object to be copied. */ WlanWizardScanList::WlanWizardScanList(const WlanWizardScanList &scanList): - mOpenOptions(scanList.mOpenOptions) +mOpenOptions(scanList.mOpenOptions), mWpsSelected(false) { + OstTraceFunctionEntry0( DUP1_WLANWIZARDSCANLIST_WLANWIZARDSCANLIST_ENTRY ); + OstTraceFunctionExit0( DUP1_WLANWIZARDSCANLIST_WLANWIZARDSCANLIST_EXIT ); } /*! @@ -50,7 +59,9 @@ */ WlanWizardScanList::~WlanWizardScanList() { + OstTraceFunctionEntry0( DUP2_WLANWIZARDSCANLIST_WLANWIZARDSCANLIST_ENTRY ); + OstTraceFunctionExit0( DUP2_WLANWIZARDSCANLIST_WLANWIZARDSCANLIST_EXIT ); } /*! @@ -62,15 +73,19 @@ */ void WlanWizardScanList::build(const QList &results) { + OstTraceFunctionEntry0( WLANWIZARDSCANLIST_BUILD_ENTRY ); + + mWpsSelected = true; + for (int i = 0; i < results.size(); i++) { WlanNetworkSetting netMode; WlanSecuritySetting secMode; WlanScanResult item = results.at(i); - + netMode.wpsSupported = item.scanResult->value(WlanQtUtilsAp::ConfIdWpsSupported).toBool(); netMode.mode = item.scanResult->value(WlanQtUtilsAp::ConfIdConnectionMode).toInt(); netMode.hidden = (netMode.mode == CMManagerShim::Adhoc) ? false : item.networkHidden; - + secMode.mode = item.scanResult->value(WlanQtUtilsAp::ConfIdSecurityMode).toInt(); secMode.usePsk = (secMode.mode == CMManagerShim::WlanSecModeWep) ? true : item.scanResult->value(WlanQtUtilsAp::ConfIdWpaPskUse).toBool(); @@ -79,11 +94,11 @@ case CMManagerShim::WlanSecMode802_1x: secMode.nextPageId = WlanWizardPage::PageEapStart; break; - + case CMManagerShim::WlanSecModeWep: secMode.nextPageId = WlanWizardPageInternal::PageKeyQuery; break; - + case CMManagerShim::WlanSecModeWpa: case CMManagerShim::WlanSecModeWpa2: if (secMode.usePsk) { @@ -99,11 +114,12 @@ CMManagerShim::WlanSecModeWapi == secMode.mode); secMode.nextPageId = WlanWizardPage::PageProcessSettings; break; - + } - + // prevent duplicate settings. if (!mOpenOptions.contains(netMode)) { + mWpsSelected = (mWpsSelected && netMode.wpsSupported); QList secList; secList.append(secMode); mOpenOptions.insert(netMode, secList); @@ -113,6 +129,7 @@ } // else an identical key-value pair is already in the list -> not added. } + OstTraceFunctionExit0( WLANWIZARDSCANLIST_BUILD_EXIT ); } /*! @@ -127,6 +144,7 @@ WlanNetworkSetting netMode, int index) const { + OstTraceFunctionEntry0( WLANWIZARDSCANLIST_GETSECMODE_ENTRY ); return mOpenOptions.value(netMode).at(index); } @@ -136,6 +154,7 @@ */ int WlanWizardScanList::netModes() const { + OstTraceFunctionEntry0( WLANWIZARDSCANLIST_NETMODES_ENTRY ); return mOpenOptions.size(); } @@ -146,6 +165,8 @@ */ int WlanWizardScanList::secModes(WlanNetworkSetting netMode) const { + OstTraceFunctionEntry0( WLANWIZARDSCANLIST_SECMODES_ENTRY ); + Q_ASSERT(mOpenOptions.contains(netMode)); return mOpenOptions.find(netMode)->size(); } @@ -155,6 +176,18 @@ */ QList WlanWizardScanList::getNetModes() const { + OstTraceFunctionEntry0( WLANWIZARDSCANLIST_GETNETMODES_ENTRY ); return mOpenOptions.keys(); } +/*! + * This function indicates whether the list of scan results supports + * Wi-Fi Protected Setup. + * @return true, if all result network modes support wps, false if even + * a single result does not. + */ +bool WlanWizardScanList::wpsSelected() const +{ + OstTraceFunctionEntry0( WLANWIZARDSCANLIST_WPSSELECTED_ENTRY ); + return mWpsSelected; +}