[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace/ksysguard/gui
From: John Tapsell <john.tapsell () kdemail ! net>
Date: 2009-01-31 7:08:34
Message-ID: 1233385714.744112.30713.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 918970 by johnflux:
Add a globally accessible pointer to the local process table.
This allows us to access the process table from elsewhere.
A ProcessTable.h [License: GPL (v2/3)]
M +2 -3 SensorDisplayLib/ProcessController.cc
M +1 -1 SensorDisplayLib/ProcessController.h
M +1 -1 SensorDisplayLib/SensorDisplay.cc
M +6 -16 WorkSheet.cc
M +0 -4 WorkSheet.h
M +7 -7 ksysguard.cc
--- trunk/KDE/kdebase/workspace/ksysguard/gui/SensorDisplayLib/ProcessController.cc \
#918969:918970 @@ -36,8 +36,8 @@
#ifdef DO_MODELCHECK
#include "modeltest.h"
#endif
-ProcessController::ProcessController(QWidget* parent, const QString &title, \
SharedSettings *workSheetSettings)
- : KSGRD::SensorDisplay(parent, title, workSheetSettings)
+ProcessController::ProcessController(QWidget* parent)
+ : KSGRD::SensorDisplay(parent, QString::null, NULL)
{
mProcessList = NULL;
mProcesses = NULL;
@@ -136,7 +136,6 @@
QStackedLayout *layout = new QStackedLayout(this);
mProcessList = new KSysGuardProcessList(this, hostName);
mProcessList->setContentsMargins(0,0,0,0);
- kDebug() << "Number of Actions: " << mProcessList->actions().size();
addActions(mProcessList->actions());
layout->addWidget(mProcessList);
--- trunk/KDE/kdebase/workspace/ksysguard/gui/SensorDisplayLib/ProcessController.h \
#918969:918970 @@ -52,7 +52,7 @@
Q_OBJECT
public:
- ProcessController(QWidget* parent, const QString& title, SharedSettings \
*workSheetSettings); + ProcessController(QWidget* parent);
virtual ~ProcessController() { }
/* Functions for SensorDisplay*/
--- trunk/KDE/kdebase/workspace/ksysguard/gui/SensorDisplayLib/SensorDisplay.cc \
#918969:918970 @@ -119,7 +119,7 @@
action->setData( 2 );
menuEmpty = false;
}
- if(!mSharedSettings->locked) {
+ if(mSharedSettings && !mSharedSettings->locked) {
action = pm.addAction( i18n( "&Remove Display" ) );
action->setData( 3 );
menuEmpty = false;
--- trunk/KDE/kdebase/workspace/ksysguard/gui/WorkSheet.cc #918969:918970
@@ -45,6 +45,7 @@
#include "LogFile.h"
#include "MultiMeter.h"
#include "ProcessController.h"
+#include "ProcessTable.h"
#include "SensorLogger.h"
#include "WorkSheet.h"
#include "WorkSheetSettings.h"
@@ -55,7 +56,6 @@
mGridLayout = 0;
mRows = mColumns = 0;
mDisplayList = 0;
- mLocalProcessController = NULL;
setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
setAcceptDrops( true );
}
@@ -368,11 +368,10 @@
newDisplay = new SensorLogger( this, sensorDescr, &mSharedSettings );
}
else if ( sensorType == "table" ) {
- if(!mLocalProcessController && (hostName.isEmpty() || hostName == \
"localhost")) {
- mLocalProcessController = new ProcessController( this, sensorDescr, \
&mSharedSettings);
- newDisplay = mLocalProcessController;
+ if(!sLocalProcessController && (hostName.isEmpty() || hostName == \
"localhost")) { + newDisplay = sLocalProcessController;
} else
- newDisplay = new ProcessController( this, sensorDescr, &mSharedSettings);
+ newDisplay = new ProcessController( this);
}
else {
kDebug(1215) << "Unknown sensor type: " << sensorType;
@@ -544,11 +543,7 @@
else if ( classType == "SensorLogger" )
newDisplay = new SensorLogger( 0, i18n("Dummy"), &mSharedSettings );
else if ( classType == "ProcessController" ) {
- if(!mLocalProcessController) {
- kDebug() << "Found process controller";
- mLocalProcessController = new ProcessController( 0, i18n("Dummy"), \
&mSharedSettings);
- newDisplay = mLocalProcessController;
- }
+ newDisplay = new ProcessController(0);
} else {
kDebug(1215) << "Unknown class " << classType;
return false;
@@ -569,9 +564,7 @@
void WorkSheet::replaceDisplay( uint row, uint column, KSGRD::SensorDisplay* \
newDisplay ) {
// remove the old display && sensor frame at this location
- if ( mDisplayList[ row ][ column ] ) {
- if(mDisplayList[ row ][ column ] == mLocalProcessController)
- mLocalProcessController = NULL;
+ if ( mDisplayList[ row ][ column ] && mDisplayList[ row ][ column ] != \
sLocalProcessController) {
if ( qstrcmp( mDisplayList[ row ][ column \
]->parent()->metaObject()->className(), "SensorFrame" ) == 0 ) {
delete mDisplayList[ row ][ column ]->parent(); // destroys the child \
(display) as well } else {
@@ -605,9 +598,6 @@
if ( !display )
return;
- if(display == mLocalProcessController)
- mLocalProcessController = NULL;
-
for ( uint r = 0; r < mRows; ++r )
for ( uint c = 0; c < mColumns; ++c )
if ( mDisplayList[ r ][ c ] == display ) {
--- trunk/KDE/kdebase/workspace/ksysguard/gui/WorkSheet.h #918969:918970
@@ -34,7 +34,6 @@
class QGridLayout;
class QString;
class QStringList;
-class ProcessController;
/**
A WorkSheet contains the displays to visualize the sensor results. When
@@ -77,7 +76,6 @@
uint rows, uint columns );
void settings();
- ProcessController *getLocalProcessController() const { return \
mLocalProcessController; }
public Q_SLOTS:
void showPopupMenu( KSGRD::SensorDisplay *display );
@@ -118,8 +116,6 @@
QString currentDisplayAsXML();
- ProcessController *mLocalProcessController;
-
uint mRows;
uint mColumns;
--- trunk/KDE/kdebase/workspace/ksysguard/gui/ksysguard.cc #918969:918970
@@ -61,10 +61,12 @@
#include "StyleEngine.h"
#include "HostConnector.h"
#include "ProcessController.h"
+#include "ProcessTable.h"
#include "ksysguard.h"
+ProcessController *sLocalProcessController = NULL;
//Comment out to stop ksysguard from forking. Good for debugging
//#define FORK_KSYSGUARD
@@ -95,6 +97,8 @@
connect( mWorkSpace, SIGNAL( currentChanged( int ) ),
SLOT( currentTabChanged( int ) ) );
+ sLocalProcessController = new ProcessController( this);
+
/* Create the status bar. It displays some information about the
* number of processes and the memory consumption of the local
* host. */
@@ -391,13 +395,9 @@
mWorkSpace->readProperties( cfg );
QList<WorkSheet *> workSheets = mWorkSpace->getWorkSheets();
- ProcessController *processController = NULL;
- foreach(WorkSheet *sheet, workSheets) {
- processController = sheet->getLocalProcessController();
- if(processController != NULL) {
- for(int i = 0; i < processController->actions().size(); i++) {
- actionCollection()->addAction("processAction" + QString::number(i), \
processController->actions().at(i));
- }
+ if(sLocalProcessController != NULL) {
+ for(int i = 0; i < sLocalProcessController->actions().size(); i++) {
+ actionCollection()->addAction("processAction" + QString::number(i), \
sLocalProcessController->actions().at(i)); }
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic