1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* ( at your option ) any later version. *
* *
**************************************************************************/
#include "oxygen.h"
#include <qpe/config.h>
#include "datawidgetui.h"
#include <qstring.h>
#include <qcombobox.h>
#include <qlayout.h>
#include <qtable.h>
#include <qhbox.h>
#include <qlabel.h>
dataWidgetUI::dataWidgetUI() : QDialog()
{
this->setCaption("Chemical Data");
QVBoxLayout *vbox = new QVBoxLayout( this );
dataCombo = new QComboBox( this );
DataTable = new OxydataTable( 8,2, this );
DataTable->setShowGrid( false );
DataTable->setHScrollBarMode(QScrollView::AlwaysOff);
QHBox *hbox = new QHBox( this );
left = new QLabel( hbox );
middle = new QLabel( hbox );
right = new QLabel( hbox );
vbox->addWidget( dataCombo );
vbox->addWidget( hbox );
vbox->addWidget( DataTable );
DataTable->show();
dataCombo->show();
connect ( dataCombo, SIGNAL( activated(int) ), this, SLOT( slotShowData(int) ) );
Config test( "/home/opie/Settings/oxygendata", Config::File );
//read in all names of the 118 elements
for ( int i = 1 ; i < 119 ; i++ )
{
test.setGroup( QString::number( i ) );
QString foo = test.readEntry( "Name" );
dataCombo->insertItem( foo );
}
createTableLayout();
slotShowData( 1 ); //this way we do always get data here
}
void dataWidgetUI::createTableLayout(){
DataTable->horizontalHeader()->hide();
DataTable->verticalHeader()->hide();
DataTable->setTopMargin( 0 );
DataTable->setLeftMargin( 0 );
DataTable->setText( 0,0,"Weight:" );
DataTable->setText( 1,0,"Block" );
DataTable->setText( 2,0,"Group" );
DataTable->setText( 3,0,"Electronegativity" );
DataTable->setText( 4,0,"Atomic radius" );
DataTable->setText( 5,0,"Ionizationenergie" );
DataTable->setText( 6,0,"Density" );
DataTable->setText( 7,0, tr( "Boilingpoint" ) );
DataTable->setText( 8,0, tr( "Meltingpoint" ) );
}
void dataWidgetUI::slotShowData(int number){
Config test( "/home/opie/Settings/oxygendata", Config::File );
test.setGroup( QString::number( number+1 ));
left->setText( test.readEntry( "Symbol" ) );
middle->setText( test.readEntry( "Name" ) );
right->setText( QString::number( number+1 ) );
QFont bf;
bf.setBold( true );
bf.setPointSize( bf.pointSize()+2 );
middle->setFont( bf );
QString weight = test.readEntry( "Weight" );
DataTable->setText( 0,1,weight );
QString block = test.readEntry( "Block" );
DataTable->setText( 1,1,block );
QString grp = test.readEntry( "Group" );
DataTable->setText( 2,1,grp );
QString en = test.readEntry( "EN" );
DataTable->setText( 3,1,en );
QString ar = test.readEntry( "AR" );
DataTable->setText( 4,1,ar ) ;
QString ion = test.readEntry( "IE" );
DataTable->setText( 5,1,ion );
QString dens = test.readEntry( "Density" );
DataTable->setText( 6,1,dens );
QString bp = test.readEntry( "BP" );
DataTable->setText( 7,1,bp );
QString mp = test.readEntry( "MP" );
DataTable->setText( 7,1,mp );
}
|