Diffstat (limited to 'noncore/settings/sysinfo/processinfo.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/settings/sysinfo/processinfo.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/noncore/settings/sysinfo/processinfo.cpp b/noncore/settings/sysinfo/processinfo.cpp index 769410f..2232771 100644 --- a/noncore/settings/sysinfo/processinfo.cpp +++ b/noncore/settings/sysinfo/processinfo.cpp @@ -101,8 +101,17 @@ void ProcessInfo::updateData() char state; char comm[64]; + QString selectedpid; + QListViewItem *curritem = ProcessView->currentItem(); + if ( curritem ) + { + selectedpid = curritem->text( 0 ); + } + ProcessView->clear(); + QListViewItem *newitem; + QListViewItem *selecteditem = 0x0; QDir *procdir = new QDir("/proc", 0, QDir::Name, QDir::Dirs); QFileInfoList *proclist = new QFileInfoList(*(procdir->entryInfoList())); if ( proclist ) @@ -132,10 +141,15 @@ void ProcessInfo::updateData() processtime = processtime.rightJustify( 9, ' ' ); fclose( procfile ); - ( void ) new QListViewItem( ProcessView, processnum, processcmd, processstatus, processtime ); + newitem = new QListViewItem( ProcessView, processnum, processcmd, processstatus, processtime ); + if ( processnum == selectedpid ) + { + selecteditem = newitem; + } } } } + ProcessView->setCurrentItem( selecteditem ); } delete proclist; |