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>
46#include "kchart_params.h"
47#include "kchart_part.h"
52KChartDataConfigPage::KChartDataConfigPage( KChartParams* params,
54 KDChartTableData *dat)
55 : TQWidget( parent ), m_params( params ), data(dat),
56 m_firstRowAsLabel(0), m_firstColAsLabel(0)
58 TQGridLayout *grid1 =
new TQGridLayout(
this, 4, 1, KDialog::marginHint(),
59 KDialog::spacingHint());
62 if ( !m_params->part()->canChangeValue() ) {
63 TQButtonGroup *gb1 =
new TQVButtonGroup( i18n(
"Data Area" ),
this );
67 TQHBox *hbox =
new TQHBox( gb1 );
68 (void)
new TQLabel( i18n(
"Area: "), hbox);
69 m_dataArea =
new TQLineEdit( hbox );
72 m_firstRowAsLabel =
new TQCheckBox( i18n(
"First row as label" ), gb1);
73 m_firstColAsLabel =
new TQCheckBox( i18n(
"First column as label" ), gb1);
75 grid1->addWidget(gb1, 0, 0);
79 TQButtonGroup *gb =
new TQVButtonGroup( i18n(
"Data Format" ),
this );
81 m_rowMajor =
new TQRadioButton( i18n(
"Data in rows" ), gb );
82 m_rowMajor->resize( m_rowMajor->sizeHint() );
84 m_colMajor =
new TQRadioButton( i18n(
"Data in columns" ), gb );
85 m_colMajor->resize( m_colMajor->sizeHint() );
87 grid1->addWidget(gb, 2, 0);
89 TQWhatsThis::add(
this, i18n(
"This configuration page can be used to swap the interpretation of rows and columns."));
90 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."));
92 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."));
93 m_colMajor->resize( m_colMajor->sizeHint() );
94 grid1->addWidget(gb, 1, 0);
95 grid1->setColStretch(3, 0);
101void KChartDataConfigPage::init()
103 if (m_params->dataDirection() == KChartParams::DataRows)
104 m_rowMajor->setChecked(
true);
106 m_colMajor->setChecked(
true);
108 if ( !m_params->part()->canChangeValue() ) {
109 m_firstRowAsLabel->setChecked( m_params->firstRowAsLabel() );
110 m_firstColAsLabel->setChecked( m_params->firstColAsLabel() );
112 m_dataArea->setText( m_params->dataArea() );
117void KChartDataConfigPage::defaults()
119 m_colMajor->setChecked(
true );
121 if ( !m_params->part()->canChangeValue() ) {
122 m_firstRowAsLabel->setChecked(
false );
123 m_firstColAsLabel->setChecked(
false );
125 m_dataArea->setText(
"" );
130void KChartDataConfigPage::apply()
132 if (m_rowMajor->isChecked())
133 m_params->setDataDirection( KChartParams::DataRows );
135 m_params->setDataDirection( KChartParams::DataColumns );
137 if ( !m_params->part()->canChangeValue() ) {
138 m_params->setFirstRowAsLabel( m_firstRowAsLabel->isChecked() );
139 m_params->setFirstColAsLabel( m_firstColAsLabel->isChecked() );
141 m_params->setDataArea( m_dataArea->text() );