summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/sysinfo/processinfo.cpp9
-rw-r--r--noncore/settings/sysinfo/processinfo.h2
2 files changed, 7 insertions, 4 deletions
diff --git a/noncore/settings/sysinfo/processinfo.cpp b/noncore/settings/sysinfo/processinfo.cpp
index ad81d7b..0512141 100644
--- a/noncore/settings/sysinfo/processinfo.cpp
+++ b/noncore/settings/sysinfo/processinfo.cpp
@@ -12,16 +12,18 @@
12** Foundation and appearing in the file LICENSE.GPL included in the 12** Foundation and appearing in the file LICENSE.GPL included in the
13** packaging of this file. 13** packaging of this file.
14** 14**
15** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 15** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
16** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 16** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17** 17**
18**********************************************************************/ 18**********************************************************************/
19 19
20#include <qpe/qpeapplication.h>
21
20#include <qheader.h> 22#include <qheader.h>
21#include <qlistview.h> 23#include <qlistview.h>
22#include <qlayout.h> 24#include <qlayout.h>
23#include <qtimer.h> 25#include <qtimer.h>
24#include <qfile.h> 26#include <qfile.h>
25#include <qdir.h> 27#include <qdir.h>
26 28
27#include "processinfo.h" 29#include "processinfo.h"
@@ -34,17 +36,19 @@ ProcessInfo::ProcessInfo( QWidget* parent, const char* name, WFlags fl )
34 ProcessView = new QListView( this, "ProcessView" ); 36 ProcessView = new QListView( this, "ProcessView" );
35 int colnum = ProcessView->addColumn( tr( "PID" ) ); 37 int colnum = ProcessView->addColumn( tr( "PID" ) );
36 ProcessView->setColumnAlignment( colnum, Qt::AlignRight ); 38 ProcessView->setColumnAlignment( colnum, Qt::AlignRight );
37 colnum = ProcessView->addColumn( tr( "Command" ),96 ); 39 colnum = ProcessView->addColumn( tr( "Command" ),96 );
38 colnum = ProcessView->addColumn( tr( "Status" ) ); 40 colnum = ProcessView->addColumn( tr( "Status" ) );
39 colnum = ProcessView->addColumn( tr( "Time" ) ); 41 colnum = ProcessView->addColumn( tr( "Time" ) );
40 ProcessView->setColumnAlignment( colnum, Qt::AlignRight ); 42 ProcessView->setColumnAlignment( colnum, Qt::AlignRight );
41 ProcessView->setAllColumnsShowFocus( TRUE ); 43 ProcessView->setAllColumnsShowFocus( TRUE );
42 connect( ProcessView, SIGNAL( doubleClicked(QListViewItem *) ), this, SLOT( viewProcess(QListViewItem *) ) ); 44 QPEApplication::setStylusOperation( ProcessView->viewport(), QPEApplication::RightOnHold );
45 connect( ProcessView, SIGNAL( rightButtonPressed( QListViewItem *, const QPoint &, int ) ),
46 this, SLOT( viewProcess( QListViewItem * ) ) );
43 47
44 layout->addWidget( ProcessView ); 48 layout->addWidget( ProcessView );
45 49
46 QTimer *t = new QTimer( this ); 50 QTimer *t = new QTimer( this );
47 connect( t, SIGNAL( timeout() ), this, SLOT( updateData() ) ); 51 connect( t, SIGNAL( timeout() ), this, SLOT( updateData() ) );
48 t->start( 5000 ); 52 t->start( 5000 );
49 53
50 updateData(); 54 updateData();
@@ -102,17 +106,17 @@ void ProcessInfo::updateData()
102 } 106 }
103 } 107 }
104 } 108 }
105 109
106 delete proclist; 110 delete proclist;
107 delete procdir; 111 delete procdir;
108} 112}
109 113
110void ProcessInfo::viewProcess(QListViewItem *process) 114void ProcessInfo::viewProcess( QListViewItem *process )
111{ 115{
112 QString pid= process->text( 0 ).stripWhiteSpace(); 116 QString pid= process->text( 0 ).stripWhiteSpace();
113 QString command = process->text( 1 ); 117 QString command = process->text( 1 );
114 ProcessDtl->setCaption( pid + " - " + command ); 118 ProcessDtl->setCaption( pid + " - " + command );
115 ProcessDtl->pid = pid.toUInt(); 119 ProcessDtl->pid = pid.toUInt();
116 FILE *statfile = fopen( ( QString ) ( "/proc/" + pid + "/status"), "r"); 120 FILE *statfile = fopen( ( QString ) ( "/proc/" + pid + "/status"), "r");
117 if ( statfile ) 121 if ( statfile )
118 { 122 {
@@ -120,11 +124,10 @@ void ProcessInfo::viewProcess(QListViewItem *process)
120 fgets( line, 81, statfile ); 124 fgets( line, 81, statfile );
121 ProcessDtl->ProcessView->setText( line ); 125 ProcessDtl->ProcessView->setText( line );
122 while ( fgets( line, 81, statfile ) ) 126 while ( fgets( line, 81, statfile ) )
123 { 127 {
124 ProcessDtl->ProcessView->append( line ); 128 ProcessDtl->ProcessView->append( line );
125 } 129 }
126 fclose( statfile ); 130 fclose( statfile );
127 } 131 }
128
129 ProcessDtl->showMaximized(); 132 ProcessDtl->showMaximized();
130} 133}
diff --git a/noncore/settings/sysinfo/processinfo.h b/noncore/settings/sysinfo/processinfo.h
index 89d1a93..24b190e 100644
--- a/noncore/settings/sysinfo/processinfo.h
+++ b/noncore/settings/sysinfo/processinfo.h
@@ -29,16 +29,16 @@ class ProcessInfo : public QWidget
29{ 29{
30 Q_OBJECT 30 Q_OBJECT
31public: 31public:
32 ProcessInfo( QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); 32 ProcessInfo( QWidget *parent = 0, const char *name = 0, WFlags f = 0 );
33 ~ProcessInfo(); 33 ~ProcessInfo();
34 34
35private slots: 35private slots:
36 void updateData(); 36 void updateData();
37 void viewProcess(QListViewItem *); 37 void viewProcess( QListViewItem * );
38 38
39private: 39private:
40 QListView* ProcessView; 40 QListView* ProcessView;
41 ProcessDetail *ProcessDtl; 41 ProcessDetail *ProcessDtl;
42}; 42};
43 43
44#endif 44#endif