##// END OF EJS Templates
Fix label truncate issues with multiple axes...
Fix label truncate issues with multiple axes If there were multiple axes on single side of the chart, the axes wider/higher than average never got their preferred size, causing labels to truncate. Fixed by calculating the required squeeze ratio instead of just blindly using even fraction of available space. Task-number: QTRD-1897 Reviewed-by: Mika Salmela

File last commit:

r2285:4f83a7b69b9c
r2411:6fca0e6f42a3
Show More
qabstractseries_p.h
99 lines | 2.7 KiB | text/x-c | CLexer
/ src / qabstractseries_p.h
Michal Klocek
Adds big fat pimpl to series classes...
r938 /****************************************************************************
**
** 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$
**
****************************************************************************/
// W A R N I N G
// -------------
//
// This file is not part of the QtCommercial Chart API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 #ifndef QABSTRACTSERIES_P_H
#define QABSTRACTSERIES_P_H
Michal Klocek
Adds big fat pimpl to series classes...
r938
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 #include "qabstractseries.h"
Michal Klocek
Refactors internals...
r2273 #include "qchart.h"
Marek Rosa
Domains added
r2275 #include "abstractdomain_p.h"
Michal Klocek
Refactors internals...
r2273
class QGraphicsItem;
Michal Klocek
Adds big fat pimpl to series classes...
r938
QTCOMMERCIALCHART_BEGIN_NAMESPACE
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 class ChartPresenter;
Michal Klocek
Refactors Chart to ChartElement
r1736 class ChartElement;
Michal Klocek
Adds qlegend pimpl...
r950 class LegendMarker;
class QLegend;
Michal Klocek
Adds if series deleted , remove series from chart
r1062 class ChartDataSet;
Michal Klocek
Adds missing functions to qchart API
r1542 class QAbstractAxis;
sauimone
Added createLegendMarkers to private series. This will replace old createLegendMarker method. Notice the s in new method name. PIMPL for QLegendMarker. Newlegend example updated a bit
r2163 class QLegendMarker;
Michal Klocek
Refactors internals...
r2273 class ChartTheme;
class ChartAnimation;
class ChartItem;
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 class QAbstractSeriesPrivate : public QObject
Michal Klocek
Adds big fat pimpl to series classes...
r938 {
Michal Klocek
Krazy reported errors...
r974 Q_OBJECT
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 public:
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 QAbstractSeriesPrivate(QAbstractSeries *q);
~QAbstractSeriesPrivate();
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943
Michal Klocek
Refactors internals...
r2273 virtual void initializeDomain() = 0;
virtual void initializeAxes() = 0;
virtual void initializeTheme(int index, ChartTheme* theme, bool forced = false) = 0;
virtual void initializeGraphics(QGraphicsItem* parent) = 0;
virtual void initializeAnimations(QChart::AnimationOptions options) = 0;
sauimone
Added createLegendMarkers to private series. This will replace old createLegendMarker method. Notice the s in new method name. PIMPL for QLegendMarker. Newlegend example updated a bit
r2163 virtual QList<QLegendMarker*> createLegendMarkers(QLegend* legend) = 0;
Michal Klocek
Refactors internals...
r2273
Michal Klocek
Adds axis domain intialization
r1695 virtual QAbstractAxis::AxisType defaultAxisType(Qt::Orientation) const = 0;
Michal Klocek
Refactors internals...
r2273 virtual QAbstractAxis* createDefaultAxis(Qt::Orientation) const = 0;
ChartItem* chartItem() { return m_item.data(); }
Michal Klocek
Domain not sharable again
r2285 virtual void setDomain(AbstractDomain* domain);
AbstractDomain* domain() { return m_domain.data(); }
Michal Klocek
Refactors internals...
r2273
QChart* chart() { return m_chart; }
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943
sauimone
legend private implemantation modified.
r2081 Q_SIGNALS:
Michal Klocek
Fixes legend markers updates
r2085 void countChanged();
sauimone
legend private implemantation modified.
r2081
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943 protected:
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 QAbstractSeries *q_ptr;
Jani Honkonen
Implemented QAbstractSeries::chart()...
r1314 QChart *m_chart;
Michal Klocek
Refactors internals...
r2273 QScopedPointer<ChartItem> m_item;
QList<QAbstractAxis*> m_axes;
private:
Michal Klocek
Domain not sharable again
r2285 QScopedPointer<AbstractDomain> m_domain;
Michal Klocek
Adds big fat pimpl to series classes...
r938 QString m_name;
Tero Ahola
Visible property to abstract series
r1342 bool m_visible;
Tero Ahola
Added opacity property to QAbstractSeries
r2067 qreal m_opacity;
Michal Klocek
Refactor to use qseries private for implmentation interface...
r943
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 friend class QAbstractSeries;
Michal Klocek
Adds if series deleted , remove series from chart
r1062 friend class ChartDataSet;
Michal Klocek
Refactors internals...
r2273 friend class ChartPresenter;
Michal Klocek
Fixes legend markers updates
r2085 friend class QLegendPrivate;
Michal Klocek
Adds big fat pimpl to series classes...
r938 };
QTCOMMERCIALCHART_END_NAMESPACE
#endif