Пример #1
0
void ValueSelector::paintEvent( QPaintEvent *paint_event )
{
    Q_CHECK_PTR( paint_event );
    if ( paint_event -> erased() )
    {
        painter.begin( this );

    	painter.setPen( shadow );
    	painter.drawLine( 0, 3, 0, 91 );
    	painter.drawLine( 0, 3, 17, 3 );

    	painter.setPen( highlight );
    	painter.drawLine( 17, 4, 17, 91 );
    	painter.drawLine( 1, 91, 17, 91 );

    	//Draw the triangle
    	QPointArray pa( 3 );
    	pa.putPoints( 0, 3, 18, 91 - pointFromValue( value() ), 21, 91 - pointFromValue( value() ) - 3, 21, 91 - pointFromValue( value() ) + 3 );
    	painter.setPen( triangle_color );
    	painter.setBrush( triangle_color );
    	painter.drawPolygon( pa );

    	int h, s, v;
    	QColor tmp_color = current_color;
    	tmp_color.getHsv( &h, &s, &v );
    	for ( int i = 0; i <= 255; i++ )
    	{
            tmp_color.setHsv( h, s, 255 - i );
	    painter.setPen( tmp_color );
	    painter.drawLine( 1, pointFromValue( i ) + 4, 16, pointFromValue( i ) + 4 );
    	}

    	painter.end();
    }
}
Пример #2
0
void CSlider::changeValueAndExecuteEvent(int nValue, bool bExeEvent)
{
	CProgressBar::changeValueAndExecuteEvent(nValue, bExeEvent);

	if( m_pSlider )
	{
		CCPoint tOutPoint;
		pointFromValue(m_nValue, tOutPoint);

		m_pSlider->setPosition(tOutPoint);
	}
}