00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "kchartPieConfigPage.h"
00021 #include "kchartPieConfigPage.moc"
00022
00023 #include <kapplication.h>
00024 #include <klocale.h>
00025 #include <qlayout.h>
00026 #include <qlabel.h>
00027 #include <kfontdialog.h>
00028
00029 #include <qcheckbox.h>
00030 #include <qlineedit.h>
00031 #include <qradiobutton.h>
00032 #include <qpushbutton.h>
00033 #include <qfont.h>
00034 #include <qspinbox.h>
00035
00036 #include "kchart_params.h"
00037
00038
00039 namespace KChart
00040 {
00041
00042 KChartPieConfigPage::KChartPieConfigPage( KChartParams* params,
00043 QWidget* parent,
00044 KDChartTableData* data) :
00045 QWidget( parent ),_params( params )
00046 {
00047
00048 pos=-1;
00049 QGridLayout *grid = new QGridLayout(this,10,4,KDialog::marginHint(),
00050 KDialog::spacingHint());
00051
00052 list = new QListView( this );
00053 list->resize( list->sizeHint() );
00054 grid->addMultiCellWidget(list,0,9,0,0);
00055 list->addColumn( i18n("Hide Piece") );
00056 list->setRootIsDecorated( TRUE );
00057
00058 QLabel* label = new QLabel( i18n( "Column active:" ), this );
00059 label->resize( label->sizeHint() );
00060 grid->addWidget( label,0,1);
00061
00062 column = new QSpinBox(1, data->cols(), 1, this);
00063 column->resize(100, column->sizeHint().height() );
00064 grid->addWidget( column,1,1);
00065
00066 column->setValue(col+1);
00067
00068 label = new QLabel( i18n( "Move piece to:" ), this );
00069 label->resize( label->sizeHint() );
00070 grid->addWidget( label,2,1);
00071
00072 dist = new QSpinBox(0, 400, 1, this);
00073 dist->resize(100, dist->sizeHint().height() );
00074 grid->addWidget( dist,3,1);
00075
00076 label = new QLabel( i18n( "Explode factor (%):" ), this );
00077 label->resize( label->sizeHint() );
00078 grid->addWidget( label,4,1);
00079
00080 explose = new QSpinBox(0, 100, 1, this);
00081 explose->resize(100, explose->sizeHint().height() );
00082 grid->addWidget( explose,5,1);
00083
00084 grid->addColSpacing(0,list->width());
00085 grid->addColSpacing(2,list->width());
00086 grid->addColSpacing(3,list->width());
00087
00088
00089 initList();
00090 dist->setEnabled(false);
00091
00092 connect(column,SIGNAL(valueChanged(int)),this,SLOT(changeValue(int)));
00093
00094 connect( list, SIGNAL( selectionChanged(QListViewItem *) ), this, SLOT( slotselected(QListViewItem *) ) );
00095 }
00096
00097
00098 void KChartPieConfigPage::initList()
00099 {
00100
00101
00102
00103
00104
00105
00106 QListViewItemIterator it( list );
00107
00108
00109
00110
00111
00112
00113
00114 }
00115
00116
00117 void KChartPieConfigPage::slotselected(QListViewItem *)
00118 {
00119
00120
00121
00122
00123 if(pos==-1)
00124 dist->setEnabled(true);
00125 else
00126 value[pos]=dist->value();
00127
00128
00129
00130 dist->setValue(value[pos]);
00131 }
00132
00133
00134 void KChartPieConfigPage::changeValue(int val)
00135 {
00136 col=val-1;
00137 QListViewItemIterator it( list );
00138
00139 ;
00140
00141 for( ; it.current(); ++it ) {
00142
00143
00144
00145 }
00146
00147 if(pos!=-1) {
00148 value[pos]=dist->value();
00149
00150
00151 dist->setValue(value[pos]);
00152 }
00153 }
00154
00155
00156 void KChartPieConfigPage::init()
00157 {
00158 QListViewItemIterator it( list );
00159
00160
00161
00162 for( ; it.current(); ++it ) {
00163
00164
00165
00166 }
00167
00168
00169
00170
00171
00172
00173
00174 explose->setValue((int)(_params->explodeFactor()*100));
00175 }
00176
00177
00178 void KChartPieConfigPage::apply()
00179 {
00180 QListViewItemIterator it( list );
00181
00182
00183 for( ; it.current(); ++it ) {
00184
00185
00186
00187 }
00188
00189
00190
00191
00192
00193 _params->setExplodeFactor(((double)(explose->value()))/100);
00194 }
00195
00196 }