summaryrefslogtreecommitdiff
authorkorovkin <korovkin>2006-04-05 19:29:19 (UTC)
committer korovkin <korovkin>2006-04-05 19:29:19 (UTC)
commit6c1c44237a16dc8fed89905ae729e36eb9711c07 (patch) (unidiff)
treecfcb46f571669c0d8e57ee703c712b09ed8af185
parent31ea6e9f697d72a31ce319f7f42254fe90e48a36 (diff)
downloadopie-6c1c44237a16dc8fed89905ae729e36eb9711c07.zip
opie-6c1c44237a16dc8fed89905ae729e36eb9711c07.tar.gz
opie-6c1c44237a16dc8fed89905ae729e36eb9711c07.tar.bz2
Added combobox with ppp script names from /etc/ppp/peers.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opietooth/manager/dundialog.cpp15
-rw-r--r--noncore/net/opietooth/manager/dundialog.h3
-rw-r--r--noncore/net/opietooth/manager/pppdialog.cpp28
-rw-r--r--noncore/net/opietooth/manager/pppdialog.h12
4 files changed, 47 insertions, 11 deletions
diff --git a/noncore/net/opietooth/manager/dundialog.cpp b/noncore/net/opietooth/manager/dundialog.cpp
index c6d8619..872ab00 100644
--- a/noncore/net/opietooth/manager/dundialog.cpp
+++ b/noncore/net/opietooth/manager/dundialog.cpp
@@ -13,23 +13,29 @@
13#include <qmultilineedit.h> 13#include <qmultilineedit.h>
14#include <qlineedit.h> 14#include <qlineedit.h>
15#include <qlayout.h> 15#include <qlayout.h>
16#include <qcheckbox.h> 16#include <qcheckbox.h>
17#include <qlabel.h> 17#include <qlabel.h>
18#include <qstring.h> 18#include <qstring.h>
19#include <qcombobox.h>
20#include <qdir.h>
19#include <opie2/oprocess.h> 21#include <opie2/oprocess.h>
20#include <opie2/odebug.h> 22#include <opie2/odebug.h>
21using namespace Opie::Core; 23using namespace Opie::Core;
22 24
23using namespace OpieTooth; 25using namespace OpieTooth;
24 26
25using namespace Opie::Core; 27using namespace Opie::Core;
26 28
27DunDialog::DunDialog( const QString& device, int port, QWidget* parent, 29DunDialog::DunDialog( const QString& device, int port, QWidget* parent,
28 const char* name, bool modal, WFlags fl ) 30 const char* name, bool modal, WFlags fl )
29 : QDialog( parent, name, modal, fl ) { 31 : QDialog( parent, name, modal, fl ) {
32 QDir d("/etc/ppp/peers/"); //Dir we search files in
33 d.setFilter( QDir::Files);
34 d.setSorting( QDir::Size | QDir::Reversed );
35
30 if ( !name ) 36 if ( !name )
31 setName( "DUNDialog" ); 37 setName( "DUNDialog" );
32 setCaption( tr( "DUN connection " ) ) ; 38 setCaption( tr( "DUN connection " ) ) ;
33 39
34 m_device = device; 40 m_device = device;
35 m_port = port; 41 m_port = port;
@@ -37,13 +43,14 @@ DunDialog::DunDialog( const QString& device, int port, QWidget* parent,
37 m_dunConnect = NULL; 43 m_dunConnect = NULL;
38 layout = new QVBoxLayout( this ); 44 layout = new QVBoxLayout( this );
39 45
40 QLabel* info = new QLabel( this ); 46 QLabel* info = new QLabel( this );
41 info->setText( tr("Enter an ppp script name:") ); 47 info->setText( tr("Enter an ppp script name:") );
42 48
43 cmdLine = new QLineEdit( this ); 49 cmdLine = new QComboBox( this );
50 cmdLine->setEditable(true);
44 51
45 outPut = new QMultiLineEdit( this ); 52 outPut = new QMultiLineEdit( this );
46 QFont outPut_font( outPut->font() ); 53 QFont outPut_font( outPut->font() );
47 outPut_font.setPointSize( 8 ); 54 outPut_font.setPointSize( 8 );
48 outPut->setFont( outPut_font ); 55 outPut->setFont( outPut_font );
49 outPut->setWordWrap( QMultiLineEdit::WidgetWidth ); 56 outPut->setWordWrap( QMultiLineEdit::WidgetWidth );
@@ -62,22 +69,24 @@ DunDialog::DunDialog( const QString& device, int port, QWidget* parent,
62 layout->addWidget(doEncryption); 69 layout->addWidget(doEncryption);
63 layout->addWidget(persist); 70 layout->addWidget(persist);
64 layout->addWidget(outPut); 71 layout->addWidget(outPut);
65 layout->addWidget(connectButton); 72 layout->addWidget(connectButton);
66 73
67 connect( connectButton, SIGNAL( clicked() ), this, SLOT( connectToDevice() ) ); 74 connect( connectButton, SIGNAL( clicked() ), this, SLOT( connectToDevice() ) );
75 //And fill cmdLine with ppp script filenames
76 cmdLine->insertStringList(d.entryList());
68} 77}
69 78
70DunDialog::~DunDialog() { 79DunDialog::~DunDialog() {
71} 80}
72 81
73void DunDialog::connectToDevice() { 82void DunDialog::connectToDevice() {
74 bool doEnc = doEncryption->isChecked(); 83 bool doEnc = doEncryption->isChecked();
75 bool doPersist = persist->isChecked(); 84 bool doPersist = persist->isChecked();
76 85
77 if (cmdLine->text() == "") 86 if (cmdLine->currentText() == "")
78 return; 87 return;
79 if (m_dunConnect) { 88 if (m_dunConnect) {
80 outPut->append(tr("Work in progress")); 89 outPut->append(tr("Work in progress"));
81 return; 90 return;
82 } 91 }
83 m_dunConnect = new OProcess(); 92 m_dunConnect = new OProcess();
@@ -90,13 +99,13 @@ void DunDialog::connectToDevice() {
90 << tr("--nodetach"); 99 << tr("--nodetach");
91 if (doEnc) 100 if (doEnc)
92 *m_dunConnect << tr("--encrypt"); 101 *m_dunConnect << tr("--encrypt");
93 if (doPersist) 102 if (doPersist)
94 *m_dunConnect << tr("--persist"); 103 *m_dunConnect << tr("--persist");
95 *m_dunConnect << tr("call") 104 *m_dunConnect << tr("call")
96 << cmdLine->text(); 105 << cmdLine->currentText();
97 if (!m_dunConnect->start(OProcess::NotifyOnExit, 106 if (!m_dunConnect->start(OProcess::NotifyOnExit,
98 OProcess::All)) { 107 OProcess::All)) {
99 outPut->append(tr("Couldn't start")); 108 outPut->append(tr("Couldn't start"));
100 delete m_dunConnect; 109 delete m_dunConnect;
101 m_dunConnect = NULL; 110 m_dunConnect = NULL;
102 } 111 }
diff --git a/noncore/net/opietooth/manager/dundialog.h b/noncore/net/opietooth/manager/dundialog.h
index a0d16ad..8310e40 100644
--- a/noncore/net/opietooth/manager/dundialog.h
+++ b/noncore/net/opietooth/manager/dundialog.h
@@ -17,12 +17,13 @@
17 17
18class QVBoxLayout; 18class QVBoxLayout;
19class QPushButton; 19class QPushButton;
20class QMultiLineEdit; 20class QMultiLineEdit;
21class QLineEdit; 21class QLineEdit;
22class QCheckBox; 22class QCheckBox;
23class QComboBox;
23 24
24namespace OpieTooth { 25namespace OpieTooth {
25 class DunDialog : public QDialog { 26 class DunDialog : public QDialog {
26 27
27 Q_OBJECT 28 Q_OBJECT
28 29
@@ -35,13 +36,13 @@ namespace OpieTooth {
35 void fillOutPut( Opie::Core::OProcess* pppDial, char* cha, int len ); 36 void fillOutPut( Opie::Core::OProcess* pppDial, char* cha, int len );
36 void fillErr(Opie::Core::OProcess*, char*, int); 37 void fillErr(Opie::Core::OProcess*, char*, int);
37 void slotProcessExited(Opie::Core::OProcess* proc); 38 void slotProcessExited(Opie::Core::OProcess* proc);
38 void closeEvent(QCloseEvent* e); 39 void closeEvent(QCloseEvent* e);
39 protected: 40 protected:
40 QVBoxLayout* layout; 41 QVBoxLayout* layout;
41 QLineEdit* cmdLine; 42 QComboBox* cmdLine;
42 QPushButton* connectButton; 43 QPushButton* connectButton;
43 QMultiLineEdit* outPut; 44 QMultiLineEdit* outPut;
44 QCheckBox* doEncryption; 45 QCheckBox* doEncryption;
45 QCheckBox* persist; 46 QCheckBox* persist;
46 47
47 private: 48 private:
diff --git a/noncore/net/opietooth/manager/pppdialog.cpp b/noncore/net/opietooth/manager/pppdialog.cpp
index 11091c4..1df22a1 100644
--- a/noncore/net/opietooth/manager/pppdialog.cpp
+++ b/noncore/net/opietooth/manager/pppdialog.cpp
@@ -1,15 +1,25 @@
1 1/* $Id$ */
2/* PPP/rfcomm connection dialog */
3/***************************************************************************
4 * *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
9 * *
10 ***************************************************************************/
2#include "pppdialog.h" 11#include "pppdialog.h"
3#include "rfcommhelper.h" 12#include "rfcommhelper.h"
4#include <qpushbutton.h> 13#include <qpushbutton.h>
5#include <qmultilineedit.h> 14#include <qmultilineedit.h>
6#include <qlineedit.h> 15#include <qlineedit.h>
7#include <qlayout.h> 16#include <qlayout.h>
8#include <qcombobox.h> 17#include <qcombobox.h>
9#include <qlabel.h> 18#include <qlabel.h>
19#include <qdir.h>
10#include <opie2/oprocess.h> 20#include <opie2/oprocess.h>
11#include <opie2/odebug.h> 21#include <opie2/odebug.h>
12using namespace Opie::Core; 22using namespace Opie::Core;
13 23
14using namespace OpieTooth; 24using namespace OpieTooth;
15 25
@@ -18,26 +28,30 @@ using namespace Opie::Core;
18Connection PPPDialog::conns[NCONNECTS]; 28Connection PPPDialog::conns[NCONNECTS];
19 29
20PPPDialog::PPPDialog( const QString& device, int port, QWidget* parent, 30PPPDialog::PPPDialog( const QString& device, int port, QWidget* parent,
21 const char* name, bool modal, WFlags fl ) 31 const char* name, bool modal, WFlags fl )
22 : QDialog( parent, name, modal, fl ) { 32 : QDialog( parent, name, modal, fl ) {
23 int i; //Just an index variable 33 int i; //Just an index variable
24 34 QDir d("/etc/ppp/peers/"); //Dir we search files in
35 d.setFilter( QDir::Files);
36 d.setSorting( QDir::Size | QDir::Reversed );
37
25 if ( !name ) 38 if ( !name )
26 setName( "PPPDialog" ); 39 setName( "PPPDialog" );
27 setCaption( tr( "ppp connection " ) ) ; 40 setCaption( tr( "ppp connection " ) ) ;
28 41
29 m_device = device; 42 m_device = device;
30 m_port = port; 43 m_port = port;
31 44
32 layout = new QVBoxLayout( this ); 45 layout = new QVBoxLayout( this );
33 46
34 QLabel* info = new QLabel( this ); 47 QLabel* info = new QLabel( this );
35 info->setText( tr("Enter an ppp script name:") ); 48 info->setText( tr("Enter a ppp script name:") );
36 49
37 cmdLine = new QLineEdit( this ); 50 cmdLine = new QComboBox( this );
51 cmdLine->setEditable(true);
38 52
39 outPut = new QMultiLineEdit( this ); 53 outPut = new QMultiLineEdit( this );
40 QFont outPut_font( outPut->font() ); 54 QFont outPut_font( outPut->font() );
41 outPut_font.setPointSize( 8 ); 55 outPut_font.setPointSize( 8 );
42 outPut->setFont( outPut_font ); 56 outPut->setFont( outPut_font );
43 outPut->setWordWrap( QMultiLineEdit::WidgetWidth ); 57 outPut->setWordWrap( QMultiLineEdit::WidgetWidth );
@@ -55,12 +69,14 @@ PPPDialog::PPPDialog( const QString& device, int port, QWidget* parent,
55 layout->addWidget(cmdLine); 69 layout->addWidget(cmdLine);
56 layout->addWidget(serPort); 70 layout->addWidget(serPort);
57 layout->addWidget(outPut); 71 layout->addWidget(outPut);
58 layout->addWidget(connectButton); 72 layout->addWidget(connectButton);
59 73
60 connect( connectButton, SIGNAL( clicked() ), this, SLOT( connectToDevice() ) ); 74 connect( connectButton, SIGNAL( clicked() ), this, SLOT( connectToDevice() ) );
75 //And fill cmdLine with ppp script filenames
76 cmdLine->insertStringList(d.entryList());
61} 77}
62 78
63PPPDialog::~PPPDialog() { 79PPPDialog::~PPPDialog() {
64} 80}
65 81
66void PPPDialog::connectToDevice() { 82void PPPDialog::connectToDevice() {
@@ -69,21 +85,21 @@ void PPPDialog::connectToDevice() {
69 outPut->append(tr("Work in progress")); 85 outPut->append(tr("Work in progress"));
70 return; 86 return;
71 } 87 }
72 outPut->clear(); 88 outPut->clear();
73 PPPDialog::conns[portNum].proc.clearArguments(); 89 PPPDialog::conns[portNum].proc.clearArguments();
74 // vom popupmenu beziehen 90 // vom popupmenu beziehen
75 if (cmdLine->text().isEmpty()) {//Connect by rfcomm 91 if (cmdLine->currentText().isEmpty()) {//Connect by rfcomm
76 PPPDialog::conns[portNum].proc << "rfcomm" << "connect" 92 PPPDialog::conns[portNum].proc << "rfcomm" << "connect"
77 << QString::number(portNum) << m_device << QString::number(m_port); 93 << QString::number(portNum) << m_device << QString::number(m_port);
78 } 94 }
79 else { 95 else {
80 PPPDialog::conns[portNum].proc << "pppd" 96 PPPDialog::conns[portNum].proc << "pppd"
81 << tr("/dev/bluetooth/rfcomm/%1").arg(portNum) 97 << tr("/dev/bluetooth/rfcomm/%1").arg(portNum)
82 << "call" 98 << "call"
83 << cmdLine->text(); 99 << cmdLine->currentText();
84 } 100 }
85 if (!PPPDialog::conns[portNum].proc.start(OProcess::NotifyOnExit, 101 if (!PPPDialog::conns[portNum].proc.start(OProcess::NotifyOnExit,
86 OProcess::All)) { 102 OProcess::All)) {
87 outPut->append(tr("Couldn't start")); 103 outPut->append(tr("Couldn't start"));
88 } 104 }
89 else 105 else
diff --git a/noncore/net/opietooth/manager/pppdialog.h b/noncore/net/opietooth/manager/pppdialog.h
index e0ffc7f..d55c15f 100644
--- a/noncore/net/opietooth/manager/pppdialog.h
+++ b/noncore/net/opietooth/manager/pppdialog.h
@@ -1,6 +1,16 @@
1/* $Id$ */
2/* PPP/rfcomm connection dialog */
3/***************************************************************************
4 * *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
9 * *
10 ***************************************************************************/
1#ifndef PPPDIALOG_H 11#ifndef PPPDIALOG_H
2#define PPPDIALOG_H 12#define PPPDIALOG_H
3 13
4 14
5#include <qdialog.h> 15#include <qdialog.h>
6#include <opie2/oprocess.h> 16#include <opie2/oprocess.h>
@@ -35,13 +45,13 @@ namespace OpieTooth {
35 void closeEvent(QCloseEvent* e); 45 void closeEvent(QCloseEvent* e);
36 public: 46 public:
37 //Array of connections indexed by rfcomm device number 47 //Array of connections indexed by rfcomm device number
38 static Connection conns[NCONNECTS]; 48 static Connection conns[NCONNECTS];
39 protected: 49 protected:
40 QVBoxLayout* layout; 50 QVBoxLayout* layout;
41 QLineEdit* cmdLine; 51 QComboBox* cmdLine;
42 QPushButton* connectButton; 52 QPushButton* connectButton;
43 QMultiLineEdit* outPut; 53 QMultiLineEdit* outPut;
44 QComboBox* serPort; 54 QComboBox* serPort;
45 55
46 private: 56 private:
47 QString m_device; 57 QString m_device;