mirror of
https://github.com/GoldenCheetah/GoldenCheetah.git
synced 2026-02-15 08:59:55 +00:00
This commit is based on https://github.com/GoldenCheetah/GoldenCheetah/pull/3956 with the following additions / changes: * Upgraded to the latest version of the multiaxes-branch, thus eliminating crashes of GoldenCheetah on startup * Disabled the emitting of Layout Requests on geometry changes of QwtScaleWidget - without this, CPU utilization was up to 100% on one core * Added the class SplineLookup, reusing small portions of code from Qwt 6.1 * Re-added the splines in WPrime and RideFile (resampling), using the new interface of QwtSpline * Appveyor: qwt in cache-section now depends on qwt/qwtconfig.prin.in for refresh on version change
92 lines
1.7 KiB
C++
92 lines
1.7 KiB
C++
/******************************************************************************
|
|
* Qwt Widget Library
|
|
* Copyright (C) 1997 Josef Wilgen
|
|
* Copyright (C) 2002 Uwe Rathmann
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the Qwt License, Version 1.0
|
|
*****************************************************************************/
|
|
|
|
#include "qwt_plot_svgitem.h"
|
|
#include "qwt_text.h"
|
|
#include "qwt_graphic.h"
|
|
|
|
#include <qsvgrenderer.h>
|
|
|
|
/*!
|
|
\brief Constructor
|
|
\param title Title
|
|
*/
|
|
QwtPlotSvgItem::QwtPlotSvgItem( const QString& title )
|
|
: QwtPlotGraphicItem( QwtText( title ) )
|
|
{
|
|
}
|
|
|
|
/*!
|
|
\brief Constructor
|
|
\param title Title
|
|
*/
|
|
QwtPlotSvgItem::QwtPlotSvgItem( const QwtText& title )
|
|
: QwtPlotGraphicItem( title )
|
|
{
|
|
}
|
|
|
|
//! Destructor
|
|
QwtPlotSvgItem::~QwtPlotSvgItem()
|
|
{
|
|
}
|
|
|
|
/*!
|
|
Load a SVG file
|
|
|
|
\param rect Bounding rectangle
|
|
\param fileName SVG file name
|
|
|
|
\return true, if the SVG file could be loaded
|
|
*/
|
|
bool QwtPlotSvgItem::loadFile( const QRectF& rect,
|
|
const QString& fileName )
|
|
{
|
|
QwtGraphic graphic;
|
|
|
|
QSvgRenderer renderer;
|
|
|
|
const bool ok = renderer.load( fileName );
|
|
if ( ok )
|
|
{
|
|
QPainter p( &graphic );
|
|
renderer.render( &p );
|
|
}
|
|
|
|
setGraphic( rect, graphic );
|
|
|
|
return ok;
|
|
}
|
|
|
|
/*!
|
|
Load SVG data
|
|
|
|
\param rect Bounding rectangle
|
|
\param data in SVG format
|
|
|
|
\return true, if the SVG data could be loaded
|
|
*/
|
|
bool QwtPlotSvgItem::loadData( const QRectF& rect,
|
|
const QByteArray& data )
|
|
{
|
|
QwtGraphic graphic;
|
|
|
|
QSvgRenderer renderer;
|
|
|
|
const bool ok = renderer.load( data );
|
|
if ( ok )
|
|
{
|
|
QPainter p( &graphic );
|
|
renderer.render( &p );
|
|
}
|
|
|
|
setGraphic( rect, graphic );
|
|
|
|
return ok;
|
|
}
|