aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilippe Nunes <philippe.nunes@linux.intel.com>2012-06-27 17:10:41 +0200
committerDenis Kenzior <denkenz@gmail.com>2012-06-24 16:37:29 -0500
commit44ec284e0ee4b0e5c0767ba75cb7ee66cc08bad6 (patch)
tree20464c3643328c54788c8dfac9e310ab52733b48
parentefd9d5524909c659b5f3365ae486de8b71966c2f (diff)
downloadphonesim-44ec284e0ee4b0e5c0767ba75cb7ee66cc08bad6.tar.gz
cbs: Tweak bestScheme implementation
in QCBSMessage class
-rw-r--r--src/qcbsmessage.cpp10
-rw-r--r--src/qcbsmessage.h1
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;