-rw-r--r-- | noncore/settings/sysinfo/benchmarkinfo.cpp | 86 | ||||
-rw-r--r-- | noncore/settings/sysinfo/benchmarkinfo.h | 7 | ||||
-rw-r--r-- | share/sysinfo/results | 30 |
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 |