##// END OF EJS Templates
Screen shots for Custom Legend, Oscilloscope and HBar chart
Screen shots for Custom Legend, Oscilloscope and HBar chart

File last commit:

r1940:c7b5c0b5fd0b
r2359:683da280a5a5
Show More
declarativemodel.cpp
110 lines | 3.0 KiB | text/x-c | CppLexer
Tero Ahola
Draft version for QML PieSeries model API
r1130 /****************************************************************************
**
** 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$
**
****************************************************************************/
Tero Ahola
Draft for QML demo that shows weather forecasts
r1139 #include "declarativemodel.h"
Tero Ahola
Draft version for QML PieSeries model API
r1130 #include <qdeclarativelist.h>
Tero Ahola
Fixed Qml Custom Model demo header data
r1395 #include <QStringList>
Tero Ahola
Draft for QML demo that shows weather forecasts
r1139 #include <QDebug>
Tero Ahola
Draft version for QML PieSeries model API
r1130
Tero Ahola
QML custom model demo now implements it's own QAbstractItemModel based model
r1272 ////////////// Table model element ///////////////////
Tero Ahola
Now using only one declarative model
r1169
Tero Ahola
Cleaning up ChartModel impl before moving it into a demo app
r1190 DeclarativeTableModelElement::DeclarativeTableModelElement(QObject *parent)
Tero Ahola
Now using only one declarative model
r1169 : QObject(parent)
{
}
Tero Ahola
Cleaning up ChartModel impl before moving it into a demo app
r1190 QVariantList DeclarativeTableModelElement::values()
Tero Ahola
Now using only one declarative model
r1169 {
return m_values;
}
Tero Ahola
Cleaning up ChartModel impl before moving it into a demo app
r1190 void DeclarativeTableModelElement::setValues(QVariantList values)
Tero Ahola
Now using only one declarative model
r1169 {
m_values = values;
}
////////////// Table model ///////////////////
Tero Ahola
Added declarative model for bar series
r1162
DeclarativeTableModel::DeclarativeTableModel(QObject *parent) :
Tero Ahola
QML custom model demo now implements it's own QAbstractItemModel based model
r1272 CustomTableModel(parent)
Tero Ahola
Added declarative model for bar series
r1162 {
}
void DeclarativeTableModel::classBegin()
{
}
void DeclarativeTableModel::componentComplete()
{
Tero Ahola
QML and static data in pie and xy series
r1186 foreach (QObject *child, children()) {
Tero Ahola
Cleaning up ChartModel impl before moving it into a demo app
r1190 if (qobject_cast<DeclarativeTableModelElement *>(child)) {
Tero Ahola
Header data to QML custom model demo
r1387 DeclarativeTableModelElement *element = qobject_cast<DeclarativeTableModelElement *>(child);
append(element->values());
Tero Ahola
QML and static data in pie and xy series
r1186 }
}
Tero Ahola
Added declarative model for bar series
r1162 }
Tero Ahola
Fixed Qml Custom Model demo header data
r1395 void DeclarativeTableModel::setVerticalHeaders(QStringList headers)
{
for (int i(0); i < headers.count(); i++)
setHeaderData(i, Qt::Vertical, headers.at(i));
}
QStringList DeclarativeTableModel::verticalHeaders()
{
return QStringList();
}
Tero Ahola
Added declarative model for bar series
r1162 QDeclarativeListProperty<QObject> DeclarativeTableModel::modelChildren()
{
return QDeclarativeListProperty<QObject>(this, 0, &DeclarativeTableModel::appendModelChild);
}
void DeclarativeTableModel::appendModelChild(QDeclarativeListProperty<QObject> *list,
QObject *child)
{
Jani Honkonen
Fix spelling errors
r1940 // children are added in componentComplete instead
Tero Ahola
Added declarative model for bar series
r1162 Q_UNUSED(list)
Q_UNUSED(child)
}
Tero Ahola
Now using only one declarative model
r1169 void DeclarativeTableModel::append(QVariantList values)
Tero Ahola
Added declarative model for bar series
r1162 {
Tero Ahola
Now using only one declarative model
r1169 // qDebug() << "DeclarativeTableModel::append:" << values;
Tero Ahola
Added declarative model for bar series
r1162
Tero Ahola
Now using only one declarative model
r1169 while (columnCount() < values.count())
insertColumn(columnCount());
Tero Ahola
Draft for QML demo that shows weather forecasts
r1139
Tero Ahola
Now using only one declarative model
r1169 insertRow(rowCount());
QModelIndex beginIndex = QModelIndex();
QModelIndex endIndex = QModelIndex();
for (int i(0); i < values.count(); i++) {
QModelIndex modelIndex = createIndex(rowCount() - 1, i);
if (i == 0)
beginIndex = modelIndex;
if (i == (values.count() - 1))
endIndex = modelIndex;
setData(modelIndex, values.at(i));
}
dataChanged(beginIndex, endIndex);
Tero Ahola
Draft version for QML PieSeries model API
r1130 }
Tero Ahola
Draft for QML demo that shows weather forecasts
r1139 #include "moc_declarativemodel.cpp"