[kmobiletools] KDE/kdepim/kmobiletools/kmobiletools/engines/at_engine

Marco Gulino marco at kmobiletools.org
Sun Jun 3 19:33:09 CEST 2007


SVN commit 671069 by gulino:

Showing the proper device name in the found devices list.


 M  +46 -0     testphonedevice.cpp  
 M  +1 -1      testphonedevice.h  
 M  +4 -1      wizard/at_devicesfoundpage.cpp  


--- trunk/KDE/kdepim/kmobiletools/kmobiletools/engines/at_engine/testphonedevice.cpp #671068:671069
@@ -62,6 +62,52 @@
 
 void FindDeviceDataJob::run() {
     TestPhoneDeviceJob::run();
+    if(!found()) {
+        p_device->close();
+        return;
+    }
+    QString buffer, temp;
+    const int probeTimeout=600;
+
+    buffer=p_device->sendATCommand(this, "AT+CGMR\r", probeTimeout);
+    if(!KMobileTools::SerialManager::ATError(buffer)) // Phone revision
+        enginedata->setRevision( kmobiletoolsATJob::parseInfo( buffer ) );
+
+    buffer=p_device->sendATCommand(this, "AT+CGMI\r", probeTimeout);
+    if( !KMobileTools::SerialManager::ATError(buffer) ) // Phone manufacturer
+        enginedata->setManufacturerString( kmobiletoolsATJob::parseInfo( buffer ) );
+
+    buffer=p_device->sendATCommand(this, "AT+CPMS=?\r", probeTimeout);
+    if( !KMobileTools::SerialManager::ATError(buffer) ) // SMS Slots
+        temp = kmobiletoolsATJob::parseInfo( buffer );
+    else temp.clear();
+//     enginedata->setSMSSlots( kmobiletoolsATJob::parseList( temp.replace("AT+CPMS=?", "") ) ); @TODO port
+
+    buffer=p_device->sendATCommand(this, "AT+CPBS=?\r", probeTimeout);
+    if( !KMobileTools::SerialManager::ATError(buffer) ) // PhoneBook Slots
+        temp = kmobiletoolsATJob::parseInfo( buffer );
+    else temp.clear();
+//     enginedata->setPbSlots( kmobiletoolsATJob::parseList( temp.replace("AT+CPBS=?", "") ) ); @TODO port
+
+    buffer=p_device->sendATCommand(this, "AT+CGMM\r", probeTimeout);
+    if(!KMobileTools::SerialManager::ATError(buffer)) // Phone model
+        enginedata->setModel( kmobiletoolsATJob::parseInfo( buffer ) );
+
+    buffer=p_device->sendATCommand(this, "AT+CSCS=?\r", probeTimeout);
+    if( !KMobileTools::SerialManager::ATError(buffer) ) // Charset
+        temp = kmobiletoolsATJob::parseInfo( buffer );
+    else temp.clear();
+//     enginedata->setCharsets( kmobiletoolsATJob::parseList( temp ) ); @TODO port
+
+    buffer=p_device->sendATCommand(this, "AT+CSCA?\r", probeTimeout); // SMS Center
+    if(!KMobileTools::SerialManager::ATError(buffer))
+    {
+        temp=kmobiletoolsATJob::parseInfo( buffer);
+        QRegExp tempRegexp;
+        tempRegexp.setPattern( ".*\"(.*)\".*");
+        if(tempRegexp.indexIn(temp)>=0) temp=tempRegexp.cap( 1 ); else temp.clear();
+        enginedata->setSMSCenter( temp );
+    }
     p_device->close();
 }
 
--- trunk/KDE/kdepim/kmobiletools/kmobiletools/engines/at_engine/testphonedevice.h #671068:671069
@@ -43,8 +43,8 @@
 protected:
     virtual void run ();
     QString deviceName;
+    bool b_found;
     KMobileTools::EngineData* enginedata;
-    bool b_found;
     bool b_closeafterimei; /// if false, we could subclass run() to extend the job taking other parameters than the imei.
 };
 
--- trunk/KDE/kdepim/kmobiletools/kmobiletools/engines/at_engine/wizard/at_devicesfoundpage.cpp #671068:671069
@@ -59,8 +59,11 @@
     kDebug() << "DevicesFound count: " << scanpage->foundDevices().count() << endl;
     QListIterator<KMobileTools::EngineData*> it(scanpage->foundDevices());
     KMobileTools::EngineData* curitem;
+    QListWidgetItem *newlwitem;
     while(it.hasNext()) {
         curitem=it.next();
-        new QListWidgetItem( curitem->property("devicePath").toString(), phonesListWidget() );
+        newlwitem=new QListWidgetItem( curitem->manufacturerString() + " " + curitem->model() , phonesListWidget() );
+        newlwitem->setData(Qt::UserRole+1, curitem->property("devicePath").toString() );
+        newlwitem->setData(Qt::UserRole+2, curitem->imei() );
     }
 }


More information about the kmobiletools mailing list