/usr/include/qwt/qwt_painter.h is in libqwt-dev 6.0.0-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
* 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
*****************************************************************************/
#ifndef QWT_PAINTER_H
#define QWT_PAINTER_H
#include "qwt_global.h"
#include <qpoint.h>
#include <qrect.h>
#include <qpen.h>
#include <qline.h>
class QPainter;
class QBrush;
class QColor;
class QWidget;
class QPolygonF;
class QRectF;
class QImage;
class QPixmap;
class QwtScaleMap;
class QwtColorMap;
class QwtInterval;
class QPalette;
class QTextDocument;
class QPainterPath;
/*!
\brief A collection of QPainter workarounds
*/
class QWT_EXPORT QwtPainter
{
public:
static void setPolylineSplitting( bool );
static bool polylineSplitting();
static void setRoundingAlignment( bool );
static bool roundingAlignment();
static bool roundingAlignment(QPainter *);
static void drawText( QPainter *, double x, double y, const QString & );
static void drawText( QPainter *, const QPointF &, const QString & );
static void drawText( QPainter *, double x, double y, double w, double h,
int flags, const QString & );
static void drawText( QPainter *, const QRectF &,
int flags, const QString & );
#ifndef QT_NO_RICHTEXT
static void drawSimpleRichText( QPainter *, const QRectF &,
int flags, const QTextDocument & );
#endif
static void drawRect( QPainter *, double x, double y, double w, double h );
static void drawRect( QPainter *, const QRectF &rect );
static void fillRect( QPainter *, const QRectF &, const QBrush & );
static void drawEllipse( QPainter *, const QRectF & );
static void drawPie( QPainter *, const QRectF & r, int a, int alen );
static void drawLine( QPainter *, double x1, double y1, double x2, double y2 );
static void drawLine( QPainter *, const QPointF &p1, const QPointF &p2 );
static void drawLine( QPainter *, const QLineF & );
static void drawPolygon( QPainter *, const QPolygonF &pa );
static void drawPolyline( QPainter *, const QPolygonF &pa );
static void drawPolyline( QPainter *, const QPointF *, int pointCount );
static void drawPoint( QPainter *, double x, double y );
static void drawPoint( QPainter *, const QPointF & );
static void drawPath( QPainter *, const QPainterPath & );
static void drawImage( QPainter *, const QRectF &, const QImage & );
static void drawPixmap( QPainter *, const QRectF &, const QPixmap & );
static void drawRoundedFrame( QPainter *,
const QRectF &, double xRadius, double yRadius,
const QPalette &, int lineWidth, int frameStyle );
static void drawFocusRect( QPainter *, QWidget * );
static void drawFocusRect( QPainter *, QWidget *, const QRect & );
static void drawColorBar( QPainter *painter,
const QwtColorMap &, const QwtInterval &,
const QwtScaleMap &, Qt::Orientation, const QRectF & );
static bool isAligning( QPainter *painter );
private:
static bool d_polylineSplitting;
static bool d_roundingAlignment;
};
//! Wrapper for QPainter::drawPoint()
inline void QwtPainter::drawPoint( QPainter *painter, double x, double y )
{
QwtPainter::drawPoint( painter, QPointF( x, y ) );
}
//! Wrapper for QPainter::drawLine()
inline void QwtPainter::drawLine( QPainter *painter,
double x1, double y1, double x2, double y2 )
{
QwtPainter::drawLine( painter, QPointF( x1, y1 ), QPointF( x2, y2 ) );
}
//! Wrapper for QPainter::drawLine()
inline void QwtPainter::drawLine( QPainter *painter, const QLineF &line )
{
QwtPainter::drawLine( painter, line.p1(), line.p2() );
}
/*!
Returns whether line splitting for the raster paint engine is enabled.
\sa setPolylineSplitting()
*/
inline bool QwtPainter::polylineSplitting()
{
return d_polylineSplitting;
}
/*!
Returns whether coordinates should be rounded, before they are painted
to a paint engine that floors to integer values. For other paint engines
this ( Pdf, SVG ), this flag has no effect.
\sa setRoundingAlignment(), isAligning()
*/
inline bool QwtPainter::roundingAlignment()
{
return d_roundingAlignment;
}
/*!
\return roundingAlignment() && isAligning(painter);
\param painter Painter
*/
inline bool QwtPainter::roundingAlignment(QPainter *painter)
{
return d_roundingAlignment && isAligning(painter);
}
#endif
|