summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-console/io_serial.cpp
authorharlekin <harlekin>2002-10-15 22:03:01 (UTC)
committer harlekin <harlekin>2002-10-15 22:03:01 (UTC)
commitce953c24f809385088905ffd02f6d6187d0a4f12 (patch) (unidiff)
tree19f10579ebd5870cf38940d624c97111ea8137b3 /noncore/apps/opie-console/io_serial.cpp
parent676be5604cbdb3213c00775e0ff66f4e766f8dcb (diff)
downloadopie-ce953c24f809385088905ffd02f6d6187d0a4f12.zip
opie-ce953c24f809385088905ffd02f6d6187d0a4f12.tar.gz
opie-ce953c24f809385088905ffd02f6d6187d0a4f12.tar.bz2
next isConnected try
Diffstat (limited to 'noncore/apps/opie-console/io_serial.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/io_serial.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/noncore/apps/opie-console/io_serial.cpp b/noncore/apps/opie-console/io_serial.cpp
index c10d5a8..b89a53b 100644
--- a/noncore/apps/opie-console/io_serial.cpp
+++ b/noncore/apps/opie-console/io_serial.cpp
@@ -5,12 +5,13 @@
5#include "io_serial.h" 5#include "io_serial.h"
6 6
7IOSerial::IOSerial(const Profile &config) : IOLayer(config) { 7IOSerial::IOSerial(const Profile &config) : IOLayer(config) {
8 m_read = 0l; 8 m_read = 0l;
9 m_error = 0l; 9 m_error = 0l;
10 m_fd = 0; 10 m_fd = 0;
11 m_connected = false;
11 reload(config); 12 reload(config);
12} 13}
13 14
14 15
15IOSerial::~IOSerial() { 16IOSerial::~IOSerial() {
16 if (m_fd) { 17 if (m_fd) {
@@ -29,13 +30,15 @@ void IOSerial::send(const QByteArray &data) {
29void IOSerial::close() { 30void IOSerial::close() {
30 if (m_fd) { 31 if (m_fd) {
31 delete m_read; 32 delete m_read;
32 delete m_error; 33 delete m_error;
33 ::close(m_fd); 34 ::close(m_fd);
34 m_fd = 0; 35 m_fd = 0;
36 m_connected = false;
35 } else { 37 } else {
38 m_connected = false;
36 emit error(Refuse, tr("Not connected")); 39 emit error(Refuse, tr("Not connected"));
37 } 40 }
38} 41}
39 42
40bool IOSerial::open() { 43bool IOSerial::open() {
41 if (!m_fd) { 44 if (!m_fd) {
@@ -108,12 +111,13 @@ bool IOSerial::open() {
108 111
109 /* Notifications on read & errors */ 112 /* Notifications on read & errors */
110 m_read = new QSocketNotifier(m_fd, QSocketNotifier::Read, this); 113 m_read = new QSocketNotifier(m_fd, QSocketNotifier::Read, this);
111 m_error = new QSocketNotifier(m_fd, QSocketNotifier::Exception, this); 114 m_error = new QSocketNotifier(m_fd, QSocketNotifier::Exception, this);
112 connect(m_read, SIGNAL(activated(int)), this, SLOT(dataArrived())); 115 connect(m_read, SIGNAL(activated(int)), this, SLOT(dataArrived()));
113 connect(m_error, SIGNAL(activated(int)), this, SLOT(errorOccured())); 116 connect(m_error, SIGNAL(activated(int)), this, SLOT(errorOccured()));
117 m_connected = false;
114 return TRUE; 118 return TRUE;
115 } else { 119 } else {
116 emit error(Refuse, tr("Device is already connected")); 120 emit error(Refuse, tr("Device is already connected"));
117 m_fd = 0; 121 m_fd = 0;
118 return FALSE; 122 return FALSE;
119 } 123 }
@@ -191,6 +195,10 @@ QBitArray IOSerial::supports()const {
191 QBitArray ar(3); 195 QBitArray ar(3);
192 ar[0] = ar[2] = 0; 196 ar[0] = ar[2] = 0;
193 ar[1] = 1; 197 ar[1] = 1;
194 198
195 return ar; 199 return ar;
196} 200}
201
202bool IOSerial::isConnected() {
203 return m_connected;
204}