summaryrefslogtreecommitdiff
path: root/noncore
Side-by-side diff
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/gsmtool/gsmtool.cpp51
-rw-r--r--noncore/unsupported/gsmtool/gsmtool.h1
-rw-r--r--noncore/unsupported/gsmtool/gsmtoolbase.ui44
3 files changed, 79 insertions, 17 deletions
diff --git a/noncore/unsupported/gsmtool/gsmtool.cpp b/noncore/unsupported/gsmtool/gsmtool.cpp
index c3f9482..8273461 100644
--- a/noncore/unsupported/gsmtool/gsmtool.cpp
+++ b/noncore/unsupported/gsmtool/gsmtool.cpp
@@ -8,2 +8,4 @@
#include <qtextbrowser.h>
+#include <qmultilineedit.h>
+
#include <termios.h>
@@ -35,3 +37,3 @@ GSMTool::GSMTool( QWidget* parent, const char* name, WFlags fl )
connect(SMSViewType, SIGNAL(activated(int)), this, SLOT(doSMSTypeChanged()));
-
+ connect(SMSList, SIGNAL(selectionChanged(QListViewItem *)), this, SLOT(doSelectedSMSChanged(QListViewItem *)));
timerid = -1; // Is this not possible normally?
@@ -141,3 +143,5 @@ void GSMTool::doSMSStoreChanged()
qDebug("Store Changed to '%s'", storename);
- try {
+ if (!strcmp(storename, "None")) {
+ sms_store = NULL;
+ } else try {
sms_store = me->getSMSStore(storename);
@@ -149,2 +153,4 @@ void GSMTool::doSMSStoreChanged()
}
+
+ SMSList->setEnabled(!(sms_store == NULL));
doSMSTypeChanged();
@@ -158,2 +164,4 @@ void GSMTool::doSMSTypeChanged()
SMSList->clear();
+ doSelectedSMSChanged(NULL);
+
if (sms_store == NULL)
@@ -170,9 +178,9 @@ void GSMTool::doSMSTypeChanged()
-#if 0 // WTF does this die? Did I mention that gsmlib needs rewriting in a sane language?
- qDebug(message->toString().c_str());
+ // qDebug(message->toString().c_str());
if (direction == message->messageType()) {
qDebug("yes\n");
- new QListViewItem(SMSList, "xx", message->address()._number.c_str());
- } else qDebug("no. dir %d, type %d\n", direction, message->messageType());
-#endif
+ char buf[3];
+ snprintf(buf, 3, "%d", i);
+ new QListViewItem(SMSList, message->address()._number.c_str(), message->serviceCentreTimestamp().toString().c_str(), buf);
+ }
}
@@ -180,2 +188,31 @@ void GSMTool::doSMSTypeChanged()
+void GSMTool::doSelectedSMSChanged(QListViewItem *item)
+{
+ qDebug("message changed\n");
+
+ if (!item || sms_store == NULL) {
+ SMSText->setText("");
+ SMSText->setEnabled(FALSE);
+ SMSDeleteButton->setEnabled(FALSE);
+ SMSSendButton->setEnabled(FALSE);
+ return;
+ }
+ /* ARGH. This sucks. Surely there's an app-private pointer in the
+ QListViewItem that I've failed to notice?
+
+ SMSMessageRef message = *(SMSMessageRef*)item->private;
+ */
+ qDebug("item %p\n", item);
+
+ qDebug("text(2) is %s\n", item->text(2).ascii());
+ int index = atoi(item->text(2).ascii());
+ qDebug("index %d\n", index);
+ SMSMessageRef message = sms_store()[index].message();
+
+ SMSText->setText(message->userData().c_str());
+ SMSText->setEnabled(TRUE);
+ SMSDeleteButton->setEnabled(TRUE);
+ SMSSendButton->setEnabled(TRUE);
+
+}
void GSMTool::doScanButton()
diff --git a/noncore/unsupported/gsmtool/gsmtool.h b/noncore/unsupported/gsmtool/gsmtool.h
index 49387d9..b8d9a86 100644
--- a/noncore/unsupported/gsmtool/gsmtool.h
+++ b/noncore/unsupported/gsmtool/gsmtool.h
@@ -25,2 +25,3 @@ private slots:
void doSMSTypeChanged();
+ void doSelectedSMSChanged(QListViewItem *);
diff --git a/noncore/unsupported/gsmtool/gsmtoolbase.ui b/noncore/unsupported/gsmtool/gsmtoolbase.ui
index 340f26c..69480cd 100644
--- a/noncore/unsupported/gsmtool/gsmtoolbase.ui
+++ b/noncore/unsupported/gsmtool/gsmtoolbase.ui
@@ -13,3 +13,3 @@
<y>0</y>
- <width>309</width>
+ <width>371</width>
<height>390</height>
@@ -668,2 +668,6 @@
</property>
+ <property stdset="1">
+ <name>allColumnsShowFocus</name>
+ <bool>true</bool>
+ </property>
</widget>
@@ -741,3 +745,3 @@
</attribute>
- <vbox>
+ <grid>
<property stdset="1">
@@ -750,3 +754,3 @@
</property>
- <widget>
+ <widget row="0" column="0" >
<class>QLayoutWidget</class>
@@ -825,3 +829,3 @@
</widget>
- <widget>
+ <widget row="1" column="0" >
<class>QListView</class>
@@ -830,3 +834,3 @@
<name>text</name>
- <string>Date</string>
+ <string>Number</string>
</property>
@@ -844,3 +848,3 @@
<name>text</name>
- <string>Number</string>
+ <string>Date</string>
</property>
@@ -859,4 +863,12 @@
</property>
+ <property stdset="1">
+ <name>enabled</name>
+ <bool>false</bool>
+ </property>
+ <property stdset="1">
+ <name>allColumnsShowFocus</name>
+ <bool>true</bool>
+ </property>
</widget>
- <widget>
+ <widget row="2" column="0" >
<class>QLayoutWidget</class>
@@ -913,4 +925,4 @@
</widget>
- <widget>
- <class>QTextBrowser</class>
+ <widget row="3" column="0" >
+ <class>QMultiLineEdit</class>
<property stdset="1">
@@ -919,4 +931,16 @@
</property>
+ <property stdset="1">
+ <name>enabled</name>
+ <bool>false</bool>
+ </property>
+ <property stdset="1">
+ <name>wordWrap</name>
+ <enum>WidgetWidth</enum>
+ </property>
+ <property stdset="1">
+ <name>readOnly</name>
+ <bool>true</bool>
+ </property>
</widget>
- </vbox>
+ </grid>
</widget>