示例#1
0
/*!
   Draw the rose

   \param painter Painter
   \param center Center point
   \param radius Radius of the rose
   \param north Position
   \param cg Color group
*/
void QwtSimpleCompassRose::draw( QPainter *painter, const QPointF &center,
    double radius, double north, QPalette::ColorGroup cg ) const
{
    QPalette pal = palette();
    pal.setCurrentColorGroup( cg );

    drawRose( painter, pal, center, radius, north, d_data->width,
        d_data->numThorns, d_data->numThornLevels, d_data->shrinkFactor );
}
示例#2
0
/*!
   Draw the rose

   \param painter Painter
   \param center Center point
   \param radius Radius of the rose
   \param north Position
   \param cg Color group
*/
void QwtSimpleCompassRose::draw(QPainter *painter, const QPoint &center,
                                int radius, double north, QPalette::ColorGroup cg) const
{
#if QT_VERSION < 0x040000
    QColorGroup colorGroup;
    switch(cg) {
    case QPalette::Disabled:
        colorGroup = palette().disabled();
    case QPalette::Inactive:
        colorGroup = palette().inactive();
    default:
        colorGroup = palette().active();
    }

    drawRose(painter, colorGroup, center, radius, north, d_width,
             d_numThorns, d_numThornLevels, d_shrinkFactor);
#else
    QPalette pal = palette();
    pal.setCurrentColorGroup(cg);
    drawRose(painter, pal, center, radius, north, d_width,
             d_numThorns, d_numThornLevels, d_shrinkFactor);
#endif
}
示例#3
0
void QwtSimpleCompassRose::draw(QPainter *painter, const QPoint &center, 
    int radius, double north, QPalette::ColorGroup cg) const
{
    QColorGroup colorGroup;
    switch(cg)
    {
        case QPalette::Disabled:
            colorGroup = palette().disabled();
        case QPalette::Inactive:
            colorGroup = palette().inactive();
        default:
            colorGroup = palette().active();
    }

    drawRose(painter, colorGroup, center, radius, north, d_width, 
        d_numThorns, d_numThornLevels, d_shrinkFactor);
}
示例#4
0
/*!
   Draw the contents of the scale

   \param painter Painter
   \param center Center of the content circle
   \param radius Radius of the content circle
*/
void QwtCompass::drawScaleContents( QPainter *painter,
    const QPointF &center, double radius ) const
{
    QPalette::ColorGroup cg;
    if ( isEnabled() )
        cg = hasFocus() ? QPalette::Active : QPalette::Inactive;
    else
        cg = QPalette::Disabled;

    double north = origin();
    if ( isValid() )
    {
        if ( mode() == RotateScale )
            north -= value();
    }

    const int margin = 4;
    drawRose( painter, center, radius - margin, 360.0 - north,  cg );
}