summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/MyPty.h2
-rw-r--r--noncore/apps/opie-console/default.cpp2
-rw-r--r--noncore/apps/opie-console/io_layer.h2
-rw-r--r--noncore/apps/opie-console/io_serial.cpp8
-rw-r--r--noncore/apps/opie-console/io_serial.h3
-rw-r--r--noncore/apps/opie-console/mainwindow.cpp8
-rw-r--r--noncore/apps/opie-console/session.cpp7
-rw-r--r--noncore/apps/opie-console/session.h2
8 files changed, 19 insertions, 15 deletions
diff --git a/noncore/apps/opie-console/MyPty.h b/noncore/apps/opie-console/MyPty.h
index ad271df..81abad5 100644
--- a/noncore/apps/opie-console/MyPty.h
+++ b/noncore/apps/opie-console/MyPty.h
@@ -53,13 +53,13 @@ public:
int run(const char* pgm, QStrList & args , const char* term, int addutmp);
bool open();
void close();
void reload( const Profile& );
void setSize(int lines, int columns);
void error();
-
+ bool isConnected() { return true; };
signals:
/*!
emitted when the client program terminates.
\param status the wait(2) status code of the terminated client program.
*/
diff --git a/noncore/apps/opie-console/default.cpp b/noncore/apps/opie-console/default.cpp
index 64c9542..8b905e1 100644
--- a/noncore/apps/opie-console/default.cpp
+++ b/noncore/apps/opie-console/default.cpp
@@ -47,13 +47,13 @@ extern "C" {
return new IOIrda( prof );
}
IOLayer* newModemLayer( const Profile& prof ) {
return new IOModem( prof );
}
IOLayer* newConsole( const Profile& prof ) {
- return new MyPty(prof );
+ return new MyPty( prof );
}
// Connection Widgets
ProfileDialogWidget* newSerialWidget( const QString& str, QWidget* wid ) {
return new SerialConfigWidget( str, wid );
}
diff --git a/noncore/apps/opie-console/io_layer.h b/noncore/apps/opie-console/io_layer.h
index 4977e94..d5f7eab 100644
--- a/noncore/apps/opie-console/io_layer.h
+++ b/noncore/apps/opie-console/io_layer.h
@@ -76,12 +76,14 @@ public:
/**
* What does the IOLayer support?
* Bits are related to features
*/
virtual QBitArray supports()const = 0;
+ virtual bool isConnected() = 0;
+
signals:
/**
* received input as QCString
*/
virtual void received( const QByteArray& );
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 @@
#include "io_serial.h"
IOSerial::IOSerial(const Profile &config) : IOLayer(config) {
m_read = 0l;
m_error = 0l;
m_fd = 0;
+ m_connected = false;
reload(config);
}
IOSerial::~IOSerial() {
if (m_fd) {
@@ -29,13 +30,15 @@ void IOSerial::send(const QByteArray &data) {
void IOSerial::close() {
if (m_fd) {
delete m_read;
delete m_error;
::close(m_fd);
m_fd = 0;
+ m_connected = false;
} else {
+ m_connected = false;
emit error(Refuse, tr("Not connected"));
}
}
bool IOSerial::open() {
if (!m_fd) {
@@ -108,12 +111,13 @@ bool IOSerial::open() {
/* Notifications on read & errors */
m_read = new QSocketNotifier(m_fd, QSocketNotifier::Read, this);
m_error = new QSocketNotifier(m_fd, QSocketNotifier::Exception, this);
connect(m_read, SIGNAL(activated(int)), this, SLOT(dataArrived()));
connect(m_error, SIGNAL(activated(int)), this, SLOT(errorOccured()));
+ m_connected = false;
return TRUE;
} else {
emit error(Refuse, tr("Device is already connected"));
m_fd = 0;
return FALSE;
}
@@ -191,6 +195,10 @@ QBitArray IOSerial::supports()const {
QBitArray ar(3);
ar[0] = ar[2] = 0;
ar[1] = 1;
return ar;
}
+
+bool IOSerial::isConnected() {
+ return m_connected;
+}
diff --git a/noncore/apps/opie-console/io_serial.h b/noncore/apps/opie-console/io_serial.h
index b1d1be1..7a1ea1d 100644
--- a/noncore/apps/opie-console/io_serial.h
+++ b/noncore/apps/opie-console/io_serial.h
@@ -35,12 +35,13 @@ public:
QString identifier() const;
QString name() const;
int rawIO()const;
void closeRawIO(int fd );
QBitArray supports()const;
+ bool isConnected();
/*signals:
void received(const QByteArray &);
void error(int, const QString &);
*/
public slots:
void send(const QByteArray &);
@@ -59,9 +60,11 @@ protected:
int m_baud;
int m_parity;
int m_dbits;
int m_sbits;
int m_flow;
int m_fd;
+ bool m_connected;
+
};
#endif /* OPIE_IO_SERIAL */
diff --git a/noncore/apps/opie-console/mainwindow.cpp b/noncore/apps/opie-console/mainwindow.cpp
index d3b6c8a..4326609 100644
--- a/noncore/apps/opie-console/mainwindow.cpp
+++ b/noncore/apps/opie-console/mainwindow.cpp
@@ -202,13 +202,13 @@ void MainWindow::initUI() {
m_keyBar = new QToolBar(this);
addToolBar( m_keyBar, "Keyboard", QMainWindow::Top, TRUE );
m_keyBar->setHorizontalStretchable( TRUE );
m_keyBar->hide();
m_kb = new FunctionKeyboard(m_keyBar);
- connect(m_kb, SIGNAL(keyPressed(ushort, ushort, bool, bool, bool)),
+ connect(m_kb, SIGNAL(keyPressed(ushort, ushort, bool, bool, bool)),
this, SLOT(slotKeyReceived(ushort, ushort, bool, bool, bool)));
m_connect->setEnabled( false );
m_disconnect->setEnabled( false );
@@ -436,14 +436,14 @@ void MainWindow::slotOpenKeb(bool state) {
}
void MainWindow::slotSessionChanged( Session* ses ) {
qWarning("changed!");
if ( ses ) {
m_curSession = ses;
-
- if ( m_curSession->isConnected() ) {
+ qDebug(QString("is connected : %1").arg( m_curSession->layer()->isConnected() ) );
+ if ( m_curSession->layer()->isConnected() ) {
m_connect->setEnabled( false );
m_disconnect->setEnabled( true );
} else {
m_connect->setEnabled( true );
m_disconnect->setEnabled( false );
}
@@ -486,9 +486,9 @@ void MainWindow::slotKeyReceived(ushort u, ushort q, bool, bool, bool) {
if ( m_curSession ) {
QKeyEvent ke(QEvent::KeyPress, q, u, 0);
ke.ignore();
// where should i send this event? doesnt work sending it here
- QApplication::sendEvent((QObject *)m_curSession->widgetStack(), &ke);
+ QApplication::sendEvent((QObject *)m_curSession->widgetStack(), &ke);
}
}
diff --git a/noncore/apps/opie-console/session.cpp b/noncore/apps/opie-console/session.cpp
index aad100d..2ce6872 100644
--- a/noncore/apps/opie-console/session.cpp
+++ b/noncore/apps/opie-console/session.cpp
@@ -48,27 +48,23 @@ WidgetLayer* Session::emulationWidget() {
}
*/
void Session::connect() {
if ( !m_layer || !m_emu )
return;
- m_connected = true;
-
QObject::connect(m_layer, SIGNAL(received(const QByteArray&) ),
m_emu, SLOT(recv(const QByteArray&) ) );
QObject::connect(m_emu, SIGNAL(send(const QByteArray&) ),
m_layer, SLOT(send(const QByteArray&) ) );
}
void Session::disconnect() {
if ( !m_layer || !m_emu )
return;
- m_connected = false;
-
QObject::disconnect(m_layer, SIGNAL(received(const QByteArray&) ),
m_emu, SLOT(recv(const QByteArray&) ) );
QObject::disconnect(m_emu, SIGNAL(send(const QByteArray&) ),
m_layer, SLOT(send(const QByteArray&) ) );
}
@@ -97,9 +93,6 @@ void Session::setEmulationHandler( EmulationHandler* lay ) {
void Session::setEmulationWidget( WidgetLayer* lay ) {
delete m_widLay;
m_widLay = lay;
}
*/
-bool Session::isConnected() {
- return m_connected;
-}
diff --git a/noncore/apps/opie-console/session.h b/noncore/apps/opie-console/session.h
index ff92df3..83b2046 100644
--- a/noncore/apps/opie-console/session.h
+++ b/noncore/apps/opie-console/session.h
@@ -57,14 +57,12 @@ public:
void setWidgetStack( QWidgetStack* widget );
void setEmulationHandler( EmulationHandler* lay );
void setIOLayer( IOLayer* );
void setName( const QString& );
- bool isConnected();
-
private:
QString m_name;
QWidgetStack* m_widget;
IOLayer* m_layer;
EmulationHandler* m_emu;
bool m_connected;