5 files changed, 43 insertions, 29 deletions
diff --git a/noncore/settings/networksettings2/networksettings2/system.cpp b/noncore/settings/networksettings2/networksettings2/system.cpp index 9512579..e642c08 100644 --- a/noncore/settings/networksettings2/networksettings2/system.cpp +++ b/noncore/settings/networksettings2/networksettings2/system.cpp | |||
@@ -43,8 +43,9 @@ static char Dig2Hex[] = { | |||
43 | // get LOW nibble of byte | 43 | // get LOW nibble of byte |
44 | #define LN(x) Dig2Hex[((x)&0x0f)] | 44 | #define LN(x) Dig2Hex[((x)&0x0f)] |
45 | 45 | ||
46 | System::System( void ) : QObject(), ProbedInterfaces() { | 46 | System::System( void ) : QObject(), ProbedInterfaces() { |
47 | ProcDevNet = 0; | ||
47 | } | 48 | } |
48 | 49 | ||
49 | System::~System( void ) { | 50 | System::~System( void ) { |
50 | if( ProcDevNet ) | 51 | if( ProcDevNet ) |
@@ -108,15 +109,15 @@ int System::runAsRoot( QStringList & S, MyProcess * Prc ) { | |||
108 | owarn << "Error starting " << S << oendl; | 109 | owarn << "Error starting " << S << oendl; |
109 | if( ! Prc ) | 110 | if( ! Prc ) |
110 | delete P; | 111 | delete P; |
111 | // error starting app | 112 | // error starting app |
112 | return 1; | 113 | return 0; |
113 | } | 114 | } |
114 | owarn << "Started " << S << oendl; | 115 | owarn << "Started " << S << oendl; |
115 | } | 116 | } |
116 | 117 | ||
117 | // all is fine | 118 | // all is fine |
118 | return 0; | 119 | return 1; |
119 | } | 120 | } |
120 | 121 | ||
121 | int System::execAsUser( QStringList & SL ) { | 122 | int System::execAsUser( QStringList & SL ) { |
122 | MyProcess * P = new MyProcess(); | 123 | MyProcess * P = new MyProcess(); |
@@ -160,9 +161,9 @@ int System::execAsUser( QStringList & SL ) { | |||
160 | // if we come here, the exec was not successfull | 161 | // if we come here, the exec was not successfull |
161 | Log(("Could not exec : %d\n", errno )); | 162 | Log(("Could not exec : %d\n", errno )); |
162 | } | 163 | } |
163 | 164 | ||
164 | return rv; | 165 | return ! rv; |
165 | } | 166 | } |
166 | 167 | ||
167 | void System::SLOT_ProcessExited( MyProcess * P ) { | 168 | void System::SLOT_ProcessExited( MyProcess * P ) { |
168 | QString R; | 169 | QString R; |
diff --git a/noncore/settings/networksettings2/opie-networksettings2.control b/noncore/settings/networksettings2/opie-networksettings2.control index e4bd29c..874833c 100644 --- a/noncore/settings/networksettings2/opie-networksettings2.control +++ b/noncore/settings/networksettings2/opie-networksettings2.control | |||
@@ -1,6 +1,6 @@ | |||
1 | Package: opie-networksettings2 | 1 | Package: opie-networksettings2 |
2 | Files: bin/networksettings2 apps/Settings/networksettings2.desktop pics/networksettings2/*.png lib/libnetworksettings2.so* pics/networksettings2/Devices/*.png | 2 | Files: bin/networksettings2 apps/Settings/networksettings2.desktop pics/networksettings2/*.png lib/libnetworksettings2.so* pics/networksettings2/Devices/*.png etc/NS2templates/* etc/NS2templates/*/* |
3 | Priority: optional | 3 | Priority: optional |
4 | Section: opie/settings | 4 | Section: opie/settings |
5 | Maintainer: wim delvaux <wimpie@handhelds.org> | 5 | Maintainer: wim delvaux <wimpie@handhelds.org> |
6 | Architecture: arm | 6 | Architecture: arm |
diff --git a/noncore/settings/networksettings2/opietooth2/OTSniffGUI.ui b/noncore/settings/networksettings2/opietooth2/OTSniffGUI.ui index 9ef540e..ec0b387 100644 --- a/noncore/settings/networksettings2/opietooth2/OTSniffGUI.ui +++ b/noncore/settings/networksettings2/opietooth2/OTSniffGUI.ui | |||
@@ -11,9 +11,9 @@ | |||
11 | <rect> | 11 | <rect> |
12 | <x>0</x> | 12 | <x>0</x> |
13 | <y>0</y> | 13 | <y>0</y> |
14 | <width>274</width> | 14 | <width>274</width> |
15 | <height>160</height> | 15 | <height>173</height> |
16 | </rect> | 16 | </rect> |
17 | </property> | 17 | </property> |
18 | <property stdset="1"> | 18 | <property stdset="1"> |
19 | <name>caption</name> | 19 | <name>caption</name> |
@@ -21,16 +21,19 @@ | |||
21 | </property> | 21 | </property> |
22 | <property> | 22 | <property> |
23 | <name>layoutMargin</name> | 23 | <name>layoutMargin</name> |
24 | </property> | 24 | </property> |
25 | <property> | ||
26 | <name>layoutSpacing</name> | ||
27 | </property> | ||
25 | <vbox> | 28 | <vbox> |
26 | <property stdset="1"> | 29 | <property stdset="1"> |
27 | <name>margin</name> | 30 | <name>margin</name> |
28 | <number>3</number> | 31 | <number>3</number> |
29 | </property> | 32 | </property> |
30 | <property stdset="1"> | 33 | <property stdset="1"> |
31 | <name>spacing</name> | 34 | <name>spacing</name> |
32 | <number>6</number> | 35 | <number>2</number> |
33 | </property> | 36 | </property> |
34 | <widget> | 37 | <widget> |
35 | <class>QLayoutWidget</class> | 38 | <class>QLayoutWidget</class> |
36 | <property stdset="1"> | 39 | <property stdset="1"> |
@@ -123,16 +126,12 @@ | |||
123 | </widget> | 126 | </widget> |
124 | </hbox> | 127 | </hbox> |
125 | </widget> | 128 | </widget> |
126 | <widget> | 129 | <widget> |
127 | <class>QListBox</class> | 130 | <class>QTextView</class> |
128 | <property stdset="1"> | 131 | <property stdset="1"> |
129 | <name>name</name> | 132 | <name>name</name> |
130 | <cstring>Output_LB</cstring> | 133 | <cstring>Output_TV</cstring> |
131 | </property> | ||
132 | <property stdset="1"> | ||
133 | <name>selectionMode</name> | ||
134 | <enum>NoSelection</enum> | ||
135 | </property> | 134 | </property> |
136 | </widget> | 135 | </widget> |
137 | <widget> | 136 | <widget> |
138 | <class>QLayoutWidget</class> | 137 | <class>QLayoutWidget</class> |
diff --git a/noncore/settings/networksettings2/opietooth2/Opietooth.cpp b/noncore/settings/networksettings2/opietooth2/Opietooth.cpp index 5a890da..b14cc2f 100644 --- a/noncore/settings/networksettings2/opietooth2/Opietooth.cpp +++ b/noncore/settings/networksettings2/opietooth2/Opietooth.cpp | |||
@@ -20,9 +20,11 @@ using namespace Opie::Ui; | |||
20 | #include <qlistview.h> | 20 | #include <qlistview.h> |
21 | #include <qmessagebox.h> | 21 | #include <qmessagebox.h> |
22 | #include <qprogressbar.h> | 22 | #include <qprogressbar.h> |
23 | #include <qpushbutton.h> | 23 | #include <qpushbutton.h> |
24 | #include <qscrollbar.h> | ||
24 | #include <qtextstream.h> | 25 | #include <qtextstream.h> |
26 | #include <qtextview.h> | ||
25 | 27 | ||
26 | #include <Opietooth.h> | 28 | #include <Opietooth.h> |
27 | #include <OTDriver.h> | 29 | #include <OTDriver.h> |
28 | #include <OTPeer.h> | 30 | #include <OTPeer.h> |
@@ -119,25 +121,29 @@ private : | |||
119 | OTSniffing::OTSniffing( QWidget * parent ) : OTSniffGUI( parent ) { | 121 | OTSniffing::OTSniffing( QWidget * parent ) : OTSniffGUI( parent ) { |
120 | 122 | ||
121 | OT = OTGateway::getOTGateway(); | 123 | OT = OTGateway::getOTGateway(); |
122 | HciDump = 0; | 124 | HciDump = 0; |
123 | Sys = new System(); | ||
124 | } | 125 | } |
125 | 126 | ||
126 | OTSniffing::~OTSniffing() { | 127 | OTSniffing::~OTSniffing() { |
127 | printf( "CLOSE \n" ); | 128 | SLOT_Trace( 0 ); |
128 | if ( HciDump ) { | ||
129 | HciDump->process().kill(); | ||
130 | delete HciDump; | ||
131 | } | ||
132 | delete Sys; | ||
133 | } | 129 | } |
134 | 130 | ||
135 | void OTSniffing::SLOT_Trace( bool ) { | 131 | void OTSniffing::SLOT_Trace( bool Run ) { |
132 | |||
133 | if( ! Run ) { | ||
134 | if ( HciDump ) { | ||
135 | HciDump->process().kill(); | ||
136 | delete HciDump; | ||
137 | } | ||
138 | HciDump = 0; | ||
139 | return; | ||
140 | } | ||
141 | |||
136 | HciDump = new MyProcess(); | 142 | HciDump = new MyProcess(); |
137 | QStringList SL; | 143 | QStringList SL; |
138 | 144 | ||
139 | SL << "hcidump"; | 145 | SL << "/usr/sbin/hcidump"; |
140 | switch( DataFormat_CB->currentItem() ) { | 146 | switch( DataFormat_CB->currentItem() ) { |
141 | case 0 : // Hex | 147 | case 0 : // Hex |
142 | SL << "-x"; | 148 | SL << "-x"; |
143 | break; | 149 | break; |
@@ -161,9 +167,13 @@ void OTSniffing::SLOT_Trace( bool ) { | |||
161 | SIGNAL(processExited(MyProcess*) ), | 167 | SIGNAL(processExited(MyProcess*) ), |
162 | this, | 168 | this, |
163 | SLOT( SLOT_ProcessExited(MyProcess*) ) ); | 169 | SLOT( SLOT_ProcessExited(MyProcess*) ) ); |
164 | 170 | ||
165 | if( ! Sys->runAsRoot( SL, HciDump ) ) { | 171 | HciDump->process() << SL; |
172 | |||
173 | if( ! HciDump->process().start( OProcess::DontCare, | ||
174 | OProcess::AllOutput ) | ||
175 | ) { | ||
166 | QMessageBox::warning(0, | 176 | QMessageBox::warning(0, |
167 | tr("Run hcidump"), | 177 | tr("Run hcidump"), |
168 | tr("Cannot start %1").arg(SL.join(" ")) | 178 | tr("Cannot start %1").arg(SL.join(" ")) |
169 | ); | 179 | ); |
@@ -174,11 +184,15 @@ void OTSniffing::SLOT_Trace( bool ) { | |||
174 | } | 184 | } |
175 | 185 | ||
176 | void OTSniffing::SLOT_Show( const QString & S ) { | 186 | void OTSniffing::SLOT_Show( const QString & S ) { |
177 | printf( "%s\n", S.latin1() ); | 187 | printf( "%s\n", S.latin1() ); |
178 | Output_LB->insertItem( S ); | 188 | Output_TV->setText( Output_TV->text() + S + "\n" ); |
179 | Output_LB->setCurrentItem( Output_LB->count()-1 ); | 189 | |
180 | Output_LB->ensureCurrentVisible(); | 190 | QScrollBar *scroll = Output_TV->verticalScrollBar(); |
191 | scroll->setValue(scroll->maxValue()); | ||
192 | //Output_LB->insertItem( S ); | ||
193 | //Output_LB->setCurrentItem( Output_LB->count()-1 ); | ||
194 | //Output_LB->ensureCurrentVisible(); | ||
181 | } | 195 | } |
182 | 196 | ||
183 | void OTSniffing::SLOT_ProcessExited( MyProcess * ) { | 197 | void OTSniffing::SLOT_ProcessExited( MyProcess * ) { |
184 | printf( "Exited\n" ); | 198 | printf( "Exited\n" ); |
@@ -227,14 +241,16 @@ void OTSniffing::SLOT_Load( void ) { | |||
227 | } | 241 | } |
228 | QTextStream TS ( &F ); | 242 | QTextStream TS ( &F ); |
229 | SLOT_ClearLog(); | 243 | SLOT_ClearLog(); |
230 | S = TS.read(); | 244 | S = TS.read(); |
231 | Output_LB->insertStringList( QStringList::split( "\n", S ) ); | 245 | // Output_LB->insertStringList( QStringList::split( "\n", S ) ); |
246 | Output_TV->setText( S ); | ||
232 | } | 247 | } |
233 | } | 248 | } |
234 | 249 | ||
235 | void OTSniffing::SLOT_ClearLog( void ) { | 250 | void OTSniffing::SLOT_ClearLog( void ) { |
236 | Output_LB->clear(); | 251 | // Output_LB->clear(); |
252 | Output_TV->setText( "" ); | ||
237 | } | 253 | } |
238 | 254 | ||
239 | // | 255 | // |
240 | // | 256 | // |
diff --git a/noncore/settings/networksettings2/opietooth2/Opietooth.h b/noncore/settings/networksettings2/opietooth2/Opietooth.h index 2b20975..e66787f 100644 --- a/noncore/settings/networksettings2/opietooth2/Opietooth.h +++ b/noncore/settings/networksettings2/opietooth2/Opietooth.h | |||
@@ -3,9 +3,8 @@ | |||
3 | 3 | ||
4 | #include <OTIcons.h> | 4 | #include <OTIcons.h> |
5 | 5 | ||
6 | class MyProcess; | 6 | class MyProcess; |
7 | class System; | ||
8 | 7 | ||
9 | namespace Opie { | 8 | namespace Opie { |
10 | 9 | ||
11 | namespace Ui { | 10 | namespace Ui { |
@@ -50,9 +49,8 @@ protected : | |||
50 | private : | 49 | private : |
51 | 50 | ||
52 | OTGateway * OT; | 51 | OTGateway * OT; |
53 | MyProcess * HciDump; | 52 | MyProcess * HciDump; |
54 | System * Sys; | ||
55 | }; | 53 | }; |
56 | }; | 54 | }; |
57 | 55 | ||
58 | #include <OTPairingGUI.h> | 56 | #include <OTPairingGUI.h> |