avoid using deprecated calls
This commit is contained in:
parent
53e924a999
commit
062713e8cc
@ -12,7 +12,8 @@
|
|||||||
#include <QskBoxShapeMetrics.h>
|
#include <QskBoxShapeMetrics.h>
|
||||||
#include <QskTextColors.h>
|
#include <QskTextColors.h>
|
||||||
#include <QskTextNode.h>
|
#include <QskTextNode.h>
|
||||||
#include <QskTextOptions.h> // ### remove
|
#include <QskTextOptions.h>
|
||||||
|
#include <QskFunctions.h>
|
||||||
|
|
||||||
#include <QFontMetrics>
|
#include <QFontMetrics>
|
||||||
#include <QSGFlatColorMaterial>
|
#include <QSGFlatColorMaterial>
|
||||||
@ -174,7 +175,7 @@ QSGNode* SpeedometerSkinlet::updateLabelsNode( const Speedometer* speedometer, Q
|
|||||||
{
|
{
|
||||||
const QString& text = labels.at( i );
|
const QString& text = labels.at( i );
|
||||||
|
|
||||||
auto w = fontMetrics.width( text );
|
auto w = qskHorizontalAdvance( fontMetrics, text );
|
||||||
auto h = fontMetrics.height();
|
auto h = fontMetrics.height();
|
||||||
auto adjustX = ( -0.5 * cosine - 0.5 ) * w;
|
auto adjustX = ( -0.5 * cosine - 0.5 ) * w;
|
||||||
auto adjustY = ( -0.5 * sine - 0.5 ) * h;
|
auto adjustY = ( -0.5 * sine - 0.5 ) * h;
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
#include <QskObjectCounter.h>
|
#include <QskObjectCounter.h>
|
||||||
#include <QskSimpleListBox.h>
|
#include <QskSimpleListBox.h>
|
||||||
#include <QskWindow.h>
|
#include <QskWindow.h>
|
||||||
|
#include <QskFunctions.h>
|
||||||
|
|
||||||
#include <QFontMetricsF>
|
#include <QFontMetricsF>
|
||||||
#include <QGuiApplication>
|
#include <QGuiApplication>
|
||||||
@ -46,8 +47,8 @@ class ListBox : public QskSimpleListBox
|
|||||||
// can prevent the list box from having to find it out
|
// can prevent the list box from having to find it out
|
||||||
// the expensive way.
|
// the expensive way.
|
||||||
|
|
||||||
const QFontMetricsF fm( effectiveFont( Cell ) );
|
const qreal maxWidth = qskHorizontalAdvance( effectiveFont( Cell ), entries.last() );
|
||||||
setColumnWidthHint( 0, fm.width( entries.last() ) );
|
setColumnWidthHint( 0, maxWidth );
|
||||||
|
|
||||||
append( entries );
|
append( entries );
|
||||||
}
|
}
|
||||||
|
@ -166,3 +166,5 @@ debug {
|
|||||||
|
|
||||||
# Help out Qt Creator
|
# Help out Qt Creator
|
||||||
ide: DEFINES += QT_IDE
|
ide: DEFINES += QT_IDE
|
||||||
|
|
||||||
|
# DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000
|
||||||
|
@ -6,6 +6,8 @@
|
|||||||
#include "TestBox.h"
|
#include "TestBox.h"
|
||||||
|
|
||||||
#include <QskSizePolicy.h>
|
#include <QskSizePolicy.h>
|
||||||
|
#include <QskFunctions.h>
|
||||||
|
|
||||||
#include <QApplication>
|
#include <QApplication>
|
||||||
#include <QListWidget>
|
#include <QListWidget>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
@ -367,9 +369,7 @@ class MainWidget : public QWidget
|
|||||||
const auto r = contentsRect();
|
const auto r = contentsRect();
|
||||||
const int spacing = 5;
|
const int spacing = 5;
|
||||||
|
|
||||||
auto fm = QFontMetricsF( m_listBox->font() );
|
const int w1 = qskHorizontalAdvance( m_listBox->font(), "Test 100" ) + 20;
|
||||||
|
|
||||||
const int w1 = fm.width( "Test 100" ) + 20;
|
|
||||||
const int w2 = r.width() - w1 - spacing;
|
const int w2 = r.width() - w1 - spacing;
|
||||||
|
|
||||||
m_listBox->setGeometry( r.left(), r.top(), w1, r.height() );
|
m_listBox->setGeometry( r.left(), r.top(), w1, r.height() );
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
#include <QskAspect.h>
|
#include <QskAspect.h>
|
||||||
#include <QskWindow.h>
|
#include <QskWindow.h>
|
||||||
|
#include <QskFunctions.h>
|
||||||
|
|
||||||
#include <QskObjectCounter.h>
|
#include <QskObjectCounter.h>
|
||||||
|
|
||||||
@ -202,7 +203,7 @@ class LocaleListView final : public QskListView
|
|||||||
const QFontMetricsF fm( effectiveFont( Text ) );
|
const QFontMetricsF fm( effectiveFont( Text ) );
|
||||||
|
|
||||||
for ( const auto& entry : m_values )
|
for ( const auto& entry : m_values )
|
||||||
m_maxWidth = qMax( m_maxWidth, fm.width( entry.first ) );
|
m_maxWidth = qMax( m_maxWidth, qskHorizontalAdvance( fm, entry.first ) );
|
||||||
|
|
||||||
const QMarginsF padding = marginsHint( Cell | Padding );
|
const QMarginsF padding = marginsHint( Cell | Padding );
|
||||||
m_maxWidth += padding.left() + padding.right();
|
m_maxWidth += padding.left() + padding.right();
|
||||||
|
@ -3,8 +3,11 @@
|
|||||||
#include <qguiapplication.h>
|
#include <qguiapplication.h>
|
||||||
#include <qmath.h>
|
#include <qmath.h>
|
||||||
#include <qscreen.h>
|
#include <qscreen.h>
|
||||||
|
#include <qfont.h>
|
||||||
|
#include <qfontmetrics.h>
|
||||||
|
|
||||||
QSK_QT_PRIVATE_BEGIN
|
QSK_QT_PRIVATE_BEGIN
|
||||||
|
#include <private/qhighdpiscaling_p.h>
|
||||||
#include <private/qguiapplication_p.h>
|
#include <private/qguiapplication_p.h>
|
||||||
QSK_QT_PRIVATE_END
|
QSK_QT_PRIVATE_END
|
||||||
|
|
||||||
@ -146,6 +149,20 @@ qreal qskDpiScaled( qreal value )
|
|||||||
return value * factor;
|
return value * factor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
qreal qskHorizontalAdvance( const QFont& font, const QString& text )
|
||||||
|
{
|
||||||
|
return qskHorizontalAdvance( QFontMetricsF( font ), text );
|
||||||
|
}
|
||||||
|
|
||||||
|
qreal qskHorizontalAdvance( const QFontMetricsF& fontMetrics, const QString& text )
|
||||||
|
{
|
||||||
|
#if QT_VERSION >= QT_VERSION_CHECK( 5, 11, 0 )
|
||||||
|
return fontMetrics.horizontalAdvance( text );
|
||||||
|
#else
|
||||||
|
return fontMetrics.width( text );
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
bool qskHasPlatformWindowManagement()
|
bool qskHasPlatformWindowManagement()
|
||||||
{
|
{
|
||||||
if ( auto platform = QGuiApplicationPrivate::platformIntegration() )
|
if ( auto platform = QGuiApplicationPrivate::platformIntegration() )
|
||||||
@ -162,17 +179,9 @@ QRect qskPlatformScreenGeometry( const QScreen* screen )
|
|||||||
return screen->handle()->geometry();
|
return screen->handle()->geometry();
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
|
||||||
|
|
||||||
QSK_QT_PRIVATE_BEGIN
|
|
||||||
#include <private/qhighdpiscaling_p.h>
|
|
||||||
QSK_QT_PRIVATE_END
|
|
||||||
|
|
||||||
qreal qskGlobalScaleFactor()
|
qreal qskGlobalScaleFactor()
|
||||||
{
|
{
|
||||||
// The value of QT_SCALE_FACTOR
|
// The value of QT_SCALE_FACTOR
|
||||||
const QScreen* noScreen = nullptr;
|
const QScreen* noScreen = nullptr;
|
||||||
return QHighDpiScaling::factor( noScreen );
|
return QHighDpiScaling::factor( noScreen );
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
@ -12,6 +12,9 @@
|
|||||||
#include <qrect.h>
|
#include <qrect.h>
|
||||||
|
|
||||||
class QScreen;
|
class QScreen;
|
||||||
|
class QFont;
|
||||||
|
class QFontMetricsF;
|
||||||
|
class QString;
|
||||||
|
|
||||||
QSK_EXPORT qreal qskDpiScaled( qreal value );
|
QSK_EXPORT qreal qskDpiScaled( qreal value );
|
||||||
QSK_EXPORT bool qskHasPlatformWindowManagement();
|
QSK_EXPORT bool qskHasPlatformWindowManagement();
|
||||||
@ -29,6 +32,9 @@ QSK_EXPORT QRectF qskInnerRectF( const QRectF& rect );
|
|||||||
QSK_EXPORT QRectF qskValidOrEmptyInnerRect(
|
QSK_EXPORT QRectF qskValidOrEmptyInnerRect(
|
||||||
const QRectF& rect, const QMarginsF& margins );
|
const QRectF& rect, const QMarginsF& margins );
|
||||||
|
|
||||||
|
QSK_EXPORT qreal qskHorizontalAdvance( const QFont&, const QString& );
|
||||||
|
QSK_EXPORT qreal qskHorizontalAdvance( const QFontMetricsF&, const QString& );
|
||||||
|
|
||||||
inline bool qskFuzzyCompare( qreal value1, qreal value2 )
|
inline bool qskFuzzyCompare( qreal value1, qreal value2 )
|
||||||
{
|
{
|
||||||
if ( qFuzzyIsNull( value1 ) )
|
if ( qFuzzyIsNull( value1 ) )
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
#include "QskSimpleListBox.h"
|
#include "QskSimpleListBox.h"
|
||||||
#include "QskAspect.h"
|
#include "QskAspect.h"
|
||||||
|
#include "QskFunctions.h"
|
||||||
|
|
||||||
#include <qfontmetrics.h>
|
#include <qfontmetrics.h>
|
||||||
|
|
||||||
@ -16,7 +17,7 @@ static inline qreal qskMaxWidth(
|
|||||||
qreal max = 0.0;
|
qreal max = 0.0;
|
||||||
for ( int i = 0; i < list.size(); i++ )
|
for ( int i = 0; i < list.size(); i++ )
|
||||||
{
|
{
|
||||||
const qreal w = fm.width( list[ i ] );
|
const qreal w = qskHorizontalAdvance( fm, list[ i ] );
|
||||||
if ( w > max )
|
if ( w > max )
|
||||||
max = w;
|
max = w;
|
||||||
}
|
}
|
||||||
@ -146,7 +147,7 @@ void QskSimpleListBox::insert( const QString& text, int index )
|
|||||||
{
|
{
|
||||||
if ( m_data->columnWidthHint <= 0.0 )
|
if ( m_data->columnWidthHint <= 0.0 )
|
||||||
{
|
{
|
||||||
const auto w = QFontMetricsF( effectiveFont( Cell ) ).width( text );
|
const auto w = qskHorizontalAdvance( effectiveFont( Cell ), text );
|
||||||
if ( w > m_data->maxTextWidth )
|
if ( w > m_data->maxTextWidth )
|
||||||
m_data->maxTextWidth = w;
|
m_data->maxTextWidth = w;
|
||||||
}
|
}
|
||||||
@ -168,9 +169,7 @@ void QskSimpleListBox::removeAt( int index )
|
|||||||
|
|
||||||
if ( m_data->columnWidthHint <= 0.0 )
|
if ( m_data->columnWidthHint <= 0.0 )
|
||||||
{
|
{
|
||||||
const QFontMetricsF fm( effectiveFont( Cell ) );
|
const auto w = qskHorizontalAdvance( effectiveFont( Cell ), entries[ index ] );
|
||||||
const auto w = fm.width( entries[ index ] );
|
|
||||||
|
|
||||||
if ( w >= m_data->maxTextWidth )
|
if ( w >= m_data->maxTextWidth )
|
||||||
m_data->maxTextWidth = qskMaxWidth( effectiveFont( Text ), entries );
|
m_data->maxTextWidth = qskMaxWidth( effectiveFont( Text ), entries );
|
||||||
}
|
}
|
||||||
|
@ -35,12 +35,6 @@ static bool qskHasScalablePen( const QPainter* painter )
|
|||||||
if ( pen.style() != Qt::NoPen && pen.brush().style() != Qt::NoBrush )
|
if ( pen.style() != Qt::NoPen && pen.brush().style() != Qt::NoBrush )
|
||||||
{
|
{
|
||||||
scalablePen = !pen.isCosmetic();
|
scalablePen = !pen.isCosmetic();
|
||||||
if ( !scalablePen && pen.widthF() == 0.0 )
|
|
||||||
{
|
|
||||||
const QPainter::RenderHints hints = painter->renderHints();
|
|
||||||
if ( hints.testFlag( QPainter::NonCosmeticDefaultPen ) )
|
|
||||||
scalablePen = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return scalablePen;
|
return scalablePen;
|
||||||
@ -89,15 +83,7 @@ static inline void qskExecCommand(
|
|||||||
|
|
||||||
if ( painter->transform().isScaling() )
|
if ( painter->transform().isScaling() )
|
||||||
{
|
{
|
||||||
bool isCosmetic = painter->pen().isCosmetic();
|
if ( painter->pen().isCosmetic() )
|
||||||
if ( isCosmetic && painter->pen().widthF() == 0.0 )
|
|
||||||
{
|
|
||||||
QPainter::RenderHints hints = painter->renderHints();
|
|
||||||
if ( hints.testFlag( QPainter::NonCosmeticDefaultPen ) )
|
|
||||||
isCosmetic = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( isCosmetic )
|
|
||||||
{
|
{
|
||||||
// OpenGL2 seems to be buggy for cosmetic pens.
|
// OpenGL2 seems to be buggy for cosmetic pens.
|
||||||
// It interpolates curves in too rough steps then
|
// It interpolates curves in too rough steps then
|
||||||
|
Loading…
x
Reference in New Issue
Block a user