##// END OF EJS Templates
Fix legend drawing on font change...
Fix legend drawing on font change The legend items are hidden when the font is changed to avoid flashing on update. The correct visibility is set for legend items when new geometry is set for LegendLayout. Task-number: QTRD-2523 Change-Id: If5907a1c4d7fa538a08d628c30972f2d0fa3ed84 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>

File last commit:

r2607:dfd05e587e31
r2652:e2168840d81f
Show More
charttitle.cpp
91 lines | 2.4 KiB | text/x-c | CppLexer
Michal Klocek
Refactors layout...
r1965 /****************************************************************************
**
Miikka Heikkinen
Fixed the copyright year 2012 -> 2013
r2432 ** Copyright (C) 2013 Digia Plc
Michal Klocek
Refactors layout...
r1965 ** All rights reserved.
** For any questions to Digia, please use contact form at http://qt.digia.com
**
Miikka Heikkinen
Qt Commercial -> Qt Enterprise...
r2574 ** This file is part of the Qt Enterprise Charts Add-on.
Michal Klocek
Refactors layout...
r1965 **
** $QT_BEGIN_LICENSE$
Miikka Heikkinen
Qt Commercial -> Qt Enterprise...
r2574 ** Licensees holding valid Qt Enterprise licenses may use this file in
** accordance with the Qt Enterprise License Agreement provided with the
Michal Klocek
Refactors layout...
r1965 ** 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$
**
****************************************************************************/
#include "charttitle_p.h"
Miikka Heikkinen
Added HTML support for various text items...
r2539 #include "chartpresenter_p.h"
Michal Klocek
Refactors layout...
r1965 #include <QFont>
#include <QFontMetrics>
#include <QDebug>
Miikka Heikkinen
Fix text item margins...
r2592 #include <QTextDocument>
Michal Klocek
Refactors layout...
r1965
QTCOMMERCIALCHART_BEGIN_NAMESPACE
Jani Honkonen
more coding style fixes for src-folder...
r2104 ChartTitle::ChartTitle(QGraphicsItem *parent)
Miikka Heikkinen
Added HTML support for various text items...
r2539 : QGraphicsTextItem(parent)
Michal Klocek
Refactors layout...
r1965 {
Miikka Heikkinen
Fix text item margins...
r2592 document()->setDocumentMargin(ChartPresenter::textMargin());
Michal Klocek
Refactors layout...
r1965 }
ChartTitle::~ChartTitle()
{
}
void ChartTitle::setText(const QString &text)
{
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 m_text = text;
Michal Klocek
Refactors layout...
r1965 }
QString ChartTitle::text() const
{
return m_text;
}
void ChartTitle::setGeometry(const QRectF &rect)
{
Titta Heikkala
Fix multiline alignment...
r2607 QRectF truncatedRect;
Titta Heikkala
Fix long labels visibility for QBarChart...
r2604 QGraphicsTextItem::setHtml(ChartPresenter::truncatedText(font(), m_text, qreal(0.0),
rect.width(), rect.height(),
Titta Heikkala
Fix multiline alignment...
r2607 truncatedRect));
QGraphicsTextItem::setTextWidth(truncatedRect.width());
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 setPos(rect.topLeft());
Michal Klocek
Refactors layout...
r1965 }
QSizeF ChartTitle::sizeHint(Qt::SizeHint which, const QSizeF &constraint) const
{
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 Q_UNUSED(constraint);
QSizeF sh;
Michal Klocek
Refactors layout...
r1965
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 switch (which) {
Miikka Heikkinen
Added HTML support for various text items...
r2539 case Qt::MinimumSize: {
QRectF titleRect = ChartPresenter::textBoundingRect(font(), "...");
sh = QSizeF(titleRect.width(), titleRect.height());
Michal Klocek
Refactors layout...
r1965 break;
Miikka Heikkinen
Added HTML support for various text items...
r2539 }
Michal Klocek
Refactors layout...
r1965 case Qt::PreferredSize:
Miikka Heikkinen
Added HTML support for various text items...
r2539 case Qt::MaximumSize: {
QRectF titleRect = ChartPresenter::textBoundingRect(font(), m_text);
sh = QSizeF(titleRect.width(), titleRect.height());
Michal Klocek
Refactors layout...
r1965 break;
Miikka Heikkinen
Added HTML support for various text items...
r2539 }
case Qt::MinimumDescent: {
QFontMetrics fn(font());
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 sh = QSizeF(0, fn.descent());
Michal Klocek
Refactors layout...
r1965 break;
Miikka Heikkinen
Added HTML support for various text items...
r2539 }
Michal Klocek
Refactors layout...
r1965 default:
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 break;
}
Michal Klocek
Refactors layout...
r1965
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 return sh;
Michal Klocek
Refactors layout...
r1965 }
QTCOMMERCIALCHART_END_NAMESPACE