wlanutilities/wlanentryplugin/src/cpwlanentryitemdata.cpp
changeset 61 e1d68407ed06
parent 60 822a45792fdd
equal deleted inserted replaced
60:822a45792fdd 61:e1d68407ed06
    22 #include <HbDataForm>
    22 #include <HbDataForm>
    23 
    23 
    24 #ifdef WLANENTRYPLUGIN_SERVICETRACES    
    24 #ifdef WLANENTRYPLUGIN_SERVICETRACES    
    25 #include <xqservicelog.h>
    25 #include <xqservicelog.h>
    26 #endif
    26 #endif
    27 #include <xqappmgr.h>
       
    28 #include <xqaiwdecl.h>
    27 #include <xqaiwdecl.h>
    29 #include <xqaiwdeclplat.h>
    28 #include <xqaiwdeclplat.h>
    30 
    29 
    31 #include <cpitemdatahelper.h>
    30 #include <cpitemdatahelper.h>
    32 #include <cpbasesettingview.h>
    31 #include <cpbasesettingview.h>
    61     @param[in,out] itemDataHelper Control Panel item data helper object.
    60     @param[in,out] itemDataHelper Control Panel item data helper object.
    62 */
    61 */
    63 
    62 
    64 CpWlanEntryItemData::CpWlanEntryItemData(CpItemDataHelper &itemDataHelper) :
    63 CpWlanEntryItemData::CpWlanEntryItemData(CpItemDataHelper &itemDataHelper) :
    65     CpSettingFormEntryItemData(itemDataHelper, hbTrId("txt_occ_dblist_wireless_lan")),
    64     CpSettingFormEntryItemData(itemDataHelper, hbTrId("txt_occ_dblist_wireless_lan")),
    66     mWlanStatusInfo(new WlanStatusInfo(this))
    65     mWlanStatusInfo(new WlanStatusInfo(this)),
       
    66     mProcessing(false),
       
    67     mRequest(0)
    67 {
    68 {
    68     OstTraceFunctionEntry0(CPWLANENTRYITEMDATA_CPWLANENTRYITEMDATA_ENTRY);
    69     OstTraceFunctionEntry0(CPWLANENTRYITEMDATA_CPWLANENTRYITEMDATA_ENTRY);
    69     
    70     
    70     // Listen for WLAN status updates
    71     // Listen for WLAN status updates
    71     bool connectStatus = connect(
    72     bool connectStatus = connect(
    86 */
    87 */
    87 
    88 
    88 CpWlanEntryItemData::~CpWlanEntryItemData()
    89 CpWlanEntryItemData::~CpWlanEntryItemData()
    89 {
    90 {
    90     OstTraceFunctionEntry0(DUP1_CPWLANENTRYITEMDATA_CPWLANENTRYITEMDATA_ENTRY);
    91     OstTraceFunctionEntry0(DUP1_CPWLANENTRYITEMDATA_CPWLANENTRYITEMDATA_ENTRY);
       
    92     delete mRequest;
    91     OstTraceFunctionExit0(DUP1_CPWLANENTRYITEMDATA_CPWLANENTRYITEMDATA_EXIT);
    93     OstTraceFunctionExit0(DUP1_CPWLANENTRYITEMDATA_CPWLANENTRYITEMDATA_EXIT);
    92 }
    94 }
    93 
    95 
       
    96 void CpWlanEntryItemData::handleOk(const QVariant &result)
       
    97 {
       
    98     OstTraceFunctionEntry0(CPWLANENTRYITEMDATA_HANDLEOK_ENTRY);
       
    99     Q_UNUSED(result);
       
   100     mProcessing = false;
       
   101 
       
   102     delete mRequest;
       
   103     mRequest = NULL;
       
   104 
       
   105 #ifdef WLANENTRYPLUGIN_SERVICETRACES    
       
   106     XQSERVICE_DEBUG_PRINT("CpWlanEntryItemData::handleOk() service request completed OK");
       
   107 #endif    
       
   108     OstTraceFunctionExit0(CPWLANENTRYITEMDATA_HANDLEOK_EXIT);
       
   109 }
       
   110 
       
   111 
       
   112 void CpWlanEntryItemData::handleError(int errorCode, const QString& errorMessage)
       
   113 {
       
   114    OstTraceFunctionEntry0(CPWLANENTRYITEMDATA_HANDLEERROR_ENTRY);
       
   115    TPtrC tmp(errorMessage.utf16(),errorMessage.length());
       
   116    OstTraceExt2(TRACE_FLOW, CPWLANENTRYITEMDATA_HANDLEERROR, "CpWlanEntryItemData::handleError;errorCode=%d;errorMessage=%S", errorCode, tmp);
       
   117    
       
   118    mProcessing = false;
       
   119    
       
   120    delete mRequest;
       
   121    mRequest = NULL;
       
   122 
       
   123    #ifdef WLANENTRYPLUGIN_SERVICETRACES    
       
   124     XQSERVICE_DEBUG_PRINT("CpWlanEntryItemData::handleOk() service request completed with error");
       
   125 #endif    
       
   126    OstTraceFunctionExit0(CPWLANENTRYITEMDATA_HANDLEERROR_EXIT);
       
   127 }
       
   128 
       
   129 
    94 /*!
   130 /*!
    95     Function for handling the entry item click.
   131     Function for handling the entry item click.
    96 */
   132 */
    97 
   133 
    98 CpBaseSettingView *CpWlanEntryItemData::createSettingView() const
   134 CpBaseSettingView *CpWlanEntryItemData::createSettingView() const
    99 {
   135 {
   100     OstTraceFunctionEntry0(CPWLANENTRYITEMDATA_CREATESETTINGVIEW_ENTRY);
   136     OstTraceFunctionEntry0(CPWLANENTRYITEMDATA_CREATESETTINGVIEW_ENTRY);
       
   137     
       
   138     if (mProcessing) {
       
   139         OstTrace0(TRACE_NORMAL, CPWLANENTRYITEMDATA_CREATESETTINGVIEW, "CpWlanEntryItemData::createSettingView:already processing, return");
       
   140         return 0;
       
   141     }
       
   142     mProcessing = true;
   101     
   143     
   102 #ifdef WLANENTRYPLUGIN_SERVICETRACES    
   144 #ifdef WLANENTRYPLUGIN_SERVICETRACES    
   103     qInstallMsgHandler(XQSERVICEMESSAGEHANDLER);
   145     qInstallMsgHandler(XQSERVICEMESSAGEHANDLER);
   104     XQSERVICE_DEBUG_PRINT("CpWlanEntryItemData::createSettingView requesting listView()");
   146     XQSERVICE_DEBUG_PRINT("CpWlanEntryItemData::createSettingView requesting listView()");
   105 #endif
   147 #endif
   106 
   148 
   107     // Execute synchronous WLAN Sniffer list view
   149     // Execute asynchronous WLAN Sniffer list view
   108     XQApplicationManager aiwMgr;
   150     mRequest = mAiwMgr.create(
   109     XQAiwRequest *request = aiwMgr.create(
       
   110         "wlansniffer",
   151         "wlansniffer",
   111         XQI_WLAN_SNIFFER,
   152         XQI_WLAN_SNIFFER,
   112         XQOP_WLAN_SNIFFER,
   153         XQOP_WLAN_SNIFFER,
   113         true);
   154         true);
   114 
   155 
   115     // The WLAN Sniffer service must always exist
   156     // The WLAN Sniffer service must always exist
   116     Q_ASSERT(request);
   157     Q_ASSERT(mRequest);
   117 
   158 
   118     // The service is synchronous & embedded
   159     // The service is asynchronous & embedded
   119     request->setSynchronous(true);
   160     mRequest->setSynchronous(false);
   120     
   161     
   121     // Window title needs to be set to "Control Panel"
   162     // Window title needs to be set to "Control Panel"
   122     XQRequestInfo reqInfo;
   163     XQRequestInfo reqInfo;
   123     reqInfo.setInfo(XQINFO_KEY_WINDOW_TITLE, hbTrId("txt_cp_title_control_panel"));
   164     reqInfo.setInfo(XQINFO_KEY_WINDOW_TITLE, hbTrId("txt_cp_title_control_panel"));
   124     request->setInfo(reqInfo);
   165     mRequest->setInfo(reqInfo);
   125     
   166 
   126     bool status = request->send();
   167     connect(mRequest, SIGNAL(requestOk(QVariant)), SLOT( handleOk(QVariant)), Qt::QueuedConnection);
   127 #ifdef WLANENTRYPLUGIN_SERVICETRACES    
   168     connect(mRequest, SIGNAL(requestError(int, QString)), SLOT(handleError(int, QString)));
   128     XQSERVICE_DEBUG_PRINT("CpWlanEntryItemData::createSettingView listView() service request completed");
   169     
       
   170     bool status = mRequest->send();
       
   171 #ifdef WLANENTRYPLUGIN_SERVICETRACES    
       
   172     XQSERVICE_DEBUG_PRINT("CpWlanEntryItemData::createSettingView listView() service request sent");
   129 #endif    
   173 #endif    
   130     Q_ASSERT(status);
   174     Q_ASSERT(status);
   131     delete request;
       
   132 
   175 
   133     OstTraceFunctionExit0(CPWLANENTRYITEMDATA_CREATESETTINGVIEW_EXIT);
   176     OstTraceFunctionExit0(CPWLANENTRYITEMDATA_CREATESETTINGVIEW_EXIT);
   134     return 0;
   177     return 0;
   135 }
   178 }
   136 
   179