[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