20#include "kchartDataConfigPage.h"
22#include "kchartDataConfigPage.moc"
24#include <tdeapplication.h>
26#include <kcolorbutton.h>
32#include <tqlineedit.h>
34#include <tqbuttongroup.h>
35#include <tqvbuttongroup.h>
36#include <tqpushbutton.h>
37#include <tqradiobutton.h>
38#include <tqcheckbox.h>
40#include <tqwhatsthis.h>
42#include <tdefontdialog.h>
49#include "kchart_params.h"
50#include "kchart_part.h"
55KChartDataConfigPage::KChartDataConfigPage( KChartParams* params,
57 KDChartTableData *dat)
58 : TQWidget( parent ), m_params( params ), data(dat),
59 m_firstRowAsLabel(0), m_firstColAsLabel(0)
61 TQGridLayout *grid1 =
new TQGridLayout(
this, 4, 1, KDialog::marginHint(),
62 KDialog::spacingHint());
65 if ( !m_params->part()->canChangeValue() ) {
66 TQButtonGroup *gb1 =
new TQVButtonGroup( i18n(
"Data Area" ),
this );
70 TQHBox *hbox =
new TQHBox( gb1 );
71 (void)
new TQLabel( i18n(
"Area: "), hbox);
72 m_dataArea =
new TQLineEdit( hbox );
75 m_firstRowAsLabel =
new TQCheckBox( i18n(
"First row as label" ), gb1);
76 m_firstColAsLabel =
new TQCheckBox( i18n(
"First column as label" ), gb1);
78 grid1->addWidget(gb1, 0, 0);
82 TQButtonGroup *gb =
new TQVButtonGroup( i18n(
"Data Format" ),
this );
84 m_rowMajor =
new TQRadioButton( i18n(
"Data in rows" ), gb );
85 m_rowMajor->resize( m_rowMajor->sizeHint() );
87 m_colMajor =
new TQRadioButton( i18n(
"Data in columns" ), gb );
88 m_colMajor->resize( m_colMajor->sizeHint() );
90 grid1->addWidget(gb, 2, 0);
92 TQWhatsThis::add(
this, i18n(
"This configuration page can be used to swap the interpretation of rows and columns."));
93 TQWhatsThis::add(m_rowMajor, i18n(
"By default one row is considered to be a data set and each column holds the individual values of the data series. This sets the data in rows on your chart."));
95 TQWhatsThis::add(m_colMajor, i18n(
"Here you can choose to have each column hold one data set. Note that the values are not really swapped but only their interpretation."));
96 m_colMajor->resize( m_colMajor->sizeHint() );
97 grid1->addWidget(gb, 1, 0);
98 grid1->setColStretch(3, 0);
104void KChartDataConfigPage::init()
106 if (m_params->dataDirection() == KChartParams::DataRows)
107 m_rowMajor->setChecked(
true);
109 m_colMajor->setChecked(
true);
111 if ( !m_params->part()->canChangeValue() ) {
112 m_firstRowAsLabel->setChecked( m_params->firstRowAsLabel() );
113 m_firstColAsLabel->setChecked( m_params->firstColAsLabel() );
115 m_dataArea->setText( m_params->dataArea() );
120void KChartDataConfigPage::defaults()
122 m_colMajor->setChecked(
true );
124 if ( !m_params->part()->canChangeValue() ) {
125 m_firstRowAsLabel->setChecked(
false );
126 m_firstColAsLabel->setChecked(
false );
128 m_dataArea->setText(
"" );
133void KChartDataConfigPage::apply()
135 if (m_rowMajor->isChecked())
136 m_params->setDataDirection( KChartParams::DataRows );
138 m_params->setDataDirection( KChartParams::DataColumns );
140 if ( !m_params->part()->canChangeValue() ) {
141 m_params->setFirstRowAsLabel( m_firstRowAsLabel->isChecked() );
142 m_params->setFirstColAsLabel( m_firstColAsLabel->isChecked() );
144 m_params->setDataArea( m_dataArea->text() );