diff options
author | Nicolas Bertrand <nicolas.bertrand@linux.intel.com> | 2011-03-29 17:16:36 +0200 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2011-03-29 22:39:27 -0500 |
commit | 1e00acf7962282fbe6eebf77f01403334976d47b (patch) | |
tree | 16d700fe3ac1de911505e24682446dcb845d2c1a | |
parent | ce276b2e0ff53461839bcf809171d20a6eaec262 (diff) | |
download | phonesim-1e00acf7962282fbe6eebf77f01403334976d47b.tar.gz |
phonesim: Add CSSU/CSSI notification support
-rw-r--r-- | src/control.cpp | 30 | ||||
-rw-r--r-- | src/control.h | 2 |
2 files changed, 31 insertions, 1 deletions
diff --git a/src/control.cpp b/src/control.cpp index 279bade..645219c 100644 --- a/src/control.cpp +++ b/src/control.cpp @@ -87,6 +87,7 @@ ControlWidget::ControlWidget(const QString &ruleFile, Control *parent) connect(ui->pbReset, SIGNAL(clicked()), this, SLOT(modemSilentReset())); connect(ui->pbSendGNSSData, SIGNAL(clicked()), this, SLOT(sendGNSSData())); connect(ui->pbGNSSDefault, SIGNAL(clicked()), this, SLOT(setDefaultGNSSData())); + connect(ui->pbSendNotif, SIGNAL(clicked()), this, SLOT(sendCSSN())); QStringList headers; headers << "Sender" << "Priority" << "Notification Status"; @@ -94,6 +95,7 @@ ControlWidget::ControlWidget(const QString &ruleFile, Control *parent) ui->twMessageList->verticalHeader()->hide(); handleNewApp(); + handleCSSNNotif(); show(); } @@ -142,13 +144,39 @@ void Control::warning( const QString &title, const QString &message ) QMessageBox::warning(widget, title, message, "OK"); } +void ControlWidget::handleCSSNNotif() +{ + ui->cbCSSU->insertItem(0, ""); + ui->cbCSSU->insertItem(1, "0 - forwarded", 0); + ui->cbCSSU->insertItem(3, "2 - on hold", 2); + ui->cbCSSU->insertItem(4, "3 - retrieved", 3); + ui->cbCSSU->insertItem(5, "4 - multiparty", 4); + + ui->cbCSSI->insertItem(0, ""); + ui->cbCSSI->insertItem(3, "2 - forwarded", 2); + ui->cbCSSI->insertItem(6, "5 - outgoing barred", 5); + ui->cbCSSI->insertItem(7, "6 - incomming barred", 6); +} + +void ControlWidget::sendCSSN() +{ + QVariant v = ui->cbCSSU->itemData(ui->cbCSSU->currentIndex()); + + if (v.canConvert<int>()) + emit unsolicitedCommand("+CSSU: "+QString::number(v.toInt())); + + v = ui->cbCSSI->itemData(ui->cbCSSI->currentIndex()); + + if (v.canConvert<int>()) + emit unsolicitedCommand("+CSSI: "+QString::number(v.toInt())); +} + void ControlWidget::sendSQ() { emit variableChanged("SQ",QString::number(ui->hsSignalQuality->value())+",99"); emit unsolicitedCommand("+CSQ: "+QString::number(ui->hsSignalQuality->value())+",99"); } - void ControlWidget::sendBC() { bool charging = ui->hsBatteryCharging->checkState() == Qt::Checked; diff --git a/src/control.h b/src/control.h index eac4288..c17146a 100644 --- a/src/control.h +++ b/src/control.h @@ -70,6 +70,7 @@ public: void handleFromData( const QString& ); void handleToData( const QString& ); void handleNewApp(); + void handleCSSNNotif(); private slots: void sendSQ(); @@ -97,6 +98,7 @@ private slots: void modemSilentReset(); void sendGNSSData(); void setDefaultGNSSData(); + void sendCSSN(); signals: void unsolicitedCommand(const QString &); |