23 #include <qstyleoption.h> 24 #include <qapplication.h> 118 const int flags = Qt::AlignHCenter
119 | Qt::TextExpandTabs | Qt::TextWordWrap;
123 QSizePolicy policy( QSizePolicy::MinimumExpanding,
124 QSizePolicy::Fixed );
128 setSizePolicy( policy );
130 setAttribute( Qt::WA_WState_OwnSizePolicy,
false );
193 const int flags = title.
renderFlags() & ~( Qt::AlignTop | Qt::AlignBottom );
214 if ( !testAttribute( Qt::WA_WState_OwnSizePolicy ) )
216 QSizePolicy policy( QSizePolicy::MinimumExpanding,
217 QSizePolicy::Fixed );
221 setSizePolicy( policy );
223 setAttribute( Qt::WA_WState_OwnSizePolicy,
false );
267 margin = qMax( 0, margin );
282 spacing = qMax( 0, spacing );
417 QPainter painter(
this );
418 painter.setClipRegion( event->region() );
422 style()->drawPrimitive(QStyle::PE_Widget, &opt, &painter,
this);
440 QRect r = contentsRect();
521 if ( event->type() == QEvent::LocaleChange )
526 QWidget::changeEvent( event );
560 const QRectF r = contentsRect();
566 length = r.height() - ( bd0 + bd1 );
576 length = r.width() - ( bd0 + bd1 );
592 if ( update_geometry )
602 if ( QWidget* w = parentWidget() )
604 if ( !w->isVisible() && w->layout() == NULL )
606 if ( w->testAttribute( Qt::WA_WState_Polished ) )
607 QApplication::postEvent( w,
new QEvent( QEvent::LayoutRequest ) );
650 ~( Qt::AlignTop | Qt::AlignBottom | Qt::AlignVCenter );
656 flags |= Qt::AlignTop;
657 r.setRect( r.left(), r.bottom(),
663 flags |= Qt::AlignTop;
670 flags |= Qt::AlignBottom;
677 flags |= Qt::AlignTop;
688 r.setRect( r.x() + r.height(), r.y() - r.width(),
689 r.width(), r.height() );
694 painter->setFont( font() );
695 painter->setPen( palette().
color( QPalette::Text ) );
697 painter->translate( r.x(), r.y() );
699 painter->rotate( angle );
703 title.
draw( painter, QRectF( 0.0, 0.0, r.width(), r.height() ) );
753 QSize
size( length + 2, dim );
754 if ( o == Qt::Vertical )
757 const QMargins m = contentsMargins();
758 return size + QSize( m.left() + m.right(), m.top() + m.bottom() );
818 if ( start < m_data->minBorderDist[0] )
821 if ( end < m_data->minBorderDist[1] )
980 #include "moc_qwt_scale_widget.cpp"
virtual void draw(QPainter *, const QPalette &) const
Draw the scale.
void setAlignment(Alignment)
void setLength(double length)
void setFont(const QFont &)
A class representing an interval.
void setRenderFlags(int)
Change the render flags.
void setText(const QString &, QwtText::TextFormat textFormat=AutoText)
double heightForWidth(double width) const
static void drawColorBar(QPainter *, const QwtColorMap &, const QwtInterval &, const QwtScaleMap &, Qt::Orientation, const QRectF &)
A class representing a scale division.
Alignment alignment() const
const QwtTransform * transformation() const
Get the transformation.
void update(const std::string &key, const XmlRpc::XmlRpcValue &v)
int minLength(const QFont &) const
void draw(QPainter *painter, const QRectF &rect) const
Qt::Orientation orientation() const
const QwtScaleDiv & scaleDiv() const
A class representing a text.
QwtColorMap is used to map values into colors.
void getBorderDistHint(const QFont &, int &start, int &end) const
Determine the minimum border distance.
void setScaleDiv(const QwtScaleDiv &)
void setLabelRotation(double rotation)
QwtLinearColorMap builds a color map from color stops.
virtual double extent(const QFont &) const QWT_OVERRIDE
void setTransformation(QwtTransform *)
A class for drawing scales.
span_constexpr std::size_t size(span< T, Extent > const &spn)
const QwtScaleMap & scaleMap() const
A scale engine for linear scales.
void setLabelAlignment(Qt::Alignment)
Change the label flags.
QwtInterval normalized() const
Normalize the limits of the interval.
void move(double x, double y)