summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/settings/sysinfo/benchmarkinfo.cpp86
-rw-r--r--noncore/settings/sysinfo/benchmarkinfo.h7
-rw-r--r--share/sysinfo/results30
3 files changed, 105 insertions, 18 deletions
diff --git a/noncore/settings/sysinfo/benchmarkinfo.cpp b/noncore/settings/sysinfo/benchmarkinfo.cpp
index 69d8229..0aeb251 100644
--- a/noncore/settings/sysinfo/benchmarkinfo.cpp
+++ b/noncore/settings/sysinfo/benchmarkinfo.cpp
@@ -25,17 +25,18 @@
#include <qpe/config.h>
/* QT */
-#include <qlayout.h>
+#include <qclipboard.h>
+#include <qcolor.h>
+#include <qcombobox.h>
+#include <qdirectpainter_qws.h>
+#include <qfile.h>
+#include <qtextstream.h>
#include <qfiledialog.h>
#include <qlabel.h>
+#include <qlayout.h>
#include <qpainter.h>
-#include <qdirectpainter_qws.h>
-#include <qapplication.h>
#include <qpushbutton.h>
-#include <qclipboard.h>
#include <qtimer.h>
-#include <qcolor.h>
-#include <qpushbutton.h>
/* STD */
#include <time.h>
@@ -91,31 +92,63 @@ BenchmarkInfo::BenchmarkInfo( QWidget *parent, const char *name, int wFlags )
vb->setMargin( 4 );
tests = new QListView( this );
- tests->setMargin( 1 );
- tests->addColumn( "Tests" );
- tests->addColumn( "Results" );
+ tests->setMargin( 0 );
+ tests->addColumn( tr( "Tests" ) );
+ tests->addColumn( tr( "Results" ) );
+ tests->addColumn( tr( "Comparison" ) );
tests->setShowSortIndicator( true );
- test_alu = new QCheckListItem( tests, "1: Integer Arithmetic ", QCheckListItem::CheckBox );
+ test_alu = new QCheckListItem( tests, tr( "1. Integer Arithmetic " ), QCheckListItem::CheckBox );
+ test_fpu = new QCheckListItem( tests, tr( "2. Floating Point Unit " ), QCheckListItem::CheckBox );
+ test_txt = new QCheckListItem( tests, tr( "3. Text Rendering " ), QCheckListItem::CheckBox );
+ test_gfx = new QCheckListItem( tests, tr( "4. Gfx Rendering " ), QCheckListItem::CheckBox );
+ test_ram = new QCheckListItem( tests, tr( "5. RAM Performance " ), QCheckListItem::CheckBox );
+ test_sd = new QCheckListItem( tests, tr( "6. SD Card Performance " ), QCheckListItem::CheckBox );
+ test_cf = new QCheckListItem( tests, tr( "7. CF Card Performance " ), QCheckListItem::CheckBox );
+
test_alu->setText( 1, "n/a" );
- test_fpu = new QCheckListItem( tests, "2: Floating Point Unit ", QCheckListItem::CheckBox );
test_fpu->setText( 1, "n/a" );
- test_txt = new QCheckListItem( tests, "3: Text Rendering ", QCheckListItem::CheckBox );
test_txt->setText( 1, "n/a" );
- test_gfx = new QCheckListItem( tests, "4: Gfx Rendering ", QCheckListItem::CheckBox );
test_gfx->setText( 1, "n/a" );
- test_ram = new QCheckListItem( tests, "5: RAM Performance ", QCheckListItem::CheckBox );
test_ram->setText( 1, "n/a" );
- test_sd = new QCheckListItem( tests, "6: SD Card Performance ", QCheckListItem::CheckBox );
test_sd->setText( 1, "n/a" );
- test_cf = new QCheckListItem( tests, "7: CF Card Performance ", QCheckListItem::CheckBox );
test_cf->setText( 1, "n/a" );
+ test_alu->setText( 2, "n/a" );
+ test_fpu->setText( 2, "n/a" );
+ test_txt->setText( 2, "n/a" );
+ test_gfx->setText( 2, "n/a" );
+ test_ram->setText( 2, "n/a" );
+ test_sd->setText( 2, "n/a" );
+ test_cf->setText( 2, "n/a" );
+
startButton = new QPushButton( tr( "&Start Tests!" ), this );
connect( startButton, SIGNAL( clicked() ), this, SLOT( run() ) );
vb->addWidget( tests, 2 );
- vb->addWidget( startButton );
+
+ QFile f( QPEApplication::qpeDir() + "/share/sysinfo/results" );
+ if ( f.open( IO_ReadOnly ) )
+ {
+ machineCombo = new QComboBox( this );
+
+ QTextStream ts( &f );
+ while( !ts.eof() )
+ {
+ QString machline = ts.readLine();
+ qDebug( "sysinfo: parsing benchmark results for '%s'", (const char*) machline );
+ QString resline = ts.readLine();
+ machines.insert( machline, new QStringList( QStringList::split( ",", resline ) ) );
+ machineCombo->insertItem( machline );
+ }
+
+ QHBoxLayout* hb = new QHBoxLayout( vb );
+ hb->addWidget( new QLabel( tr( "Compare To:" ), this ) );
+ hb->addWidget( machineCombo, 2 );
+ connect( machineCombo, SIGNAL( activated( int ) ), this, SLOT( machineActivated( int ) ) );
+ }
+
+ vb->addWidget( startButton, 2 );
}
@@ -123,6 +156,25 @@ BenchmarkInfo::~BenchmarkInfo()
{}
+void BenchmarkInfo::machineActivated( int index )
+{
+ QStringList* results = machines[ machineCombo->text( index ) ];
+ if ( !results )
+ {
+ qDebug( "sysinfo: no results available." );
+ return;
+ }
+ QStringList::Iterator it = results->begin();
+ test_alu->setText( 2, *(it++) );
+ test_fpu->setText( 2, *(it++) );
+ test_txt->setText( 2, *(it++) );
+ test_gfx->setText( 2, *(it++) );
+ test_ram->setText( 2, *(it++) );
+ test_sd->setText( 2, *(it++) );
+ test_cf->setText( 2, *(it++) );
+}
+
+
void BenchmarkInfo::run()
{
startButton->setText( "> Don't touch! Running Tests! Don't touch! <" );
diff --git a/noncore/settings/sysinfo/benchmarkinfo.h b/noncore/settings/sysinfo/benchmarkinfo.h
index 3c5ca37..d143602 100644
--- a/noncore/settings/sysinfo/benchmarkinfo.h
+++ b/noncore/settings/sysinfo/benchmarkinfo.h
@@ -18,8 +18,11 @@
#include <qwidget.h>
#include <qdialog.h>
+#include <qdict.h>
+#include <qstringlist.h>
class QClipboard;
+class QComboBox;
class QCheckListItem;
class QPushButton;
class QListView;
@@ -48,9 +51,10 @@ public:
bool cf_wt;
QClipboard* clb;
-
+ QComboBox* machineCombo;
QListView* tests;
QPushButton* startButton;
+ QDict <QStringList> machines;
int textRendering( int );
int gfxRendering( int );
@@ -60,5 +64,6 @@ private slots:
bool writeFile( const QString& );
bool readFile( const QString& );
void run();
+ void machineActivated( int );
};
diff --git a/share/sysinfo/results b/share/sysinfo/results
new file mode 100644
index 0000000..1866da3
--- a/dev/null
+++ b/share/sysinfo/results
@@ -0,0 +1,30 @@
+<Choose a model>
+n/a,n/a,n/a,n/a,n/a,n/a,n/a,n/a,n/a
+Sharp SL-5500
+240010 dhrys,41.498 sec,88 char/sec,1786 gops/sec,50.123 kb/sec,41.7329 kb/sec,105.873 kb/sec
+Sharp SL-5600
+not,yet,contributed,please,mail,to,opie@handhelds.org
+Sharp C-700
+not,yet,contributed,please,mail,to,opie@handhelds.org
+Sharp C-750
+not,yet,contributed,please,mail,to,opie@handhelds.org
+Sharp C-760
+not,yet,contributed,please,mail,to,opie@handhelds.org
+Sharp C-860
+not,yet,contributed,please,mail,to,opie@handhelds.org
+HP iPAQ 36xx
+not,yet,contributed,please,mail,to,opie@handhelds.org
+HP iPAQ 37xx
+not,yet,contributed,please,mail,to,opie@handhelds.org
+HP iPAQ 38xx
+not,yet,contributed,please,mail,to,opie@handhelds.org
+HP iPAQ 54xx
+not,yet,contributed,please,mail,to,opie@handhelds.org
+HP iPAQ 55xx
+not,yet,contributed,please,mail,to,opie@handhelds.org
+HP Jornada 5x0
+not,yet,contributed,please,mail,to,opie@handhelds.org
+M&N Ramses
+not,yet,contributed,please,mail,to,opie@handhelds.org
+SIEMENS SIMpad
+not,yet,contributed,please,mail,to,opie@handhelds.org