diff options
author | Philippe Nunes <philippe.nunes@linux.intel.com> | 2012-06-27 17:10:41 +0200 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2012-06-24 16:37:29 -0500 |
commit | 44ec284e0ee4b0e5c0767ba75cb7ee66cc08bad6 (patch) | |
tree | 20464c3643328c54788c8dfac9e310ab52733b48 | |
parent | efd9d5524909c659b5f3365ae486de8b71966c2f (diff) | |
download | phonesim-44ec284e0ee4b0e5c0767ba75cb7ee66cc08bad6.tar.gz |
cbs: Tweak bestScheme implementation
in QCBSMessage class
-rw-r--r-- | src/qcbsmessage.cpp | 10 | ||||
-rw-r--r-- | src/qcbsmessage.h | 1 |
2 files changed, 9 insertions, 2 deletions
diff --git a/src/qcbsmessage.cpp b/src/qcbsmessage.cpp index 0556cc0..e4403ae 100644 --- a/src/qcbsmessage.cpp +++ b/src/qcbsmessage.cpp @@ -396,9 +396,15 @@ void QCBSMessage::print() << ", text=" << text(); } -static QSMSDataCodingScheme bestScheme( const QString& body ) +/*! + Returns the best CBS data coding scheme to use for this + message, determined by an inspection of the plain text body. + +*/ +int QCBSMessage::bestScheme() const { QTextCodec *codec = QAtUtils::codec( "gsm-noloss" ); + QString body = text(); uint len = body.length(); bool gsmSafe; @@ -427,7 +433,7 @@ QByteArray QCBSMessage::toPdu() const QSMSDataCodingScheme scheme; if(dataCodingScheme() == -1) - scheme = bestScheme( text() ); + scheme = (QSMSDataCodingScheme)bestScheme(); else scheme = (QSMSDataCodingScheme)dataCodingScheme(); diff --git a/src/qcbsmessage.h b/src/qcbsmessage.h index f6ed364..0f055b7 100644 --- a/src/qcbsmessage.h +++ b/src/qcbsmessage.h @@ -96,6 +96,7 @@ public: QByteArray toPdu() const; static QCBSMessage fromPdu( const QByteArray& pdu ); + int bestScheme() const; bool shouldSplit() const; QList<QCBSMessage> split() const; void computeSize( uint& numPages, uint& spaceLeftInLast ) const; |