From f9f2d227b3cfbc2187b4f7f535fc59f9735798d0 Mon Sep 17 00:00:00 2001 From: zecke Date: Wed, 09 Oct 2002 14:25:38 +0000 Subject: A small testsuite the stuff from the remote goes to the stdout There is a send button and a multilineedit be sure to hit \n before sending... Some debug code... in some files debugged IOSerial it should be fine now --- diff --git a/noncore/apps/opie-console/io_serial.cpp b/noncore/apps/opie-console/io_serial.cpp index 77ced85..929aeff 100644 --- a/noncore/apps/opie-console/io_serial.cpp +++ b/noncore/apps/opie-console/io_serial.cpp @@ -38,10 +38,13 @@ void IOSerial::close() { } bool IOSerial::open() { + qWarning("open"); if (!m_fd) { + qWarning("going to open %s", m_device.latin1()); struct termios tty; m_fd = ::open(m_device, O_RDWR | O_NOCTTY | O_NONBLOCK); if (m_fd < 0) { + qWarning(" fd < 0 "); emit error(CouldNotOpen, strerror(errno)); return FALSE; } @@ -50,6 +53,7 @@ bool IOSerial::open() { /* Baud rate */ int speed = baud(m_baud); if (speed == -1) { + qWarning("speed -1"); emit error(Refuse, tr("Invalid baud rate")); } cfsetospeed(&tty, speed); @@ -113,6 +117,7 @@ bool IOSerial::open() { connect(m_error, SIGNAL(activated(int)), this, SLOT(errorOccured())); return TRUE; } else { + qWarning("opened"); emit error(Refuse, tr("Device is already connected")); m_fd = 0; return FALSE; @@ -121,6 +126,8 @@ bool IOSerial::open() { void IOSerial::reload(const Profile &config) { m_device = config.readEntry("Device", SERIAL_DEFAULT_DEVICE); + qWarning( "Dev" +m_device ); + qWarning( "Conf:" +config.readEntry("Device") ); m_baud = config.readNumEntry("Baud", SERIAL_DEFAULT_BAUD); m_parity = config.readNumEntry("Parity", SERIAL_DEFAULT_PARITY); m_dbits = config.readNumEntry("DataBits", SERIAL_DEFAULT_DBITS); @@ -150,15 +157,14 @@ void IOSerial::errorOccured() { } void IOSerial::dataArrived() { - QByteArray array; - char buf[4096]; + QByteArray array(4096); - int len = read(m_fd, buf, 4096); + int len = read(m_fd, array.data(), 4096); if (len == 0) close(); if (len < 0) return; - array.setRawData(buf, len); + array.resize( len ); emit received(array); } diff --git a/noncore/apps/opie-console/profile.cpp b/noncore/apps/opie-console/profile.cpp index 1a94619..ffd672e 100644 --- a/noncore/apps/opie-console/profile.cpp +++ b/noncore/apps/opie-console/profile.cpp @@ -78,9 +78,11 @@ void Profile::clearConf() { m_conf.clear(); } void Profile::writeEntry( const QString& key, const QString& value ) { + qWarning("key %s value %s", key.latin1(), value.latin1() ); m_conf.replace( key, value ); } void Profile::writeEntry( const QString& key, int num ) { + qWarning("num"); writeEntry( key, QString::number( num ) ); } void Profile::writeEntry( const QString& key, bool b ) { diff --git a/noncore/apps/opie-console/test/console.pro b/noncore/apps/opie-console/test/console.pro new file mode 100644 index 0000000..721b820 --- a/dev/null +++ b/noncore/apps/opie-console/test/console.pro @@ -0,0 +1,15 @@ +TEMPLATE = app +#CONFIG = qt warn_on release +CONFIG = qt debug +#DESTDIR = $(OPIEDIR)/bin +HEADERS = ../io_layer.h ../io_serial.h \ + senderui.h ../profile.h +SOURCES = ../io_layer.cpp ../io_serial.cpp \ + ../profile.cpp \ + main.cpp senderui.cpp +INTERFACES = sender.ui +INCLUDEPATH += $(OPIEDIR)/include +DEPENDPATH += $(OPIEDIR)/include +LIBS += -lqpe -lopie +TARGET = test + diff --git a/noncore/apps/opie-console/test/main.cpp b/noncore/apps/opie-console/test/main.cpp new file mode 100644 index 0000000..f5e8722 --- a/dev/null +++ b/noncore/apps/opie-console/test/main.cpp @@ -0,0 +1,13 @@ +#include + +#include "senderui.h" + + +int main( int argc, char* argv[] ){ +QPEApplication app(argc,argv ); + +SenderUI ui; +app.showMainWidget(&ui); + +return app.exec(); +} \ No newline at end of file diff --git a/noncore/apps/opie-console/test/sender.ui b/noncore/apps/opie-console/test/sender.ui new file mode 100644 index 0000000..092f6e3 --- a/dev/null +++ b/noncore/apps/opie-console/test/sender.ui @@ -0,0 +1,60 @@ + +Sender + + QWidget + + name + Form1 + + + geometry + + 0 + 0 + 596 + 480 + + + + caption + Form1 + + + + margin + 11 + + + spacing + 6 + + + QMultiLineEdit + + name + MultiLineEdit1 + + + + QPushButton + + name + PushButton1 + + + text + &Send + + + + + + + PushButton1 + clicked() + Form1 + slotSend() + + slotSend() + + diff --git a/noncore/apps/opie-console/test/senderui.cpp b/noncore/apps/opie-console/test/senderui.cpp new file mode 100644 index 0000000..fc93c04 --- a/dev/null +++ b/noncore/apps/opie-console/test/senderui.cpp @@ -0,0 +1,47 @@ +#include +#include + +#include + +#include "../profile.h" +#include "../io_serial.h" + + +#include "senderui.h" + +SenderUI::SenderUI() + : Sender() { + + /* we do that manually */ + Profile prof; + QString str = "/dev/ttyS0"; + prof.writeEntry("Device",str ); + prof.writeEntry("Baud", 115200 ); + + qWarning("prof " + prof.readEntry("Device") + " " + str); + ser = new IOSerial(prof); + connect(ser, SIGNAL(received(const QByteArray& ) ), + this, SLOT(got(const QByteArray&) ) ); + + if ( ser->open() ) + qWarning("opened!!!"); + else + qWarning("could not open"); + + + +} +SenderUI::~SenderUI() { + +} +void SenderUI::slotSend() { + QCString str = MultiLineEdit1->text().utf8(); + qWarning("sending: %s", str.data() ); + ser->send( str ); +} +void SenderUI::got(const QByteArray& ar) { + for ( uint i = 0; i < ar.count(); i++ ) { + printf("%c", ar[i] ); + } + //printf("\n"); +} diff --git a/noncore/apps/opie-console/test/senderui.h b/noncore/apps/opie-console/test/senderui.h new file mode 100644 index 0000000..bc69f5d --- a/dev/null +++ b/noncore/apps/opie-console/test/senderui.h @@ -0,0 +1,23 @@ +#ifndef SENDER_UI_H +#define SENDER_UI_H + +#include + +#include "sender.h" + +class IOSerial; +class SenderUI : public Sender { + Q_OBJECT +public: + SenderUI(); + ~SenderUI(); + +public slots: + void slotSend(); + void got(const QByteArray& ); +private: + IOSerial* ser; +}; + + +#endif -- cgit v0.9.0.2