##// END OF EJS Templates
Return empty brush/pen/font via API rather than the weird default one...
Return empty brush/pen/font via API rather than the weird default one Previously a non-initialized QPen()/QBrush()/QFont() was returned if axis/series hadn't been added to a chart yet and therefore had not been themed yet. To keep API somewhat consistent with old behavior, return non-initialized QPen()/QBrush()/QFont() instead of the weird default one in these cases. The new behavior is slightly different in that it is no longer possible to restore themed behavior by setting pen/brush/font to non-initialized one, but since there is no way to differentiate e.g. legitimate Qt::black pen from non-initialized pen, we can no longer support this behavior. Change-Id: I99f3d8853b329b5345e3073c040d8bfa8b9b75b4 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>

File last commit:

r2432:53927f716a3d
r2519:9ea7d7fe3500
Show More
qlegend.h
107 lines | 3.1 KiB | text/x-c | CLexer
Jani Honkonen
Add license headers
r794 /****************************************************************************
**
Miikka Heikkinen
Fixed the copyright year 2012 -> 2013
r2432 ** Copyright (C) 2013 Digia Plc
Jani Honkonen
Add license headers
r794 ** 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$
**
****************************************************************************/
sauimone
framework for legend
r524 #ifndef QLEGEND_H
#define QLEGEND_H
Tero Ahola
Fixed QChartGlobal include statement in QLegend header
r1836 #include <qchartglobal.h>
Michal Klocek
Fix attempt to wrong graphics items hadnling
r790 #include <QGraphicsWidget>
sauimone
minor code review fixes
r762 #include <QPen>
#include <QBrush>
sauimone
framework for legend
r524
QTCOMMERCIALCHART_BEGIN_NAMESPACE
Michal Klocek
Fix attempt to wrong graphics items hadnling
r790 class QChart;
Michal Klocek
Adds qlegend pimpl...
r950 class QLegendPrivate;
sauimone
first prototry of QLegendMarker API
r2160 class QLegendMarker;
sauimone
refactoring
r2167 class QAbstractSeries;
sauimone
framework for legend
r524
Michal Klocek
Fix attempt to wrong graphics items hadnling
r790 class QTCOMMERCIALCHART_EXPORT QLegend : public QGraphicsWidget
sauimone
framework for legend
r524 {
Q_OBJECT
Tero Ahola
color and borderColor properties to XY charts; removed unnecessary signals
r1481 Q_PROPERTY(Qt::Alignment alignment READ alignment WRITE setAlignment)
Tero Ahola
Adding legend properties
r1452 Q_PROPERTY(bool backgroundVisible READ isBackgroundVisible WRITE setBackgroundVisible NOTIFY backgroundVisibleChanged)
Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged)
Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor NOTIFY borderColorChanged)
sauimone
legend font fix
r1522 Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged)
sauimone
legend theme fix
r1527 Q_PROPERTY(QColor labelColor READ labelColor WRITE setLabelColor NOTIFY labelColorChanged)
sauimone
legend pos to theme example, legend padding
r803
Michal Klocek
Fix attempt to wrong graphics items hadnling
r790 private:
explicit QLegend(QChart *chart);
sauimone
legend layouting change
r616
Michal Klocek
Fix attempt to wrong graphics items hadnling
r790 public:
Michal Klocek
Adds qlegend pimpl...
r950 ~QLegend();
sauimone
framework for legend
r524 void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0);
Tero Ahola
Code review: Fixed simple issues in Bar and Legend
r737 void setBrush(const QBrush &brush);
Michal Klocek
Adds force option to chartTheme...
r645 QBrush brush() const;
Tero Ahola
Adding legend properties
r1452 void setColor(QColor color);
QColor color();
Michal Klocek
Adds force option to chartTheme...
r645
Tero Ahola
Code review: Fixed simple issues in Bar and Legend
r737 void setPen(const QPen &pen);
Michal Klocek
Adds force option to chartTheme...
r645 QPen pen() const;
Tero Ahola
Adding legend properties
r1452 void setBorderColor(QColor color);
QColor borderColor();
sauimone
background to legend, theme applies
r540
sauimone
legend font fix
r1522 void setFont(const QFont &font);
QFont font() const;
sauimone
legend theme fix
r1527 void setLabelBrush(const QBrush &brush);
QBrush labelBrush() const;
void setLabelColor(QColor color);
QColor labelColor() const;
sauimone
legend font fix
r1522
Tero Ahola
Qml ChartView properties; legend to use Qt alignments
r1357 void setAlignment(Qt::Alignment alignment);
Qt::Alignment alignment() const;
sauimone
legend layouting change
r616
sauimone
legend layout with padding
r799 void detachFromChart();
void attachToChart();
Michal Klocek
Refactor qledgend handling...
r855 bool isAttachedToChart();
sauimone
changed legend default visibility
r882 void setBackgroundVisible(bool visible = true);
Michal Klocek
Refactor qledgend handling...
r855 bool isBackgroundVisible() const;
sauimone
optional series parameter to markers function. code style fixes
r2193 QList <QLegendMarker*> markers(QAbstractSeries *series = 0) const;
sauimone
first prototry of QLegendMarker API
r2160
Michal Klocek
Refactor qledgend handling...
r855 protected:
void hideEvent(QHideEvent *event);
void showEvent(QShowEvent *event);
sauimone
Separated legend marker to private header. Added signals for left and right mouse click
r547
Tero Ahola
Qml ChartView properties; legend to use Qt alignments
r1357 Q_SIGNALS:
Tero Ahola
Adding legend properties
r1452 void backgroundVisibleChanged(bool visible);
void colorChanged(QColor color);
void borderColorChanged(QColor color);
sauimone
legend font fix
r1522 void fontChanged(QFont font);
sauimone
legend theme fix
r1527 void labelColorChanged(QColor color);
Tero Ahola
Qml ChartView properties; legend to use Qt alignments
r1357
Michal Klocek
Refactor qledgend handling...
r855 private:
Michal Klocek
Adds qlegend pimpl...
r950 QScopedPointer<QLegendPrivate> d_ptr;
Tero Ahola
Adding legend properties
r1452 Q_DISABLE_COPY(QLegend)
Michal Klocek
Adds qlegend pimpl...
r950 friend class LegendScroller;
Michal Klocek
Refactors layout managment...
r1534 friend class LegendLayout;
friend class ChartLayout;
sauimone
Legend can now handle clicked and do scrolling
r2183 friend class LegendMarkerItem;
sauimone
fix to QTRD-1674: layout is not calculated correctly after the change in the text of legend marker
r2194 friend class QLegendMarkerPrivate;
Michal Klocek
Adds ScrolledQLegend...
r859 };
sauimone
framework for legend
r524 QTCOMMERCIALCHART_END_NAMESPACE
#endif // QLEGEND_H