summaryrefslogtreecommitdiffstats
path: root/kchart/kchartWizardSelectChartSubTypePage.cc
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-01-20 01:29:50 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-01-20 01:29:50 +0000
commit8362bf63dea22bbf6736609b0f49c152f975eb63 (patch)
tree0eea3928e39e50fae91d4e68b21b1e6cbae25604 /kchart/kchartWizardSelectChartSubTypePage.cc
downloadkoffice-8362bf63dea22bbf6736609b0f49c152f975eb63.tar.gz
koffice-8362bf63dea22bbf6736609b0f49c152f975eb63.zip
Added old abandoned KDE3 version of koffice
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/koffice@1077364 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kchart/kchartWizardSelectChartSubTypePage.cc')
-rw-r--r--kchart/kchartWizardSelectChartSubTypePage.cc195
1 files changed, 195 insertions, 0 deletions
diff --git a/kchart/kchartWizardSelectChartSubTypePage.cc b/kchart/kchartWizardSelectChartSubTypePage.cc
new file mode 100644
index 000000000..925a5a641
--- /dev/null
+++ b/kchart/kchartWizardSelectChartSubTypePage.cc
@@ -0,0 +1,195 @@
+
+#include "kchartWizardSelectChartSubTypePage.h"
+#include "kchart_view.h"
+#include "kchart_part.h"
+
+#include <qbuttongroup.h>
+#include <qpushbutton.h>
+#include <qradiobutton.h>
+#include <qspinbox.h>
+#include <qlabel.h>
+#include <qptrcollection.h>
+#include <qobjectlist.h>
+#include <qlayout.h>
+#include <qhbox.h>
+
+#include <kdebug.h>
+#include <kiconloader.h>
+#include <kglobal.h>
+#include <klocale.h>
+#include <kdialog.h>
+
+#include "kchart_params.h"
+
+
+namespace KChart
+{
+
+KChartWizardSelectChartSubTypePage::KChartWizardSelectChartSubTypePage( QWidget* parent,
+ KChartPart* chart ) :
+ QWidget( parent ),
+ m_chart( chart )
+{
+ // FIXME: Use KChartPart::chartType() instead, when implemented.
+ m_charttype = (KChartParams::ChartType) m_chart->params()->chartType();
+ chartSubType = true;
+
+ QGridLayout *grid1 = new QGridLayout(this, 3, 2, KDialog::marginHint(),
+ KDialog::spacingHint());
+
+ QVBoxLayout *lay1 = new QVBoxLayout( );
+ lay1->setMargin( KDialog::marginHint() );
+ lay1->setSpacing( KDialog::spacingHint() );
+
+ QButtonGroup *grp = new QButtonGroup( 1, QGroupBox::Horizontal,
+ i18n( "Chart Sub Type" ), this );
+ grp->setRadioButtonExclusive( true );
+ grp->layout();
+ lay1->addWidget(grp);
+ m_normal = new QRadioButton( i18n( "Normal" ), grp );
+ m_stacked = new QRadioButton( i18n( "Stacked" ), grp );
+ m_percent = new QRadioButton( i18n( "Percent" ), grp );
+
+ QHBox *hbox = new QHBox( this );
+ /*QLabel *lbl =*/ new QLabel( i18n( "Number of lines: "), hbox );
+ m_numLines = new QSpinBox( hbox );
+
+ if( ( m_chart->chartType() == KChartParams::Bar &&
+ m_chart->params()->barChartSubType() == KDChartParams::BarNormal )
+ || ( m_chart->chartType() == KChartParams::Line &&
+ m_chart->params()->lineChartSubType() == KDChartParams::LineNormal )
+ || ( m_chart->chartType() == KChartParams::Polar &&
+ m_chart->params()->polarChartSubType() == KDChartParams::PolarNormal )
+ || ( m_chart->chartType() == KChartParams::Area &&
+ m_chart->params()->areaChartSubType() == KDChartParams::AreaNormal ) )
+ m_normal->setChecked( true );
+ else if( ( m_chart->params()->chartType() == KChartParams::Bar &&
+ m_chart->params()->barChartSubType() == KDChartParams::BarStacked ) ||
+ ( m_chart->params()->chartType() == KChartParams::Line &&
+ m_chart->params()->lineChartSubType() == KDChartParams::LineStacked ) ||
+ ( m_chart->params()->chartType() == KChartParams::Polar &&
+ m_chart->params()->polarChartSubType() == KDChartParams::PolarStacked ) ||
+ ( m_chart->params()->chartType() == KChartParams::Area &&
+ m_chart->params()->areaChartSubType() == KDChartParams::AreaStacked ) )
+ m_stacked->setChecked( true );
+ else if( ( m_chart->params()->chartType() == KChartParams::Bar &&
+ m_chart->params()->barChartSubType() == KDChartParams::BarPercent ) ||
+ ( m_chart->params()->chartType() == KChartParams::Line &&
+ m_chart->params()->lineChartSubType() == KDChartParams::LinePercent ) ||
+ ( m_chart->params()->chartType() == KChartParams::Polar &&
+ m_chart->params()->polarChartSubType() == KDChartParams::PolarPercent ) ||
+ ( m_chart->params()->chartType() == KChartParams::Area &&
+ m_chart->params()->areaChartSubType() == KDChartParams::AreaPercent ) )
+ m_percent->setChecked( true );
+ else {
+ kdDebug(35001)<<"Error in chart_type\n";
+ }
+
+ m_numLines->setValue( m_chart->params()->barNumLines() );
+
+ if( m_chart->params()->chartType() == KChartParams::HiLo)
+ {
+ if( m_chart->params()->hiLoChartSubType()==KDChartParams::HiLoNormal)
+ m_normal->setChecked( true );
+ else if(m_chart->params()->hiLoChartSubType()==KDChartParams::HiLoClose)
+ m_stacked->setChecked(true);
+ else if(m_chart->params()->hiLoChartSubType()==KDChartParams::HiLoOpenClose)
+ m_percent->setChecked(true);
+ }
+
+ changeSubTypeName( m_chart->chartType());
+ if(!chartSubType)
+ grp->setEnabled(false);
+
+ grid1->addWidget(grp, 0, 0);
+ grid1->addWidget(hbox, 1, 0);
+}
+
+
+
+void KChartWizardSelectChartSubTypePage::apply()
+{
+ if (chartSubType) {
+ if( m_normal->isChecked() )
+ switch( m_chart->params()->chartType() ) {
+ case KChartParams::Bar:
+ m_chart->params()->setBarChartSubType( KDChartParams::BarNormal );
+ // FIXME: Error controls.
+ m_chart->params()->setBarNumLines( m_numLines->value() );
+ break;
+ case KChartParams::Line:
+ m_chart->params()->setLineChartSubType( KDChartParams::LineNormal );
+ break;
+ case KChartParams::Area:
+ m_chart->params()->setAreaChartSubType( KDChartParams::AreaNormal );
+ break;
+ case KChartParams::HiLo:
+ m_chart->params()->setHiLoChartSubType(KDChartParams::HiLoNormal);
+ break;
+ case KChartParams::Polar:
+ m_chart->params()->setPolarChartSubType( KDChartParams::PolarNormal );
+ default:
+ kdDebug( 35001 ) << "Error in group button\n";
+ }
+ else if ( m_stacked->isChecked() )
+ switch( m_chart->params()->chartType() ) {
+ case KChartParams::Bar:
+ m_chart->params()->setBarChartSubType( KDChartParams::BarStacked );
+ break;
+ case KChartParams::Line:
+ m_chart->params()->setLineChartSubType( KDChartParams::LineStacked );
+ break;
+ case KChartParams::Area:
+ m_chart->params()->setAreaChartSubType( KDChartParams::AreaStacked );
+ break;
+ case KChartParams::HiLo:
+ m_chart->params()->setHiLoChartSubType( KDChartParams::HiLoClose);
+ break;
+ case KChartParams::Polar:
+ m_chart->params()->setPolarChartSubType( KDChartParams::PolarStacked );
+ break;
+ default:
+ kdDebug( 35001 ) << "Error in group button\n";
+ }
+ else if( m_percent->isChecked() )
+ switch( m_chart->params()->chartType() ) {
+ case KChartParams::Bar:
+ m_chart->params()->setBarChartSubType( KDChartParams::BarPercent );
+ break;
+ case KChartParams::Line:
+ m_chart->params()->setLineChartSubType( KDChartParams::LinePercent );
+ break;
+ case KChartParams::Area:
+ m_chart->params()->setAreaChartSubType( KDChartParams::AreaPercent );
+ break;
+ case KChartParams::HiLo:
+ m_chart->params()->setHiLoChartSubType( KDChartParams::HiLoOpenClose);
+ break;
+ case KChartParams::Polar:
+ m_chart->params()->setPolarChartSubType( KDChartParams::PolarPercent );
+ break;
+ default:
+ kdDebug( 35001 ) << "Error in group button\n";
+ }
+ else
+ kdDebug(35001)<<"Error in groupbutton\n";
+ }
+}
+
+void KChartWizardSelectChartSubTypePage::changeSubTypeName( KChartParams::ChartType _type)
+{
+ if (_type==KChartParams::HiLo)
+ {
+ m_stacked->setText( i18n("HiLoClose") );
+ m_percent->setText( i18n("HiLoOpenClose") );
+ }
+ else
+ {
+ m_stacked->setText( i18n( "Stacked" ) );
+ m_percent->setText( i18n( "Percent" ) );
+ }
+}
+
+} //KChart namespace
+
+#include "kchartWizardSelectChartSubTypePage.moc"