author | zecke <zecke> | 2003-02-16 15:49:02 (UTC) |
---|---|---|
committer | zecke <zecke> | 2003-02-16 15:49:02 (UTC) |
commit | 30a098530260176ac20d75ba6cb7abfb3d998c13 (patch) (side-by-side diff) | |
tree | ee5c08ca67fa00574414153921ab2de654c60421 /core/applets | |
parent | 7fab90d46144843d32e476ada8d0a5f40f50aa60 (diff) | |
download | opie-30a098530260176ac20d75ba6cb7abfb3d998c13.zip opie-30a098530260176ac20d75ba6cb7abfb3d998c13.tar.gz opie-30a098530260176ac20d75ba6cb7abfb3d998c13.tar.bz2 |
disable snd in IrDaApplet it hangs on my machine..
Remove the hacky OBEX Implementation
Add a more cleaned up more appealing (not yet working) version
which will even be able to do OBEX over Bluetooth in the future
-It handles receive better
let's you choose what to do with custom files and created a DocLnk
-Send lets you beam to multiple devices
this needs the IrDa Applet to be present
-rw-r--r-- | core/applets/irdaapplet/irda.cpp | 8 | ||||
-rw-r--r-- | core/applets/obex/config.in | 4 | ||||
-rw-r--r-- | core/applets/obex/libopieobex.control | 8 | ||||
-rw-r--r-- | core/applets/obex/obex.cc | 194 | ||||
-rw-r--r-- | core/applets/obex/obex.h | 85 | ||||
-rw-r--r-- | core/applets/obex/obex.pro | 32 | ||||
-rw-r--r-- | core/applets/obex/obexdlg.ui | 279 | ||||
-rw-r--r-- | core/applets/obex/obeximpl.cc | 150 | ||||
-rw-r--r-- | core/applets/obex/obeximpl.h | 38 | ||||
-rw-r--r-- | core/applets/obex/obexinc.ui | 230 | ||||
-rwxr-xr-x | core/applets/obex/processwrapper.cc | 114 |
11 files changed, 4 insertions, 1138 deletions
diff --git a/core/applets/irdaapplet/irda.cpp b/core/applets/irdaapplet/irda.cpp index 84c656f..a5b4bfc 100644 --- a/core/applets/irdaapplet/irda.cpp +++ b/core/applets/irdaapplet/irda.cpp @@ -155,91 +155,91 @@ bool IrdaApplet::setIrdaDiscoveryStatus ( bool d ) QFile discovery ( "/proc/sys/net/irda/discovery" ); if ( discovery. open ( IO_WriteOnly | IO_Raw )) { discovery.putch ( d ? '1' : '0' ); return true; } return false; } bool IrdaApplet::setIrdaReceiveStatus ( bool d ) { QCopEnvelope e ( "QPE/Obex", "receive(int)" ); e << ( d ? 1 : 0 ); m_receive_active = d; m_receive_state_changed = true; return true; } void IrdaApplet::showDiscovered ( ) { - static Sound snd_found ( "irdaapplet/irdaon" ); - static Sound snd_lost ( "irdaapplet/irdaoff" ); +// static Sound snd_found ( "irdaapplet/irdaon" ); +// static Sound snd_lost ( "irdaapplet/irdaoff" ); QFile discovery ( "/proc/net/irda/discovery" ); if ( discovery. open ( IO_ReadOnly )) { bool qcopsend = false; QString discoveredDevice; QString deviceAddr; // since it is /proc we _must_ use QTextStream QStringList list = QStringList::split ( "\n", QTextStream ( &discovery ). read ( )); QMap <QString, QString>::Iterator it; for ( it = m_devices. begin ( ); it != m_devices. end ( ); ++it ) it. data ( ). prepend ( "+++" ); for ( QStringList::Iterator lit = list. begin ( ); lit != list. end ( ); ++lit ) { const QString &line = *lit; if ( line. startsWith ( "nickname:" )) { discoveredDevice = line. mid ( line. find ( ':' ) + 2, line. find ( ',' ) - line. find ( ':' ) - 2 ); deviceAddr = line. mid ( line. find ( "daddr:" ) + 9, 8 ); // qDebug(discoveredDevice + "(" + deviceAddr + ")"); if ( !m_devices. contains ( deviceAddr )) { popup ( tr( "Found:" ) + " " + discoveredDevice ); - snd_found. play ( ); + //snd_found. play ( ); qcopsend = true; } m_devices. replace ( deviceAddr, discoveredDevice ); } } for ( it = m_devices. begin ( ); it != m_devices. end ( ); ) { // qDebug("IrdaMon: delete " + it.currentKey() + "=" + *devicesAvailable[it.currentKey()] + "?"); if ( it. data ( ). left ( 3 ) == "+++" ) { popup ( tr( "Lost:" ) + " " + it. data ( ). mid ( 3 )); - snd_lost. play ( ); + //snd_lost. play ( ); QMap <QString, QString>::Iterator tmp = it; tmp++; m_devices. remove ( it ); // in contrast to QValueListIterator this remove doesn't return the next Iterator it = tmp; qcopsend = true; } else it++; } // XXX if( qcopsend ) { QCopEnvelope e ( "QPE/Network", "irdaSend(bool)" ); e << ( m_devices. count ( ) > 0 ); // } } } void IrdaApplet::mousePressEvent ( QMouseEvent * ) { QPopupMenu *menu = new QPopupMenu ( this ); QString cmd; /* Refresh active state */ diff --git a/core/applets/obex/config.in b/core/applets/obex/config.in deleted file mode 100644 index 4d1f43d..0000000 --- a/core/applets/obex/config.in +++ b/dev/null @@ -1,4 +0,0 @@ - config OBEX - boolean "Obex library (library needed for beaming in Opie)" - default "y" - depends ( LIBQPE || LIBQPE-X11 ) && LIBOPIE diff --git a/core/applets/obex/libopieobex.control b/core/applets/obex/libopieobex.control deleted file mode 100644 index 3fd0f77..0000000 --- a/core/applets/obex/libopieobex.control +++ b/dev/null @@ -1,8 +0,0 @@ -Files: plugins/obex/libopieobex.so* -Priority: optional -Section: opie/system -Maintainer: Holger Freyther <zecke@handhelds.org> -Architecture: arm -Version: $QPE_VERSION-$SUB_VERSION.1 -Depends: opie-base, openobex | libopenobex1 -Description: Irda obex lib diff --git a/core/applets/obex/obex.cc b/core/applets/obex/obex.cc deleted file mode 100644 index 43041f5..0000000 --- a/core/applets/obex/obex.cc +++ b/dev/null @@ -1,194 +0,0 @@ - -#include <qapplication.h> -#include <qmessagebox.h> -#include <qpe/qcopenvelope_qws.h> -#include <opie/oprocess.h> -#include "obex.h" - -using namespace OpieObex; - -Obex::Obex( QObject *parent, const char* name ) - : QObject(parent, name ) -{ - m_rec = 0; - m_send=0; - m_count = 0; - m_receive = false; - connect( this, SIGNAL(error(int) ), // for recovering to receive - SLOT(slotError() ) ); - connect( this, SIGNAL(sent() ), - SLOT(slotError() ) ); -}; -Obex::~Obex() { - delete m_rec; - delete m_send; -} -void Obex::receive() { - m_receive = true; - m_outp = QString::null; - qWarning("Receive" ); - m_rec = new OProcess(); - *m_rec << "irobex_palm3"; - // connect to the necessary slots - connect(m_rec, SIGNAL(processExited(OProcess*) ), - this, SLOT(slotExited(OProcess*) ) ); - - connect(m_rec, SIGNAL(receivedStdout(OProcess*, char*, int ) ), - this, SLOT(slotStdOut(OProcess*, char*, int) ) ); - - if(!m_rec->start(OProcess::NotifyOnExit, OProcess::AllOutput) ) { - qWarning("could not start :("); - emit done( false ); - delete m_rec; - m_rec = 0; - } -// emit currentTry(m_count ); - -} -void Obex::send( const QString& fileName) { // if currently receiving stop it send receive - m_count = 0; - m_file = fileName; - qWarning("send"); - if (m_rec != 0 ) { - qWarning("running"); - if (m_rec->isRunning() ) { - emit error(-1 ); - qWarning("is running"); - delete m_rec; - m_rec = 0; - - }else{ - qWarning("is not running"); - emit error( -1 ); // we did not delete yet but it's not running slotExited is pending - return; - } - } - sendNow(); -} -void Obex::sendNow(){ - qWarning("sendNow"); - if ( m_count >= 25 ) { // could not send - emit error(-1 ); - return; - } - // OProcess inititialisation - m_send = new OProcess(); - *m_send << "irobex_palm3"; - *m_send << m_file; - - // connect to slots Exited and and StdOut - connect(m_send, SIGNAL(processExited(OProcess*) ), - this, SLOT(slotExited(OProcess*)) ); - connect(m_send, SIGNAL(receivedStdout(OProcess*, char*, int )), - this, SLOT(slotStdOut(OProcess*, char*, int) ) ); - - // now start it - if (!m_send->start(/*OProcess::NotifyOnExit, OProcess::AllOutput*/ ) ) { - qWarning("could not send" ); - m_count = 25; - emit error(-1 ); - delete m_send; - m_send=0; - } - // end - m_count++; - emit currentTry( m_count ); -} - -void Obex::slotExited(OProcess* proc ){ - if (proc == m_rec ) { // receive process - received(); - }else if ( proc == m_send ) { - sendEnd(); - } -} -void Obex::slotStdOut(OProcess* proc, char* buf, int len){ - if ( proc == m_rec ) { // only receive - QCString cstring( buf, len ); - m_outp.append( cstring.data() ); - } -} - -void Obex::received() { - if (m_rec->normalExit() ) { - if ( m_rec->exitStatus() == 0 ) { // we got one - QString filename = parseOut(); - qWarning("ACHTUNG"); - emit receivedFile( filename ); - } - }else{ - emit done(false); - }; - delete m_rec; - m_rec = 0; - receive(); -} - -void Obex::sendEnd() { - if (m_send->normalExit() ) { - if ( m_send->exitStatus() == 0 ) { - delete m_send; - m_send=0; - qWarning("done" ); - emit sent(); - }else if (m_send->exitStatus() == 255 ) { // it failed maybe the other side wasn't ready - // let's try it again - delete m_send; - m_send = 0; - qWarning("try sending again" ); - sendNow(); - } - }else { - emit error( -1 ); - delete m_send; - m_send = 0; - } -} -QString Obex::parseOut( ){ - QString path; - QStringList list = QStringList::split("\n", m_outp); - QStringList::Iterator it; - for (it = list.begin(); it != list.end(); ++it ) { - if ( (*it).startsWith("Wrote" ) ) { - int pos = (*it).findRev('(' ); - if ( pos > 0 ) { - qWarning( "%d %s", pos, (*it).mid(6 ).latin1() ) ; - qWarning("%d %d", (*it).length(), (*it).length()-pos ); - - path = (*it).remove( pos, (*it).length() - pos ); - qWarning("%s", path.latin1() ); - path = path.mid(6 ); - path = path.stripWhiteSpace(); - qWarning("path %s", path.latin1() ); - } - } - } - return path; -} -/** - * when sent is done slotError is called we will start receive again - */ -void Obex::slotError() { - qWarning("slotError"); - if ( m_receive ) - receive(); -}; -void Obex::setReceiveEnabled( bool receive ) { - if ( !receive ) { // - m_receive = false; - shutDownReceive(); - } -} - -void Obex::shutDownReceive() { - if (m_rec != 0 ) { - qWarning("running"); - if (m_rec->isRunning() ) { - emit error(-1 ); - qWarning("is running"); - delete m_rec; - m_rec = 0; - } - } - -} diff --git a/core/applets/obex/obex.h b/core/applets/obex/obex.h deleted file mode 100644 index 781fca2..0000000 --- a/core/applets/obex/obex.h +++ b/dev/null @@ -1,85 +0,0 @@ - - -#ifndef OpieObex_H -#define OpieObex_H - -#include <qobject.h> - -class OProcess; -class QCopChannel; -namespace OpieObex { - class Obex : public QObject { - Q_OBJECT - public: - /** - * Obex c'tor look - */ - Obex( QObject *parent, const char* name); - /** - * d'tor - */ - ~Obex(); - - /** - * Starting listening to irda after enabled by the applet - * a signal gets emitted when recieved a file - */ - void receive(); - void send( const QString& ); - void setReceiveEnabled( bool = false ); - signals: - - /** - * a signal - * @param path The path to the recieved file - */ - void receivedFile( const QString& path); - /** - * error signal if the program couldn't be started or the - * the connection timed out - */ - void error( int ); - /** - * The current try to receive data - */ - void currentTry(unsigned int); - /** - * signal sent The file got beamed to the remote location - */ - void sent(); - // private slots - void done(bool); - - private: - uint m_count; - QString m_file; - QString m_outp; - OProcess *m_send; - OProcess *m_rec; - bool m_receive : 1; - void shutDownReceive(); - -private slots: - - /** - * send over palm obex - */ - - //void send(const QString&); - - // the process exited - void slotExited(OProcess* proc) ; - void slotStdOut(OProcess*, char*, int); - void slotError(); - - private: - void sendNow(); - QString parseOut(); - void received(); - void sendEnd(); - - }; -}; - - -#endif diff --git a/core/applets/obex/obex.pro b/core/applets/obex/obex.pro deleted file mode 100644 index d7cc338..0000000 --- a/core/applets/obex/obex.pro +++ b/dev/null @@ -1,32 +0,0 @@ -TEMPLATE = lib -CONFIG += qt warn_on release -HEADERS = obex.h obeximpl.h -SOURCES = obex.cc obeximpl.cc -TARGET = opieobex -DESTDIR = $(OPIEDIR)/plugins/obex -INCLUDEPATH += $(OPIEDIR)/include $(OPIEDIR)/core/launcher -DEPENDPATH += ../$(OPIEDIR)/include -INTERFACES = obexinc.ui obexdlg.ui -LIBS += -lqpe -lopie -VERSION = 0.0.1 - -TRANSLATIONS = ../../../i18n/de/libopieobex.ts \ - ../../../i18n/da/libopieobex.ts \ - ../../../i18n/xx/libopieobex.ts \ - ../../../i18n/en/libopieobex.ts \ - ../../../i18n/es/libopieobex.ts \ - ../../../i18n/fr/libopieobex.ts \ - ../../../i18n/hu/libopieobex.ts \ - ../../../i18n/ja/libopieobex.ts \ - ../../../i18n/ko/libopieobex.ts \ - ../../../i18n/no/libopieobex.ts \ - ../../../i18n/pl/libopieobex.ts \ - ../../../i18n/pt/libopieobex.ts \ - ../../../i18n/pt_BR/libopieobex.ts \ - ../../../i18n/sl/libopieobex.ts \ - ../../../i18n/zh_CN/libopieobex.ts \ - ../../../i18n/zh_TW/libopieobex.ts - - - -include ( $(OPIEDIR)/include.pro ) diff --git a/core/applets/obex/obexdlg.ui b/core/applets/obex/obexdlg.ui deleted file mode 100644 index b367ffd..0000000 --- a/core/applets/obex/obexdlg.ui +++ b/dev/null @@ -1,279 +0,0 @@ -<!DOCTYPE UI><UI> -<class>ObexDlg</class> -<author>me</author> -<widget> - <class>QWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Form1</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>0</x> - <y>0</y> - <width>204</width> - <height>246</height> - </rect> - </property> - <property stdset="1"> - <name>caption</name> - <string>OBEX Sending</string> - </property> - <widget> - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout5</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>0</x> - <y>60</y> - <width>200</width> - <height>70</height> - </rect> - </property> - <vbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>TextLabel1</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Sending:</string> - </property> - </widget> - <spacer> - <property> - <name>name</name> - <cstring>Spacer6</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Vertical</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Fixed</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>lblPath</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>filename</string> - </property> - <property stdset="1"> - <name>textFormat</name> - <enum>RichText</enum> - </property> - <property stdset="1"> - <name>alignment</name> - <set>AlignTop|AlignLeft</set> - </property> - <property> - <name>hAlign</name> - </property> - <property> - <name>vAlign</name> - </property> - </widget> - </vbox> - </widget> - <spacer> - <property> - <name>name</name> - <cstring>Spacer7</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Vertical</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - <spacer> - <property> - <name>name</name> - <cstring>Spacer8</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Vertical</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - <widget> - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout6</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>20</x> - <y>170</y> - <width>170</width> - <height>34</height> - </rect> - </property> - <hbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <spacer> - <property> - <name>name</name> - <cstring>Spacer9</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Horizontal</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - <widget> - <class>QPushButton</class> - <property stdset="1"> - <name>name</name> - <cstring>PushButton2</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>&Cancel</string> - </property> - </widget> - <spacer> - <property> - <name>name</name> - <cstring>Spacer10</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Horizontal</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </hbox> - </widget> - <spacer> - <property> - <name>name</name> - <cstring>Spacer11</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Vertical</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - <spacer> - <property> - <name>name</name> - <cstring>Spacer18</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Vertical</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> -</widget> -<connections> - <connection> - <sender>PushButton2</sender> - <signal>clicked()</signal> - <receiver>Form1</receiver> - <slot>slotCancel()</slot> - </connection> - <slot access="public">slotCancel()</slot> -</connections> -</UI> diff --git a/core/applets/obex/obeximpl.cc b/core/applets/obex/obeximpl.cc deleted file mode 100644 index 88f2d44..0000000 --- a/core/applets/obex/obeximpl.cc +++ b/dev/null @@ -1,150 +0,0 @@ - -#include <qdatastream.h> -#include <qmessagebox.h> - - -#include <qpe/qcom.h> -#include <qpe/applnk.h> - -#include <qlabel.h> - -#include "obex.h" -#include "obeximpl.h" - - - -using namespace OpieObex; - -ObexImpl::ObexImpl( ) - : QObject() { - // register to a channel - qWarning( "c'tor" ); - m_obex = new Obex(this, "obex"); - m_sendgui = new ObexDlg(); - m_recvgui = new ObexInc(); - m_chan = new QCopChannel("QPE/Obex" ); - connect(m_chan, SIGNAL(received(const QCString&, const QByteArray& ) ), - this, SLOT(slotMessage(const QCString&, const QByteArray&) ) ); - connect(m_obex, SIGNAL(receivedFile(const QString& ) ), - this, SLOT(slotReceivedFile(const QString& ) ) ); - connect((QObject*) m_recvgui->InsertButton, SIGNAL(clicked()), - m_recvgui, SLOT( accept() )); - connect((QObject*) m_recvgui->RejectButton, SIGNAL(clicked()), - m_recvgui, SLOT( reject() )); -} - -ObexImpl::~ObexImpl() { - delete m_obex; - delete m_chan; - delete m_sendgui; - delete m_recvgui; -} - -QRESULT ObexImpl::queryInterface( const QUuid &uuid, QUnknownInterface **iface ) { - *iface = 0; - if( uuid == IID_QUnknown ) - *iface = this; - else if( uuid == IID_ObexInterface ) - *iface = this; - - qWarning("query" ); - if(*iface ) - (*iface)->addRef(); - return QS_OK; -} - -void ObexImpl::slotMessage( const QCString& msg, const QByteArray&data ) { - QDataStream stream( data, IO_ReadOnly ); - qWarning("Message %s", msg.data() ); - if(msg == "send(QString,QString,QString)" ) { - QString desc; - stream >> desc; - stream >> m_name; - m_sendgui->raise(); // should be on top - m_sendgui->showMaximized(); - m_sendgui->lblPath->setText(m_name); - connect( (QObject*)m_sendgui->PushButton2, SIGNAL(clicked()), - this, SLOT(slotCancelSend())); - m_obex->send(m_name ); - connect( (QObject*)m_obex, SIGNAL( sent() ), this, - SLOT( slotSent() ) ); - connect( (QObject*)m_obex, SIGNAL( error(int) ), this, - SLOT( slotSent() ) ); - }else if(msg == "receive(int)" ) { // open a GUI - //m_recvgui->showMaximized(); - int receiveD = 0; - stream >> receiveD; - if ( receiveD == 1) - m_obex->receive(); - else - m_obex->setReceiveEnabled( false ); - - } else if (msg =="done(QString)") { - QString text; - stream >> text; - m_sendgui->lblPath->setText(tr("Done transfering " + text)); - - } -} - -void ObexImpl::slotCancelSend() { - // cancel sync process too - //m_obex->cancel(); // not ready yet - m_sendgui->hide(); -} - -void ObexImpl::slotDone(bool) { - QCopEnvelope e ("QPE/Obex", "done(QString)" ); //but this into a slot - e << m_name; -} - -void ObexImpl::slotSent() { - m_sendgui->lblPath->setText("Done!"); - m_sendgui->hide(); -} - -void ObexImpl::slotError( int errorCode) { - - QString errorString = ""; - if (errorCode == -1) { - errorString = "test"; - } - qDebug("Error: " + errorString); - m_sendgui->hide(); -} - -// Received a file via beam -// check for mime type and then either -// add to App via setDocument -void ObexImpl::slotReceivedFile( const QString &fileName ) { - qWarning("filename %s", fileName.latin1() ); - DocLnk lnk( fileName ); - QString exec = lnk.exec(); - qWarning("executing %s", exec.latin1() ); - if ( exec.isEmpty() || exec == "" ) { - qWarning("empty"); - if ( fileName.right(4) == ".vcf" ) - exec = "addressbook"; - else if ( fileName.right(4) == ".vcs" ) { - exec = "datebook"; - } - } // now prompt and then add it - - m_recvgui->PixmapLabel->setPixmap( lnk.pixmap() ); - m_recvgui->AppLabel->setText( "<b>" + exec + "<b>" ); - m_recvgui->FileLabel->setText( lnk.name() ); - // m_recvgui->showMaximized(); - // if( m_recvgui->exec() == 0 ) { - QCString str= "QPE/Application/"; - str += exec.latin1(); - qWarning("channel %s", str.data() ); - QCopEnvelope e(str , "setDocument(QString)" ); - e << fileName; - //} -} - - - -Q_EXPORT_INTERFACE() { - Q_CREATE_INSTANCE( ObexImpl ) -} diff --git a/core/applets/obex/obeximpl.h b/core/applets/obex/obeximpl.h deleted file mode 100644 index 78d5b25..0000000 --- a/core/applets/obex/obeximpl.h +++ b/dev/null @@ -1,38 +0,0 @@ - -#ifndef OpieObexImpl_H -#define OpieObexImpl_H - -#include <qobject.h> -#include <obexinterface.h> -#include "obexdlg.h" -#include "obexinc.h" -#include <qpe/qcopenvelope_qws.h> - -namespace OpieObex { - class Obex; - class ObexImpl : public QObject, public ObexInterface { - Q_OBJECT - public: - ObexImpl(); - virtual ~ObexImpl(); - QRESULT queryInterface( const QUuid&, QUnknownInterface** ); - Q_REFCOUNT // for reference counting (macro ) - private: - ulong ref; - Obex* m_obex; // obex lib - QCopChannel *m_chan; - ObexDlg *m_sendgui; - ObexInc *m_recvgui; - QString m_name; - private slots: - void slotCancelSend(); - void slotMessage( const QCString&, const QByteArray& ); - void slotError(int ); - // void slotCurrentTry( unsigned int ); */ - void slotDone(bool); - void slotReceivedFile(const QString & ); - void slotSent(); - - }; -}; -#endif diff --git a/core/applets/obex/obexinc.ui b/core/applets/obex/obexinc.ui deleted file mode 100644 index 4cc8056..0000000 --- a/core/applets/obex/obexinc.ui +++ b/dev/null @@ -1,230 +0,0 @@ -<!DOCTYPE UI><UI> -<class>ObexInc</class> -<widget> - <class>QDialog</class> - <property stdset="1"> - <name>name</name> - <cstring>ObexInc</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>0</x> - <y>0</y> - <width>208</width> - <height>248</height> - </rect> - </property> - <property stdset="1"> - <name>caption</name> - <string>OBEX Receiving</string> - </property> - <widget> - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout5</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>90</x> - <y>100</y> - <width>79</width> - <height>68</height> - </rect> - </property> - <vbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>AppLabel</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>TextLabel1</string> - </property> - </widget> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>FileLabel</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Filename</string> - </property> - <property stdset="1"> - <name>alignment</name> - <set>AlignTop|AlignLeft</set> - </property> - <property> - <name>vAlign</name> - </property> - </widget> - </vbox> - </widget> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>TextLabel1</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>30</x> - <y>30</y> - <width>161</width> - <height>41</height> - </rect> - </property> - <property stdset="1"> - <name>text</name> - <string>A file was beamed -to you.</string> - </property> - </widget> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>PixmapLabel</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>30</x> - <y>100</y> - <width>40</width> - <height>40</height> - </rect> - </property> - <property stdset="1"> - <name>scaledContents</name> - <bool>true</bool> - </property> - </widget> - <widget> - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout4</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>0</x> - <y>210</y> - <width>246</width> - <height>33</height> - </rect> - </property> - <hbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <spacer> - <property> - <name>name</name> - <cstring>Spacer9</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Horizontal</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - <widget> - <class>QPushButton</class> - <property stdset="1"> - <name>name</name> - <cstring>InsertButton</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Insert</string> - </property> - </widget> - <spacer> - <property> - <name>name</name> - <cstring>Spacer11</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Horizontal</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - <widget> - <class>QPushButton</class> - <property stdset="1"> - <name>name</name> - <cstring>RejectButton</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Reject</string> - </property> - </widget> - <spacer> - <property> - <name>name</name> - <cstring>Spacer10</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Horizontal</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </hbox> - </widget> -</widget> -</UI> diff --git a/core/applets/obex/processwrapper.cc b/core/applets/obex/processwrapper.cc deleted file mode 100755 index ebc7794..0000000 --- a/core/applets/obex/processwrapper.cc +++ b/dev/null @@ -1,114 +0,0 @@ -// -m_rec == KProcess -m_count = int // the number of tries to recieve -m_send == KProcess -m_file == QString filename to send -m_outp == the output of the process - -// - - -void receive() { - m_rec = new KProcess(); - *m_rec << "irobex_palm3"; - // connect to the necessary slots - connect(m_rec, SIGNAL(processExited(KProcess*) ), - this, SLOT(slotExited(KProcess*) ) ); - - connect(m_rec, SIGNAL(receivedStdout(KProcess*, char*, int ) ), - this, SLOT(slotStdOut(KProcess*, char*, int) ) ); - - if(!m_rec->start(KProcess::NotifyOnExit, KProcess::AllOutput) ) { - qWarning("could not start :("); - emit done( false ); - } - emit try(m_count ) -} -void send(const QString &fileName) { - m_count = 0; - m_file = fileName; - sendNow(); -} -void sendNow() { - if ( m_count >= 15 ) { // could not send - emit error(-1 ); - } - // KProcess inititialisation - m_send = new KProcess(); - m_send << "irobex_palm3"; - m_send << m_file; - - // connect to slots Exited and and StdOut - connect(m_send, SIGNAL(processExited(KProcess*) ), - this, SLOT(slotExited(KProcess*)) ); - connect(m_send, SIGNAL(receivedStdout(KProcess*, char*, int ) ) - this, SLOT(slotStdOut(KProcess*, char*, int) ) ); - // now start it - if (!m_send->start(/*KProcess::NotifyOnExit, KProcess::AllOutput*/ ) ) { - m_count = 15; - emit error(-1 ); - } - // end - m_count++; - emit try( m_count ); -} - -void recieved() { - if (m_rec->normalExit() ) { - if ( m_rec->exitStatus() == 0 ) { // we got one - QString filename = parseOut(); - emit recievedFile( filename ); - } - }else{ - emit error(-1); - }; - delete m_rec; -} - - -void slotExited(KProcess* proc) { - if (proc == m_rec ) { // recieve process - recieved(); - }else if ( proc == m_send ) { - send(); - } -} - - -void send() { - if (m_send->normalExit() ) { - if ( m_send->exitStatus() == 0 ) { - delete m_send; - m_send=0; - emit sent(); - }else if (m_send->exitStatus() == 255 ) { // it failed maybe the other side wasn't ready - // let's try it again - delete m_send; - m_send = 0; - sendNow(); - } - }else { - emit error( -1 ); - delete m_send; - m_send = 0; - } - -} -void parseOut() { - QStringList list = QStringList::split("\n", m_outp); - QStringList::Iterator it; - for (it = list.begin(); it != list.end(); ++it ) { - if ( (*it).startsWith("Wrote" ) ) { - QStringList pathes = QStringList::split(' ', (*it) ); - QString path = pathes[1]; - } - } -} - -void slotStdOut(KProcess* proc, char* buf, int len) { - if ( proc == m_rec ) { // only recieve - QCString cstring( buf, len ); - m_outp.append( cstring.data() ); - } - -} |