summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/gsmtool/gsmtool.cpp18
-rw-r--r--noncore/unsupported/gsmtool/gsmtool.h1
2 files changed, 7 insertions, 12 deletions
diff --git a/noncore/unsupported/gsmtool/gsmtool.cpp b/noncore/unsupported/gsmtool/gsmtool.cpp
index 14ef368..38c8c59 100644
--- a/noncore/unsupported/gsmtool/gsmtool.cpp
+++ b/noncore/unsupported/gsmtool/gsmtool.cpp
@@ -1,49 +1,48 @@
1#include "gsmtool.h" 1#include "gsmtool.h"
2#include <qpushbutton.h> 2#include <qpushbutton.h>
3#include <qcombobox.h> 3#include <qcombobox.h>
4#include <qlineedit.h> 4#include <qlineedit.h>
5#include <qlabel.h> 5#include <qlabel.h>
6#include <qtabwidget.h> 6#include <qtabwidget.h>
7 7
8#include <termios.h> 8#include <termios.h>
9 9
10#include <gsmlib/gsm_me_ta.h> 10#include <gsmlib/gsm_me_ta.h>
11#include <gsmlib/gsm_unix_serial.h> 11#include <gsmlib/gsm_unix_serial.h>
12 12
13using namespace gsmlib; 13using namespace gsmlib;
14 14
15 15
16/* 16/*
17 * Constructs a GSMTool which is a child of 'parent', with the 17 * Constructs a GSMTool which is a child of 'parent', with the
18 * name 'name' and widget flags set to 'f' 18 * name 'name' and widget flags set to 'f'
19 */ 19 */
20GSMTool::GSMTool( QWidget* parent, const char* name, WFlags fl ) 20GSMTool::GSMTool( QWidget* parent, const char* name, WFlags fl )
21 : GSMToolBase( parent, name, fl ) 21 : GSMToolBase( parent, name, fl )
22{ 22{
23 devicelocked = 0; 23 devicelocked = 0;
24 me = NULL; 24 me = NULL;
25 port = NULL;
26 setConnected(FALSE); 25 setConnected(FALSE);
27 /* FIXME: Persistent settings for device/baudrate */ 26 /* FIXME: Persistent settings for device/baudrate */
28 connect(ConnectButton, SIGNAL(clicked()), this, SLOT(doConnectButton())); 27 connect(ConnectButton, SIGNAL(clicked()), this, SLOT(doConnectButton()));
29 connect(ScanButton, SIGNAL(clicked()), this, SLOT(doScanButton())); 28 connect(ScanButton, SIGNAL(clicked()), this, SLOT(doScanButton()));
30 connect(TabWidget2, SIGNAL(currentChanged(QWidget *)), this, SLOT(doTabChanged())); 29 connect(TabWidget2, SIGNAL(currentChanged(QWidget *)), this, SLOT(doTabChanged()));
31 timerid = -1; // Is this not possible normally? 30 timerid = -1; // Is this not possible normally?
32} 31}
33 32
34/* 33/*
35 * Destroys the object and frees any allocated resources 34 * Destroys the object and frees any allocated resources
36 */ 35 */
37GSMTool::~GSMTool() 36GSMTool::~GSMTool()
38{ 37{
39 // no need to delete child widgets, Qt does it all for us 38 // no need to delete child widgets, Qt does it all for us
40 if (devicelocked) 39 if (devicelocked)
41 unlockDevice(); 40 unlockDevice();
42} 41}
43const speed_t GSMTool::baudrates[12] = { 42const speed_t GSMTool::baudrates[12] = {
44 B300, B600, B1200, B2400, B4800, B9600, B19200, 43 B300, B600, B1200, B2400, B4800, B9600, B19200,
45 B38400, B57600, B115200, B230400, B460800 44 B38400, B57600, B115200, B230400, B460800
46}; 45};
47 46
48int GSMTool::lockDevice( ) 47int GSMTool::lockDevice( )
49{ 48{
@@ -117,92 +116,89 @@ void GSMTool::timerEvent( QTimerEvent * )
117 SigStrLabel->setEnabled(TRUE); 116 SigStrLabel->setEnabled(TRUE);
118 } else if (csq == 99) { 117 } else if (csq == 99) {
119 SigStrText->setText("Unknown"); 118 SigStrText->setText("Unknown");
120 dB->setEnabled(FALSE); 119 dB->setEnabled(FALSE);
121 SigStrLabel->setEnabled(FALSE); 120 SigStrLabel->setEnabled(FALSE);
122 } else { 121 } else {
123 char buf[6]; 122 char buf[6];
124 sprintf(buf, "%d", -113 + (2*csq)); 123 sprintf(buf, "%d", -113 + (2*csq));
125 SigStrText->setText(buf); 124 SigStrText->setText(buf);
126 dB->setEnabled(TRUE); 125 dB->setEnabled(TRUE);
127 SigStrLabel->setEnabled(TRUE); 126 SigStrLabel->setEnabled(TRUE);
128 } 127 }
129 } 128 }
130} 129}
131 130
132void GSMTool::doScanButton() 131void GSMTool::doScanButton()
133{ 132{
134 qDebug("ScanButton"); 133 qDebug("ScanButton");
135} 134}
136/* 135/*
137 * A simple slot... not very interesting. 136 * A simple slot... not very interesting.
138 */ 137 */
139void GSMTool::doConnectButton() 138void GSMTool::doConnectButton()
140{ 139{
140 gsmlib::Port *port;
141
141 speed_t rate; 142 speed_t rate;
142 devicename = strdup(DeviceName->currentText().local8Bit().data()); 143 devicename = strdup(DeviceName->currentText().local8Bit().data());
143 rate = baudrates[BaudRate->currentItem()]; 144 rate = baudrates[BaudRate->currentItem()];
144 145
145 qDebug("Connect Button Pressed"); 146 qDebug("Connect Button Pressed");
146 MfrText->setText("Opening..."); 147 MfrText->setText("Opening...");
147 ModelText->setText(""); 148 ModelText->setText("");
148 RevisionText->setText(""); 149 RevisionText->setText("");
149 SerialText->setText(""); 150 SerialText->setText("");
150 151
151 setConnected(FALSE); 152 setConnected(FALSE);
152 if (me) { 153 if (me) {
153 // delete me;
154 me = NULL; 154 me = NULL;
155 } 155 }
156 if (port) {
157 // delete port;
158 port = NULL;
159 }
160 156
161 if (lockDevice()) { 157 if (lockDevice()) {
162 qDebug("lockDevice() failed\n"); 158 qDebug("lockDevice() failed\n");
159 MfrText->setText("Lock port failed");
163 }; 160 };
164 161
165 qDebug("Device name is %s\n", devicename); 162 qDebug("Device name is %s\n", devicename);
166 163
167 try { 164 try {
168 port = new UnixSerialPort(devicename, rate, DEFAULT_INIT_STRING, 0); 165 port = new UnixSerialPort(devicename, rate, DEFAULT_INIT_STRING, 0);
169 } catch (GsmException) { 166 } catch (GsmException) {
170 qDebug("port failed"); 167 qDebug("port failed");
168 MfrText->setText("Open port failed");
171 return; 169 return;
172 } 170 }
173 MfrText->setText("Initialising..."); 171 MfrText->setText("Initialising...");
174 qDebug("got port"); 172 qDebug("got port");
175 try { 173 try {
176 me = new MeTa(port); 174 me = new MeTa(port);
177 } catch (GsmException) { 175 } catch (GsmException) {
178 qDebug("meta failed"); 176 qDebug("meta failed");
179 delete port; 177 MfrText->setText("Initialise GSM unit failed");
180 port = NULL; 178 me = NULL;
181 unlockDevice(); 179 unlockDevice();
182 return; 180 return;
183 } 181 }
184 182
185 qDebug("Opened"); 183 qDebug("Opened");
186 184
187 MEInfo ifo; 185 MEInfo ifo;
188 186
189 MfrText->setText("Querying..."); 187 MfrText->setText("Querying...");
190 188
191 try { 189 try {
192 ifo = me->getMEInfo(); 190 ifo = me->getMEInfo();
193 } catch (GsmException) { 191 } catch (GsmException) {
194 qDebug("getMEInfo failed"); 192 qDebug("getMEInfo failed");
195 delete me; 193 MfrText->setText("Query GSM unit failed");
196 me = NULL; 194 me = NULL;
197 delete port;
198 port = NULL;
199 unlockDevice(); 195 unlockDevice();
200 return; 196 return;
201 } 197 }
202 198
203 MfrText->setText(ifo._manufacturer.c_str()); 199 MfrText->setText(ifo._manufacturer.c_str());
204 ModelText->setText(ifo._model.c_str()); 200 ModelText->setText(ifo._model.c_str());
205 RevisionText->setText(ifo._revision.c_str()); 201 RevisionText->setText(ifo._revision.c_str());
206 SerialText->setText(ifo._serialNumber.c_str()); 202 SerialText->setText(ifo._serialNumber.c_str());
207 setConnected(TRUE); 203 setConnected(TRUE);
208} 204}
diff --git a/noncore/unsupported/gsmtool/gsmtool.h b/noncore/unsupported/gsmtool/gsmtool.h
index cb19f54..1625cb1 100644
--- a/noncore/unsupported/gsmtool/gsmtool.h
+++ b/noncore/unsupported/gsmtool/gsmtool.h
@@ -6,36 +6,35 @@
6 6
7#include <gsmlib/gsm_me_ta.h> 7#include <gsmlib/gsm_me_ta.h>
8 8
9class GSMTool : public GSMToolBase 9class GSMTool : public GSMToolBase
10{ 10{
11 Q_OBJECT 11 Q_OBJECT
12 12
13public: 13public:
14 GSMTool( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); 14 GSMTool( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
15 ~GSMTool(); 15 ~GSMTool();
16 16
17protected: 17protected:
18 void timerEvent(QTimerEvent *te ); 18 void timerEvent(QTimerEvent *te );
19 19
20private slots: 20private slots:
21 void doConnectButton(); 21 void doConnectButton();
22 void doScanButton(); 22 void doScanButton();
23 void doTabChanged(); 23 void doTabChanged();
24private: 24private:
25 static const speed_t baudrates[]; 25 static const speed_t baudrates[];
26 int devicelocked; 26 int devicelocked;
27 int timerid; 27 int timerid;
28 28
29 gsmlib::MeTa *me; 29 gsmlib::MeTa *me;
30 gsmlib::Port *port;
31 30
32 char *devicename; 31 char *devicename;
33 speed_t baudrate; 32 speed_t baudrate;
34 33
35 int lockDevice( ); 34 int lockDevice( );
36 void unlockDevice( ); 35 void unlockDevice( );
37 36
38 void setConnected( bool conn ); 37 void setConnected( bool conn );
39}; 38};
40 39
41#endif // EXAMPLE_H 40#endif // EXAMPLE_H