summaryrefslogtreecommitdiff
path: root/noncore/settings/sysinfo/modulesinfo.cpp
Unidiff
Diffstat (limited to 'noncore/settings/sysinfo/modulesinfo.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/sysinfo/modulesinfo.cpp88
1 files changed, 45 insertions, 43 deletions
diff --git a/noncore/settings/sysinfo/modulesinfo.cpp b/noncore/settings/sysinfo/modulesinfo.cpp
index 566b179..9cb8ad2 100644
--- a/noncore/settings/sysinfo/modulesinfo.cpp
+++ b/noncore/settings/sysinfo/modulesinfo.cpp
@@ -21,4 +21,9 @@
21 21
22#include "modulesinfo.h"
23#include "detail.h"
24
25/* OPIE */
22#include <qpe/qpeapplication.h> 26#include <qpe/qpeapplication.h>
23 27
28/* QT */
24#include <qfile.h> 29#include <qfile.h>
@@ -29,7 +34,4 @@
29 34
30#include "modulesinfo.h"
31#include "detail.h"
32
33ModulesInfo::ModulesInfo( QWidget* parent, const char* name, WFlags fl ) 35ModulesInfo::ModulesInfo( QWidget* parent, const char* name, WFlags fl )
34 : QWidget( parent, name, fl ) 36 : QWidget( parent, name, fl )
35{ 37{
@@ -49,10 +51,10 @@ ModulesInfo::ModulesInfo( QWidget* parent, const char* name, WFlags fl )
49 QWhatsThis::add( ModulesView, tr( "This is a list of all the kernel modules currently loaded on this handheld device.\n\nClick and hold on a module to see additional information about the module, or to unload it." ) ); 51 QWhatsThis::add( ModulesView, tr( "This is a list of all the kernel modules currently loaded on this handheld device.\n\nClick and hold on a module to see additional information about the module, or to unload it." ) );
50 52
51 // Test if we have /sbin/modinfo, and if so, allow module detail window 53 // Test if we have /sbin/modinfo, and if so, allow module detail window
52 if ( QFile::exists( "/sbin/modinfo" ) ) 54 if ( QFile::exists( "/sbin/modinfo" ) )
53 { 55 {
54 QPEApplication::setStylusOperation( ModulesView->viewport(), QPEApplication::RightOnHold ); 56 QPEApplication::setStylusOperation( ModulesView->viewport(), QPEApplication::RightOnHold );
55 connect( ModulesView, SIGNAL( rightButtonPressed( QListViewItem *, const QPoint &, int ) ), 57 connect( ModulesView, SIGNAL( rightButtonPressed( QListViewItem *, const QPoint &, int ) ),
56 this, SLOT( viewModules( QListViewItem * ) ) ); 58 this, SLOT( viewModules( QListViewItem * ) ) );
57 } 59 }
58 60
@@ -76,6 +78,6 @@ ModulesInfo::ModulesInfo( QWidget* parent, const char* name, WFlags fl )
76 t->start( 5000 ); 78 t->start( 5000 );
77 79
78 updateData(); 80 updateData();
79 81
80 ModulesDtl = new Detail(); 82 ModulesDtl = new Detail();
81 QWhatsThis::add( ModulesDtl->detailView, tr( "This area shows detailed information about this module." ) ); 83 QWhatsThis::add( ModulesDtl->detailView, tr( "This area shows detailed information about this module." ) );
@@ -84,4 +86,3 @@ ModulesInfo::ModulesInfo( QWidget* parent, const char* name, WFlags fl )
84ModulesInfo::~ModulesInfo() 86ModulesInfo::~ModulesInfo()
85{ 87{}
86}
87 88
@@ -99,3 +100,3 @@ void ModulesInfo::updateData()
99 } 100 }
100 101
101 ModulesView->clear(); 102 ModulesView->clear();
@@ -108,3 +109,4 @@ void ModulesInfo::updateData()
108 QListViewItem *selecteditem = 0x0; 109 QListViewItem *selecteditem = 0x0;
109 while ( true ) { 110 while ( true )
111 {
110 modname[0] = '\0'; 112 modname[0] = '\0';
@@ -135,18 +137,18 @@ void ModulesInfo::slotSendClicked()
135{ 137{
136 if ( !ModulesView->currentItem() ) 138 if ( !ModulesView->currentItem() )
137 { 139 {
138 return; 140 return;
139 } 141 }
140 142
141 QString capstr = tr( "You really want to execute %1 for this module?" ).arg( CommandCB->currentText() ); 143 QString capstr = tr( "You really want to execute %1 for this module?" ).arg( CommandCB->currentText() );
142 144
143 QString modname = ModulesView->currentItem()->text( 0 ); 145 QString modname = ModulesView->currentItem()->text( 0 );
144 146
145 if ( QMessageBox::warning( this, modname, capstr, 147 if ( QMessageBox::warning( this, modname, capstr,
146 QMessageBox::Yes | QMessageBox::Default, QMessageBox::No | QMessageBox::Escape ) == QMessageBox::Yes ) 148 QMessageBox::Yes | QMessageBox::Default, QMessageBox::No | QMessageBox::Escape ) == QMessageBox::Yes )
147 { 149 {
148 QString command = "/sbin/"; 150 QString command = "/sbin/";
149 command.append( CommandCB->currentText() ); 151 command.append( CommandCB->currentText() );
150 command.append( " " ); 152 command.append( " " );
151 command.append( modname ); 153 command.append( modname );
152 154
@@ -161,10 +163,10 @@ void ModulesInfo::viewModules( QListViewItem *modules )
161{ 163{
162 QString modname = modules->text( 0 ); 164 QString modname = modules->text( 0 );
163 QString capstr = "Module: "; 165 QString capstr = "Module: ";
164 capstr.append( modname ); 166 capstr.append( modname );
165 ModulesDtl->setCaption( capstr ); 167 ModulesDtl->setCaption( capstr );
166 QString command = "/sbin/modinfo "; 168 QString command = "/sbin/modinfo ";
167 command.append( modname ); 169 command.append( modname );
168 FILE* modinfo = popen( command, "r" ); 170 FILE* modinfo = popen( command, "r" );
169 171
170 if ( modinfo ) 172 if ( modinfo )
@@ -173,11 +175,11 @@ void ModulesInfo::viewModules( QListViewItem *modules )
173 ModulesDtl->detailView->setText( " Details:\n------------\n" ); 175 ModulesDtl->detailView->setText( " Details:\n------------\n" );
174 176
175 while( true ) 177 while( true )
176 { 178 {
177 int success = fscanf( modinfo, "%[^\n]\n", line ); 179 int success = fscanf( modinfo, "%[^\n]\n", line );
178 if ( success == EOF ) 180 if ( success == EOF )
179 break; 181 break;
180 ModulesDtl->detailView->append( line ); 182 ModulesDtl->detailView->append( line );
181 } 183 }
182 184
183 pclose( modinfo ); 185 pclose( modinfo );
@@ -185,3 +187,3 @@ void ModulesInfo::viewModules( QListViewItem *modules )
185 187
186 ModulesDtl->showMaximized(); 188 QPEApplication::showWidget( ModulesDtl );
187} 189}