-rw-r--r-- | noncore/settings/sysinfo/memory.cpp | 71 | ||||
-rw-r--r-- | noncore/settings/sysinfo/memory.h | 16 |
2 files changed, 73 insertions, 14 deletions
diff --git a/noncore/settings/sysinfo/memory.cpp b/noncore/settings/sysinfo/memory.cpp index 4f612d8..23dd8bd 100644 --- a/noncore/settings/sysinfo/memory.cpp +++ b/noncore/settings/sysinfo/memory.cpp @@ -21,8 +21,7 @@ #include <qlabel.h> +#include <qtimer.h> #include <qfile.h> -#include <qlayout.h> #include <qtextstream.h> -#include <qtimer.h> +#include <qlayout.h> #include <qwhatsthis.h> - #include "graph.h" @@ -30,4 +29,4 @@ -MemoryInfo::MemoryInfo( QWidget *parent, const char *name, WFlags ) - : QWidget( parent, name, WStyle_ContextHelp ) +MemoryInfo::MemoryInfo( QWidget *parent, const char *name, WFlags f ) + : QWidget( parent, name, f ) { @@ -39,3 +38,2 @@ MemoryInfo::MemoryInfo( QWidget *parent, const char *name, WFlags ) data = new GraphData(); -// graph = new PieGraph( this ); graph = new BarGraph( this ); @@ -49,2 +47,15 @@ MemoryInfo::MemoryInfo( QWidget *parent, const char *name, WFlags ) + swapMem = new QLabel( this ); + vb->addWidget( swapMem ); + + swapdata = new GraphData(); + swapgraph = new BarGraph( this ); + swapgraph->setFrameStyle( QFrame::Panel | QFrame::Sunken ); + vb->addWidget( swapgraph, 1 ); + swapgraph->setData( swapdata ); + + swaplegend = new GraphLegend( this ); + vb->addWidget( swaplegend ); + swaplegend->setData( swapdata ); + vb->addStretch( 1 ); @@ -56,3 +67,4 @@ MemoryInfo::MemoryInfo( QWidget *parent, const char *name, WFlags ) - QWhatsThis::add( this, tr( "This page shows how memory (i.e. RAM) is being allocated on your handheld device.\nMemory is categorized as follows:\n\n1. Used - memory used to by Opie and any running applications.\n2. Buffers - temporary storage used to improve performance\n3. Cached - information that has recently been used, but has not been freed yet.\n4. Free - memory not currently used by Opie or any running applications." ) ); + QWhatsThis::add( this, tr( "This page shows how memory (i.e. RAM) is being allocated on your device.\nMemory is categorized as follows:\n\n1. Used - memory used to by Opie and any running applications.\n2. Buffers - temporary storage used to improve performance\n3. Cached - information that has recently been used, but has not been freed yet.\n4. Free - memory not currently used by Opie or any running applications." ) ); + } @@ -68,3 +80,4 @@ void MemoryInfo::updateData() - if ( file.open( IO_ReadOnly ) ) { + if ( file.open( IO_ReadOnly ) ) + { QTextStream t( &file ); @@ -72,3 +85,2 @@ void MemoryInfo::updateData() t >> dummy; - int total, used, memfree, shared, buffers, cached; t >> total; @@ -85,3 +97,5 @@ void MemoryInfo::updateData() cached /= 1000; - int realUsed = total - ( buffers + cached + memfree ); + realUsed = total - ( buffers + cached + memfree ); + + totalMem->setText( tr( "Total Memory: %1 kB" ).arg( total ) ); data->clear(); @@ -91,8 +105,37 @@ void MemoryInfo::updateData() data->addItem( tr("Free (%1 kB)").arg(memfree), memfree ); - totalMem->setText( tr( "Total Memory: %1 kB" ).arg( total ) ); - graph->repaint( FALSE ); + + graph->hide(); + graph->show(); legend->update(); - } -} + // swapfile + t >> dummy; + t >> swaptotal; + swaptotal /= 1000; + t >> swapused; + swapused /= 1000; + t >> swapfree; + swapfree /= 1000; + + if (swaptotal > 0) + { + swapMem->setText( tr( "Total Swap: %1 kB" ).arg( swaptotal ) ); + swapdata->clear(); + swapdata->addItem( tr("Used (%1 kB)").arg(swapused), swapused ); + swapdata->addItem( tr("Free (%1 kB)").arg(swapfree), swapfree ); + + swapMem->show(); + swapgraph->show(); + swaplegend->show(); + swapgraph->repaint( FALSE ); + swaplegend->update(); + } + else + { + swapMem->hide(); + swapgraph->hide(); + swaplegend->hide(); + } + } +} diff --git a/noncore/settings/sysinfo/memory.h b/noncore/settings/sysinfo/memory.h index 696f97c..c2af948 100644 --- a/noncore/settings/sysinfo/memory.h +++ b/noncore/settings/sysinfo/memory.h @@ -37,2 +37,13 @@ public: + unsigned long total; + unsigned long used; + unsigned long memfree; + unsigned long shared; + unsigned long buffers; + unsigned long cached; + unsigned long realUsed; + unsigned long swaptotal; + unsigned long swapused; + unsigned long swapfree; + private slots: @@ -45,2 +56,7 @@ private: GraphLegend *legend; + + QLabel* swapMem; + GraphData *swapdata; + Graph *swapgraph; + GraphLegend *swaplegend; }; |