##// END OF EJS Templates
minor. removes debug leftover
minor. removes debug leftover

File last commit:

r1239:81e9e29a1f6f
r1242:8f2f7e1849ba
Show More
tablewidget.cpp
519 lines | 22.0 KiB | text/x-c | CppLexer
Jani Honkonen
Add/modify license headers
r830 /****************************************************************************
**
** Copyright (C) 2012 Digia Plc
** All rights reserved.
** For any questions to Digia, please use contact form at http://qt.digia.com
**
** This file is part of the Qt Commercial Charts Add-on.
**
** $QT_BEGIN_LICENSE$
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.
**
** If you have questions regarding the use of this file, please use
** contact form at http://qt.digia.com
** $QT_END_LICENSE$
**
****************************************************************************/
Marek Rosa
Table model data example
r519 #include "tablewidget.h"
#include <QGridLayout>
#include <QTableView>
Marek Rosa
PieSeries: model now supports custom mapping.
r1056 #include <QChart>
Marek Rosa
Table model data example
r519 #include <QStyledItemDelegate>
Marek Rosa
tablemodelchart: added coloring to TableView
r849 #include <QLineSeries>
#include <QSplineSeries>
#include <QScatterSeries>
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 #include <QXYModelMapper>
Marek Rosa
Table model data example
r519 #include "customtablemodel.h"
Marek Rosa
tablemodelchart: added coloring to TableView
r849 #include <QPieSeries>
Marek Rosa
Added Vertical and Horizontal PieModelMapper
r1237 #include <QVPieModelMapper>
Marek Rosa
tablemodelchart: added coloring to TableView
r849 #include <QPieSlice>
#include <QAreaSeries>
#include <QBarSeries>
Marek Rosa
Minor fix and example update
r1171 #include <QGroupedBarSeries>
Marek Rosa
tablemodelchart: added coloring to TableView
r849 #include <QBarSet>
Marek Rosa
BarSeries Model mapper added
r1170 #include <QBarModelMapper>
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 #include <QPushButton>
#include <QRadioButton>
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878 #include <QLabel>
Marek Rosa
Some more work on mapping with limits
r735 #include <QSpinBox>
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 #include <QTime>
Marek Rosa
Model example for the RnD offsite
r1097 #include <QHeaderView>
Marek Rosa
Table model data example
r519
TableWidget::TableWidget(QWidget *parent)
Marek Rosa
Refactored model related methods in PieSeries
r1063 : QWidget(parent)
Marek Rosa
Improvements to QSpline model support
r1090 // specialPie(0)
Marek Rosa
Table model data example
r519 {
Marek Rosa
PieSeries: model now supports custom mapping.
r1056 setGeometry(1900, 100, 1000, 600);
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
Marek Rosa
Table model data example
r519 // create simple model for storing data
// user's table data model
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 m_model = new CustomTableModel;
Marek Rosa
XYSeries model with limits working.
r833 m_tableView = new QTableView;
m_tableView->setModel(m_model);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // m_tableView->setMinimumHeight(300);
Marek Rosa
Model example for the RnD offsite
r1097 m_tableView->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
m_tableView->verticalHeader()->setResizeMode(QHeaderView::Stretch);
Marek Rosa
XYSeries model with limits working.
r833 m_chart = new QChart;
Marek Rosa
For BarChart labels for legend are now taken from model's headerData (row or column)
r1012 m_chart->legend()->setVisible(true);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 m_chart->setAnimationOptions(QChart::SeriesAnimations);
Marek Rosa
XYSeries model with limits working.
r833 m_chartView = new QChartView(m_chart);
m_chartView->setRenderHint(QPainter::Antialiasing);
m_chartView->setMinimumSize(640, 480);
Marek Rosa
Table model data example
r519
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 // add, remove data buttons
Marek Rosa
Model data example updated
r546 QPushButton* addRowAboveButton = new QPushButton("Add row above");
connect(addRowAboveButton, SIGNAL(clicked()), this, SLOT(addRowAbove()));
QPushButton* addRowBelowButton = new QPushButton("Add row below");
connect(addRowBelowButton, SIGNAL(clicked()), this, SLOT(addRowBelow()));
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545
QPushButton* removeRowButton = new QPushButton("Remove row");
connect(removeRowButton, SIGNAL(clicked()), this, SLOT(removeRow()));
Marek Rosa
Improvements to QSpline model support
r1090 QPushButton* addColumnRightButton = new QPushButton("Add column to the right");
Marek Rosa
PieSeries model support - further refactoring
r1081 connect(addColumnRightButton, SIGNAL(clicked()), this, SLOT(addColumnRight()));
QPushButton* removeColumnButton = new QPushButton("Remove column");
connect(removeColumnButton, SIGNAL(clicked()), this, SLOT(removeColumn()));
Marek Rosa
Refactored PieSeriesModelMapper
r1231 QPushButton* specialPieButton = new QPushButton("Add slices from series");
Marek Rosa
PieSeries: model now supports custom mapping.
r1056 connect(specialPieButton, SIGNAL(clicked()), this, SLOT(testPie()));
Marek Rosa
Refactored PieSeriesModelMapper
r1231 QPushButton* specialPieButton2 = new QPushButton("Remove slices from series");
connect(specialPieButton2, SIGNAL(clicked()), this, SLOT(testPie2()));
Marek Rosa
QPieModelMapper: added support for labelChanged and valueChanged signals from the slice
r1236 QPushButton* specialPieButton3 = new QPushButton("Remove slices from series");
connect(specialPieButton3, SIGNAL(clicked()), this, SLOT(testPie3()));
Marek Rosa
PieSeries: model now supports custom mapping.
r1056
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // QLabel *spinBoxLabel = new QLabel("Rows affected:");
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
BarSeries - renamed internal model getter to modelInternal. Some smaller changes to other files to have in headers forward declarations for model related members instead of include
r877 // spin box for setting number of affected items (add, remove)
Marek Rosa
XYSeries model with limits working.
r833 m_linesCountSpinBox = new QSpinBox;
m_linesCountSpinBox->setRange(1, 10);
m_linesCountSpinBox->setValue(1);
Marek Rosa
Some more work on mapping with limits
r735
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 // buttons layout
QVBoxLayout* buttonsLayout = new QVBoxLayout;
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // buttonsLayout->addWidget(spinBoxLabel);
// buttonsLayout->addWidget(m_linesCountSpinBox);
// buttonsLayout->addWidget(addRowAboveButton);
Marek Rosa
Model data example updated
r546 buttonsLayout->addWidget(addRowBelowButton);
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 buttonsLayout->addWidget(removeRowButton);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // buttonsLayout->addWidget(addColumnRightButton);
// buttonsLayout->addWidget(removeColumnButton);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 buttonsLayout->addWidget(specialPieButton);
Marek Rosa
Refactored PieSeriesModelMapper
r1231 buttonsLayout->addWidget(specialPieButton2);
Marek Rosa
QPieModelMapper: added support for labelChanged and valueChanged signals from the slice
r1236 buttonsLayout->addWidget(specialPieButton3);
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 buttonsLayout->addStretch();
// chart type radio buttons
Marek Rosa
XYSeries model with limits working.
r833 m_lineRadioButton = new QRadioButton("Line");
m_splineRadioButton = new QRadioButton("Spline");
m_scatterRadioButton = new QRadioButton("Scatter");
m_pieRadioButton = new QRadioButton("Pie");
m_areaRadioButton = new QRadioButton("Area");
m_barRadioButton = new QRadioButton("Bar");
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878 connect(m_lineRadioButton, SIGNAL(toggled(bool)), this, SLOT(updateChartType(bool)));
connect(m_splineRadioButton, SIGNAL(toggled(bool)), this, SLOT(updateChartType(bool)));
connect(m_scatterRadioButton, SIGNAL(toggled(bool)), this, SLOT(updateChartType(bool)));
connect(m_pieRadioButton, SIGNAL(toggled(bool)), this, SLOT(updateChartType(bool)));
connect(m_areaRadioButton, SIGNAL(toggled(bool)), this, SLOT(updateChartType(bool)));
connect(m_barRadioButton, SIGNAL(toggled(bool)), this, SLOT(updateChartType(bool)));
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 m_lineRadioButton->setChecked(true);
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545
// radio buttons layout
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 QVBoxLayout* radioLayout = new QVBoxLayout;
Marek Rosa
XYSeries model with limits working.
r833 radioLayout->addWidget(m_lineRadioButton);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 radioLayout->addWidget(m_splineRadioButton);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // radioLayout->addWidget(m_scatterRadioButton);
Marek Rosa
XYSeries model with limits working.
r833 radioLayout->addWidget(m_pieRadioButton);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // radioLayout->addWidget(m_areaRadioButton);
Marek Rosa
XYSeries model with limits working.
r833 radioLayout->addWidget(m_barRadioButton);
Marek Rosa
Added support for data from model to QBarSeries. Various fixes and small modifications to data from model support to other series
r630 radioLayout->addStretch();
Marek Rosa
Table model data example
r519
// create main layout
QGridLayout* mainLayout = new QGridLayout;
Marek Rosa
Model example for the RnD offsite
r1097 mainLayout->addLayout(buttonsLayout, 2, 0);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 mainLayout->addLayout(radioLayout, 3, 0);
Marek Rosa
XYSeries model with limits working.
r833 mainLayout->addWidget(m_tableView, 1, 0);
Marek Rosa
Model example for the RnD offsite
r1097 mainLayout->addWidget(m_chartView, 1, 1, 2, 1);
Marek Rosa
tablemodelchart: added coloring to TableView
r849 setLayout(mainLayout);
Marek Rosa
XYSeries model with limits working.
r833 m_lineRadioButton->setFocus();
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 }
Marek Rosa
Model data example updated
r546 void TableWidget::addRowAbove()
{
Marek Rosa
XYSeries model with limits working.
r833 m_model->insertRows(m_tableView->currentIndex().row(), m_linesCountSpinBox->value());
Marek Rosa
Model data example updated
r546
}
void TableWidget::addRowBelow()
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 {
Marek Rosa
XYSeries model with limits working.
r833 m_model->insertRows(m_tableView->currentIndex().row() + 1, m_linesCountSpinBox->value());
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545
}
void TableWidget::removeRow()
{
Marek Rosa
XYSeries model with limits working.
r833 m_model->removeRows(m_tableView->currentIndex().row(), qMin(m_model->rowCount() - m_tableView->currentIndex().row(), m_linesCountSpinBox->value()));
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 }
Marek Rosa
PieSeries model support - further refactoring
r1081 void TableWidget::addColumnRight()
{
m_model->insertColumns(m_tableView->currentIndex().column() + 1, m_linesCountSpinBox->value());
}
void TableWidget::removeColumn()
{
m_model->removeColumns(m_tableView->currentIndex().column(), qMin(m_model->columnCount() - m_tableView->currentIndex().column(), m_linesCountSpinBox->value()));
}
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878 void TableWidget::updateChartType(bool toggle)
Marek Rosa
Added support for adding and removing data with model. Updated the example
r545 {
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878 // this if is needed, so that the function is only called once.
// For the radioButton that was enabled.
if (toggle) {
Marek Rosa
Improvements to QSpline model support
r1090 // specialPie = 0;
Marek Rosa
PieSeries: model now supports custom mapping.
r1056 m_chart->removeAllSeries();
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_chart->axisX()->setNiceNumbersEnabled(false);
// m_chart->axisY()->setNiceNumbersEnabled(false);
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // // renable axes of the chart (pie hides them)
// // x axis
// QAxis *axis = m_chart->axisX();
// axis->setAxisVisible(true);
// axis->setGridLineVisible(true);
// axis->setLabelsVisible(true);
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // // y axis
// axis = m_chart->axisY();
// axis->setAxisVisible(true);
// axis->setGridLineVisible(true);
// axis->setLabelsVisible(true);
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_model->clearMapping();
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
QString seriesColorHex = "#000000";
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // QPen pen;
// pen.setWidth(2);
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
if (m_lineRadioButton->isChecked())
{
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_chart->setAnimationOptions(QChart::NoAnimation);
// // series 1
// m_series = new QLineSeries;
// m_series->setModel(m_model);
// QXYModelMapper *mapper = new QXYModelMapper;
// mapper->setMapX(0);
// mapper->setMapY(1);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // mapper->setFirst(3);
// mapper->setCount(4);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_series->setModelMapper(mapper);
// // m_series->setModelMapping(0,1, Qt::Vertical);
// // m_series->setModelMappingRange(3, 4);
// m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->pen().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(0, 3, 2, 4));
// // series 2
// m_series = new QLineSeries;
// m_series->setModel(m_model);
// mapper = new QXYModelMapper;
// mapper->setMapX(3);
// mapper->setMapY(4);
// // mapper->setFirst(3);
// // mapper->setCount(4);
// m_series->setModelMapper(mapper);
// // m_series->setModelMapping(2,3, Qt::Vertical);
// m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->pen().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(3, 0, 2, 1000));
// // series 3
// m_series = new QLineSeries;
// m_series->setModel(m_model);
// mapper = new QXYModelMapper;
// mapper->setMapX(5);
// mapper->setMapY(6);
// mapper->setFirst(2);
// mapper->setCount(-1);
// m_series->setModelMapper(mapper);
// // m_series->setModelMapping(4,5, Qt::Vertical);
// // m_series->setModelMappingRange(2, -1);
// m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->pen().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(5, 2, 2, 1000));
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878 }
else if (m_splineRadioButton->isChecked())
{
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_chart->setAnimationOptions(QChart::NoAnimation);
Marek Rosa
Disabled some series from tablemodelchart app
r1091
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // // series 1
// m_series = new QSplineSeries;
// m_series->setModel(m_model);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // QXYModelMapper *mapper = new QXYModelMapper;
// mapper->setMapX(0);
// mapper->setMapY(1);
// mapper->setFirst(0);
// mapper->setCount(-1);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_series->setModelMapper(mapper);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->pen().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(0, 0, 2, 1000));
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // // series 2
// m_series = new QSplineSeries;
// m_series->setModel(m_model);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // mapper = new QXYModelMapper;
// mapper->setMapX(2);
// mapper->setMapY(3);
// mapper->setFirst(2);
// mapper->setCount(4);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_series->setModelMapper(mapper);
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->pen().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(2, 2, 2, 4));
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // // series 3
// m_series = new QSplineSeries;
// m_series->setModel(m_model);
Marek Rosa
Disabled some series from tablemodelchart app
r1091
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // mapper = new QXYModelMapper;
// mapper->setMapX(4);
// mapper->setMapY(5);
// mapper->setFirst(2);
// mapper->setCount(-1);
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_series->setModelMapper(mapper);
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->pen().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(4, 2, 2, 1000));
Marek Rosa
XYSeries model support refactored
r1085 }
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // else if (m_scatterRadioButton->isChecked())
// {
// m_chart->setAnimationOptions(QChart::NoAnimation);
// // series 1
// m_series = new QScatterSeries;
// m_series->setModel(m_model);
// m_series->setModelMapping(0,1, Qt::Vertical);
// // m_series->setModelMappingRange(2, 0);
// // series->setModelMapping(0,1, Qt::Horizontal);
// m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->brush().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(0, 2, 2, 1000));
// // series 2
// m_series = new QScatterSeries;
// m_series->setModel(m_model);
// m_series->setModelMapping(2,3, Qt::Vertical);
// // m_series->setModelMappingRange(1, 6);
// // series->setModelMapping(2,3, Qt::Horizontal);
// m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->brush().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(2, 1, 2, 6));
// // series 3
// m_series = new QScatterSeries;
// m_series->setModel(m_model);
// m_series->setModelMapping(4,5, Qt::Vertical);
// // series->setModelMapping(4,5, Qt::Horizontal);
// m_chart->addSeries(m_series);
// seriesColorHex = "#" + QString::number(m_series->brush().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(4, 0, 2, 1000));
// }
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 else if (m_pieRadioButton->isChecked())
{
m_chart->setAnimationOptions(QChart::SeriesAnimations);
// pie 1
Marek Rosa
Refactored PieSeriesModelMapper
r1231 m_pieSeries = new QPieSeries;
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230
Marek Rosa
Added Vertical and Horizontal PieModelMapper
r1237 m_pieMapper = new QVPieModelMapper;
m_pieMapper->setValuesColumn(1);
m_pieMapper->setLabelsColumn(7);
Marek Rosa
Refactored PieSeriesModelMapper
r1231 m_pieMapper->setSeries(m_pieSeries);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 m_pieMapper->setModel(m_model);
m_pieMapper->setFirst(2);
Marek Rosa
Some tests added for Vertical and Horizontal pie mappers
r1239 // m_pieMapper->setCount(5);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // pieSeries->setModelMapper(mapper);
Marek Rosa
Refactored PieSeriesModelMapper
r1231 m_pieSeries->setLabelsVisible(true);
m_pieSeries->setPieSize(0.75);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // pieSeries->setHorizontalPosition(0.2);
// pieSeries->setVerticalPosition(0.3);
Marek Rosa
Refactored PieSeriesModelMapper
r1231 m_chart->addSeries(m_pieSeries);
seriesColorHex = "#" + QString::number(m_pieSeries->slices().at(m_pieSeries->slices().count()/2)->brush().color().rgb(), 16).right(6).toUpper();
Marek Rosa
QPieModelMapper: added support for labelChanged and valueChanged signals from the slice
r1236 m_model->addMapping(seriesColorHex, QRect(0, 2, 2, 5));
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230
// pieSeries->slices().at(0)->setValue(400);
// pieSeries->slices().at(0)->setLabel(QString("36"));
// // pie 2
// pieSeries = new QPieSeries;
// pieSeries->setModel(m_model);
// pieSeries->setModelMapping(1,1, Qt::Vertical);
// pieSeries->setModelMappingRange(2, -1);
// pieSeries->setLabelsVisible(true);
// pieSeries->setPieSize(0.35);
// pieSeries->setHorizontalPosition(0.8);
// pieSeries->setVerticalPosition(0.3);
// m_chart->addSeries(pieSeries);
// seriesColorHex = "#" + QString::number(pieSeries->slices().at(pieSeries->slices().count()/2)->brush().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(1, 2, 1, 1000));
// // pie 3
// pieSeries = new QPieSeries;
// pieSeries->setModel(m_model);
// pieSeries->setModelMapping(2,2, Qt::Vertical);
// pieSeries->setLabelsVisible(true);
// pieSeries->setPieSize(0.35);
// pieSeries->setHorizontalPosition(0.5);
// pieSeries->setVerticalPosition(0.75);
// m_chart->addSeries(pieSeries);
// seriesColorHex = "#" + QString::number(pieSeries->slices().at(pieSeries->slices().count()/2)->brush().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(2, 0, 1, 1000));
// // special pie
// specialPie = new QPieSeries;
// specialPie->append(17, "1");
// specialPie->append(45, "2");
// specialPie->append(77, "3");
// specialPie->append(37, "4");
// specialPie->append(27, "5");
// specialPie->append(47, "6");
// specialPie->setPieSize(0.35);
// specialPie->setHorizontalPosition(0.8);
// specialPie->setVerticalPosition(0.75);
// specialPie->setLabelsVisible(true);
// m_chart->addSeries(specialPie);
}
Marek Rosa
Mapper class added for xyseries and pieseries. Model support commented out for barseries for now.
r1164 // else if (m_areaRadioButton->isChecked())
// {
// m_chart->setAnimationOptions(QChart::NoAnimation);
// QLineSeries* upperLineSeries = new QLineSeries;
// upperLineSeries->setModel(m_model);
// upperLineSeries->setModelMapping(0, 1, Qt::Vertical);
// // upperLineSeries->setModelMappingRange(1, 5);
// QLineSeries* lowerLineSeries = new QLineSeries;
// lowerLineSeries->setModel(m_model);
// lowerLineSeries->setModelMapping(2, 3, Qt::Vertical);
// QAreaSeries* areaSeries = new QAreaSeries(upperLineSeries, lowerLineSeries);
// m_chart->addSeries(areaSeries);
// seriesColorHex = "#" + QString::number(areaSeries->brush().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(0, 1, 2, 5));
// m_model->addMapping(seriesColorHex, QRect(2, 0, 2, 1000));
// }
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 else if (m_barRadioButton->isChecked())
{
// m_chart->setAnimationOptions(QChart::SeriesAnimations);
// QGroupedBarSeries* barSeries = new QGroupedBarSeries();
// barSeries->setCategories(QStringList());
// barSeries->setModel(m_model);
// // barSeries->setModelMappingRange(2, 5);
//// barSeries->setModelMapping(5, 2, 4, Qt::Vertical);
// QBarModelMapper *mapper = new QBarModelMapper;
// mapper->setMapCategories(5);
// mapper->setMapBarBottom(2);
// mapper->setMapBarTop(4);
// barSeries->setModelMapper(mapper);
// m_chart->addSeries(barSeries);
// QList<QBarSet*> barsets = barSeries->barSets();
// for (int i = 0; i < barsets.count(); i++) {
// seriesColorHex = "#" + QString::number(barsets.at(i)->brush().color().rgb(), 16).right(6).toUpper();
// m_model->addMapping(seriesColorHex, QRect(2 + i, 0, 1, 1000));
// }
}
if (!m_barRadioButton->isChecked()) {
m_chart->axisX()->setRange(0, 500);
m_chart->axisY()->setRange(0, 220);
}
Marek Rosa
For BarChart labels for legend are now taken from model's headerData (row or column)
r1012 m_chart->legend()->setVisible(true);
Marek Rosa
Small updates to tablemodelchart example
r861
Marek Rosa
tablemodelchart: axes re-enabled on toggle (pie disables them)
r878 // repaint table view colors
m_tableView->repaint();
m_tableView->setFocus();
}
Marek Rosa
Table model data example
r519 }
Marek Rosa
PieSeries: model now supports custom mapping.
r1056 void TableWidget::testPie()
{
Marek Rosa
Refactored PieSeriesModelMapper
r1231 // m_pieMapper->setCount(-1);
QPieSlice *slice = new QPieSlice("Hehe", 145);
slice->setLabelVisible();
m_pieSeries->append(slice);
slice = new QPieSlice("Hoho", 34);
slice->setLabelVisible();
m_pieSeries->append(slice);
Marek Rosa
All model related methods and members removed from the series. QML stuff commented out where complaining
r1230 // m_series->modelMapper()->setMapX(4);
// m_tableView->setColumnWidth(10, 250);
Marek Rosa
Improvements to QSpline model support
r1090 // if (specialPie) {
// specialPie->remove(specialPie->slices().at(2));
// // specialPie->insert(4, new QPieSlice(45, "Hello"));//specialPie->slices.at(2));
// specialPie->append(4, "heloo");
// }
Marek Rosa
PieSeries: model now supports custom mapping.
r1056 }
Marek Rosa
Refactored PieSeriesModelMapper
r1231 void TableWidget::testPie2()
{
QPieSlice *slice;
if (m_pieSeries->count() > 0) {
slice = m_pieSeries->slices().last();
m_pieSeries->remove(slice);
}
if (m_pieSeries->count() > 0) {
slice = m_pieSeries->slices().first();
m_pieSeries->remove(slice);
}
}
Marek Rosa
QPieModelMapper: added support for labelChanged and valueChanged signals from the slice
r1236 void TableWidget::testPie3()
{
QPieSlice *slice;
if (m_pieSeries->count() > 0) {
slice = m_pieSeries->slices().last();
slice->setLabel("Dalej");
slice->setValue(222);
}
if (m_pieSeries->count() > 0) {
slice = m_pieSeries->slices().first();
slice->setLabel("Prawie");
slice->setValue(111);
}
}
Marek Rosa
Table model data example
r519 TableWidget::~TableWidget()
{
Michal Klocek
Changes QChartAxis -> QAxis
r1006
Marek Rosa
Table model data example
r519 }