formal changes for QskLayoutHint
This commit is contained in:
parent
f920eee6c5
commit
bc54bfbe97
|
@ -17,6 +17,7 @@
|
|||
#include <QskGradient.h>
|
||||
#include <QskGraphicLabel.h>
|
||||
#include <QskIntervalF.h>
|
||||
#include <QskLayoutHint.h>
|
||||
#include <QskMessageWindow.h>
|
||||
#include <QskPopup.h>
|
||||
#include <QskPushButton.h>
|
||||
|
@ -289,6 +290,7 @@ void QskQml::registerTypes()
|
|||
QSK_REGISTER_GADGET( QskGradient, "Gradient" );
|
||||
QSK_REGISTER_GADGET( QskGradientStop, "GradientStop" );
|
||||
QSK_REGISTER_GADGET( QskIntervalF, "IntervalF" );
|
||||
QSK_REGISTER_GADGET( QskLayoutHint, "LayoutHint" );
|
||||
QSK_REGISTER_GADGET( QskSizePolicy, "SizePolicy" );
|
||||
QSK_REGISTER_GADGET( QskTextOptions, "TextOptions" );
|
||||
|
||||
|
|
|
@ -6,38 +6,9 @@
|
|||
#include "QskLayoutHint.h"
|
||||
#include "QskControl.h"
|
||||
#include <qnamespace.h>
|
||||
#include <algorithm>
|
||||
|
||||
QskLayoutHint::QskLayoutHint()
|
||||
: QskLayoutHint( 0.0, 0.0, QskLayoutHint::unlimited )
|
||||
{
|
||||
}
|
||||
|
||||
QskLayoutHint::QskLayoutHint( qreal minimum, qreal preferred, qreal maximum )
|
||||
: m_minimum( minimum )
|
||||
, m_preferred( preferred )
|
||||
, m_maximum( maximum )
|
||||
{
|
||||
}
|
||||
|
||||
qreal QskLayoutHint::size( int which ) const
|
||||
{
|
||||
switch( which )
|
||||
{
|
||||
case Qt::MinimumSize:
|
||||
return m_minimum;
|
||||
|
||||
case Qt::PreferredSize:
|
||||
return m_preferred;
|
||||
|
||||
case Qt::MaximumSize:
|
||||
return m_maximum;
|
||||
|
||||
default:
|
||||
return 0.0;
|
||||
}
|
||||
}
|
||||
|
||||
void QskLayoutHint::setSize( int which, qreal size )
|
||||
void QskLayoutHint::setSize( int which, qreal size ) noexcept
|
||||
{
|
||||
switch (which)
|
||||
{
|
||||
|
@ -58,27 +29,21 @@ void QskLayoutHint::setSize( int which, qreal size )
|
|||
}
|
||||
}
|
||||
|
||||
void QskLayoutHint::expandTo( const QskLayoutHint& other )
|
||||
void QskLayoutHint::expandTo( const QskLayoutHint& other ) noexcept
|
||||
{
|
||||
m_minimum = qMax( m_minimum, other.m_minimum );
|
||||
m_preferred = qMax( m_preferred, other.m_preferred );
|
||||
m_maximum = qMax( m_maximum, other.m_maximum );
|
||||
m_minimum = std::max( m_minimum, other.m_minimum );
|
||||
m_preferred = std::max( m_preferred, other.m_preferred );
|
||||
m_maximum = std::max( m_maximum, other.m_maximum );
|
||||
}
|
||||
|
||||
void QskLayoutHint::normalize()
|
||||
void QskLayoutHint::normalize() noexcept
|
||||
{
|
||||
m_minimum = qMax( m_minimum, qreal( 0.0 ) );
|
||||
m_maximum = qMax( m_minimum, m_maximum );
|
||||
m_minimum = std::max( m_minimum, qreal( 0.0 ) );
|
||||
m_maximum = std::max( m_minimum, m_maximum );
|
||||
m_preferred = qBound( m_minimum, m_preferred, m_maximum );
|
||||
}
|
||||
|
||||
bool QskLayoutHint::isDefault() const
|
||||
{
|
||||
return ( m_minimum == 0.0 ) && ( m_preferred == 0.0 )
|
||||
&& ( m_maximum == QskLayoutHint::unlimited );
|
||||
}
|
||||
|
||||
qreal QskLayoutHint::combined( int which, qreal value1, qreal value2 )
|
||||
qreal QskLayoutHint::combined( int which, qreal value1, qreal value2 ) noexcept
|
||||
{
|
||||
if ( which == Qt::MaximumSize )
|
||||
{
|
||||
|
@ -88,10 +53,10 @@ qreal QskLayoutHint::combined( int which, qreal value1, qreal value2 )
|
|||
if ( value2 < 0.0 )
|
||||
return value1;
|
||||
|
||||
return qMin( value1, value2 );
|
||||
return std::min( value1, value2 );
|
||||
}
|
||||
|
||||
return qMax( value1, value2 );
|
||||
return std::max( value1, value2 );
|
||||
}
|
||||
|
||||
#ifndef QT_NO_DEBUG_STREAM
|
||||
|
@ -120,3 +85,5 @@ QDebug operator<<( QDebug debug, const QskLayoutHint& hint )
|
|||
}
|
||||
|
||||
#endif
|
||||
|
||||
#include "moc_QskLayoutHint.cpp"
|
||||
|
|
|
@ -8,133 +8,178 @@
|
|||
|
||||
#include "QskGlobal.h"
|
||||
#include <qglobal.h>
|
||||
#include <qmetatype.h>
|
||||
#include <limits>
|
||||
|
||||
class QDebug;
|
||||
|
||||
class QSK_EXPORT QskLayoutHint
|
||||
{
|
||||
Q_GADGET
|
||||
|
||||
Q_PROPERTY( qreal minimum READ minimum WRITE setMinimum )
|
||||
Q_PROPERTY( qreal preferred READ preferred WRITE setPreferred )
|
||||
Q_PROPERTY( qreal maximum READ maximum WRITE setMaximum )
|
||||
|
||||
public:
|
||||
QskLayoutHint();
|
||||
QskLayoutHint( qreal minimum, qreal preferred, qreal maximum );
|
||||
constexpr QskLayoutHint() noexcept = default;
|
||||
constexpr QskLayoutHint( qreal minimum, qreal preferred, qreal maximum ) noexcept;
|
||||
|
||||
void normalize();
|
||||
void normalize() noexcept;
|
||||
|
||||
QskLayoutHint normalized() const;
|
||||
bool isDefault() const;
|
||||
QskLayoutHint normalized() const noexcept;
|
||||
constexpr bool isDefault() const noexcept;
|
||||
|
||||
qreal size( int which ) const;
|
||||
void setSize( int which, qreal size );
|
||||
qreal size( int which ) const noexcept;
|
||||
void setSize( int which, qreal size ) noexcept;
|
||||
|
||||
bool operator==( const QskLayoutHint& ) const;
|
||||
bool operator!=( const QskLayoutHint& ) const;
|
||||
constexpr bool operator==( const QskLayoutHint& ) const noexcept;
|
||||
constexpr bool operator!=( const QskLayoutHint& ) const noexcept;
|
||||
|
||||
void setMinimum( qreal value );
|
||||
qreal minimum() const;
|
||||
void setMinimum( qreal value ) noexcept;
|
||||
constexpr qreal minimum() const noexcept;
|
||||
|
||||
void setPreferred( qreal value );
|
||||
qreal preferred() const;
|
||||
void setPreferred( qreal value ) noexcept;
|
||||
constexpr qreal preferred() const noexcept;
|
||||
|
||||
void setMaximum( qreal value );
|
||||
qreal maximum() const;
|
||||
void setMaximum( qreal value ) noexcept;
|
||||
constexpr qreal maximum() const noexcept;
|
||||
|
||||
void setSizes( qreal minimum, qreal preferred, qreal maximum );
|
||||
void expandTo( const QskLayoutHint& );
|
||||
void setSizes( qreal minimum, qreal preferred, qreal maximum ) noexcept;
|
||||
void expandTo( const QskLayoutHint& ) noexcept;
|
||||
|
||||
void expandMinimum( qreal value );
|
||||
void expandPreferred( qreal value );
|
||||
void expandMaximum( qreal value );
|
||||
void expandMinimum( qreal value ) noexcept;
|
||||
void expandPreferred( qreal value ) noexcept;
|
||||
void expandMaximum( qreal value ) noexcept;
|
||||
|
||||
static qreal combined( int which, qreal value1, qreal value2 );
|
||||
static qreal combined( int which, qreal value1, qreal value2 ) noexcept;
|
||||
static constexpr qreal unlimited = std::numeric_limits< float >::max();
|
||||
|
||||
private:
|
||||
qreal m_minimum;
|
||||
qreal m_preferred;
|
||||
qreal m_maximum;
|
||||
qreal m_minimum = 0.0;
|
||||
qreal m_preferred = 0.0;
|
||||
qreal m_maximum = QskLayoutHint::unlimited;
|
||||
};
|
||||
|
||||
inline qreal QskLayoutHint::minimum() const
|
||||
Q_DECLARE_TYPEINFO( QskLayoutHint, Q_MOVABLE_TYPE );
|
||||
Q_DECLARE_METATYPE( QskLayoutHint )
|
||||
|
||||
QT_WARNING_PUSH
|
||||
QT_WARNING_DISABLE_CLANG("-Wfloat-equal")
|
||||
QT_WARNING_DISABLE_GCC("-Wfloat-equal")
|
||||
QT_WARNING_DISABLE_INTEL(1572)
|
||||
|
||||
inline constexpr QskLayoutHint::QskLayoutHint(
|
||||
qreal minimum, qreal preferred, qreal maximum ) noexcept
|
||||
: m_minimum( minimum )
|
||||
, m_preferred( preferred )
|
||||
, m_maximum( maximum )
|
||||
{
|
||||
}
|
||||
|
||||
inline constexpr qreal QskLayoutHint::minimum() const noexcept
|
||||
{
|
||||
return m_minimum;
|
||||
}
|
||||
|
||||
inline void QskLayoutHint::setMinimum( qreal value )
|
||||
inline void QskLayoutHint::setMinimum( qreal value ) noexcept
|
||||
{
|
||||
m_minimum = value;
|
||||
}
|
||||
|
||||
inline qreal QskLayoutHint::preferred() const
|
||||
inline constexpr qreal QskLayoutHint::preferred() const noexcept
|
||||
{
|
||||
return m_preferred;
|
||||
}
|
||||
|
||||
inline void QskLayoutHint::setPreferred( qreal value )
|
||||
inline void QskLayoutHint::setPreferred( qreal value ) noexcept
|
||||
{
|
||||
m_preferred = value;
|
||||
}
|
||||
|
||||
inline qreal QskLayoutHint::maximum() const
|
||||
inline constexpr qreal QskLayoutHint::maximum() const noexcept
|
||||
{
|
||||
return m_maximum;
|
||||
}
|
||||
|
||||
inline void QskLayoutHint::setMaximum( qreal value )
|
||||
inline void QskLayoutHint::setMaximum( qreal value ) noexcept
|
||||
{
|
||||
m_maximum = value;
|
||||
}
|
||||
|
||||
inline void QskLayoutHint::expandMinimum( qreal value )
|
||||
inline void QskLayoutHint::expandMinimum( qreal value ) noexcept
|
||||
{
|
||||
if ( value > m_minimum )
|
||||
m_minimum = value;
|
||||
}
|
||||
|
||||
inline void QskLayoutHint::expandPreferred( qreal value )
|
||||
inline void QskLayoutHint::expandPreferred( qreal value ) noexcept
|
||||
{
|
||||
if ( value > m_preferred )
|
||||
m_preferred = value;
|
||||
}
|
||||
|
||||
inline void QskLayoutHint::expandMaximum( qreal value )
|
||||
inline void QskLayoutHint::expandMaximum( qreal value ) noexcept
|
||||
{
|
||||
if ( value > m_maximum )
|
||||
m_maximum = value;
|
||||
}
|
||||
|
||||
inline void QskLayoutHint::setSizes(
|
||||
qreal minimum, qreal preferred, qreal maximum )
|
||||
qreal minimum, qreal preferred, qreal maximum ) noexcept
|
||||
{
|
||||
m_minimum = minimum;
|
||||
m_preferred = preferred;
|
||||
m_maximum = maximum;
|
||||
}
|
||||
|
||||
inline bool QskLayoutHint::operator==( const QskLayoutHint& other ) const
|
||||
inline qreal QskLayoutHint::size( int which ) const noexcept
|
||||
{
|
||||
switch( which )
|
||||
{
|
||||
case Qt::MinimumSize:
|
||||
return m_minimum;
|
||||
|
||||
case Qt::PreferredSize:
|
||||
return m_preferred;
|
||||
|
||||
case Qt::MaximumSize:
|
||||
return m_maximum;
|
||||
}
|
||||
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
inline constexpr bool QskLayoutHint::isDefault() const noexcept
|
||||
{
|
||||
return ( m_minimum == 0.0 ) && ( m_preferred == 0.0 )
|
||||
&& ( m_maximum == QskLayoutHint::unlimited );
|
||||
}
|
||||
|
||||
inline constexpr bool QskLayoutHint::operator==( const QskLayoutHint& other ) const noexcept
|
||||
{
|
||||
return ( m_preferred == other.m_preferred )
|
||||
&& ( m_minimum == other.m_minimum )
|
||||
&& ( m_maximum == other.m_maximum );
|
||||
}
|
||||
|
||||
inline bool QskLayoutHint::operator!=( const QskLayoutHint& other ) const
|
||||
inline constexpr bool QskLayoutHint::operator!=( const QskLayoutHint& other ) const noexcept
|
||||
{
|
||||
return !( *this == other );
|
||||
}
|
||||
|
||||
inline QskLayoutHint QskLayoutHint::normalized() const
|
||||
inline QskLayoutHint QskLayoutHint::normalized() const noexcept
|
||||
{
|
||||
auto hint = *this;
|
||||
hint.normalize();
|
||||
return hint;
|
||||
}
|
||||
|
||||
QT_WARNING_POP
|
||||
|
||||
#ifndef QT_NO_DEBUG_STREAM
|
||||
|
||||
class QDebug;
|
||||
QSK_EXPORT QDebug operator<<( QDebug, const QskLayoutHint& );
|
||||
|
||||
#endif
|
||||
|
||||
Q_DECLARE_TYPEINFO( QskLayoutHint, Q_MOVABLE_TYPE );
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue