Esempio n. 1
0
 void
 rerender()
 {
     QTime time = QTime::currentTime();
     QColor shadow = QColor( 0, 0, 0, 192 );
     QImage img( m_clientSize, QImage::Format_ARGB32_Premultiplied );
     img.fill( QColor( 128, 0, 0, 128 ) );
     QPainter p( & img );
     p.setRenderHint( QPainter::Antialiasing, true );
     p.setBrush( QColor( "black" ) );
     p.setPen( QPen( QColor( "white" ), 2 ) );
     p.drawEllipse( m_center, m_radius, m_radius );
     p.setPen( QPen( QColor( "white" ), 2 ) );
     double tickLenght = 5;
     for ( int h = 0 ; h < 12 ; h++ ) {
         double alpha = h * M_PI * 2 / 12;
         p.drawLine( a2p( alpha, m_radius - tickLenght - ( h % 3 == 0 ? 2 : 0 ) ),
                     a2p( alpha, m_radius ) );
     }
     double hour = time.hour() % 12 + time.minute() / 60.0 + time.second() / 3600.0;
     p.setPen( QPen( QColor( "white" ), 4 ) );
     p.drawLine( m_center, a2p( hour / 12.0 * M_PI * 2, m_radius / 2 ) );
     double minute = time.minute() + time.second() / 60.0;
     p.setPen( QPen( shadow, 4 ) );
     p.drawLine( m_center, a2p( minute / 60.0 * M_PI * 2, m_radius * 3 / 4 ) );
     p.setPen( QPen( QColor( "white" ), 3 ) );
     p.drawLine( m_center, a2p( minute / 60.0 * M_PI * 2, m_radius * 3 / 4 ) );
     p.setPen( QPen( shadow, 2 ) );
     p.drawLine( m_center, a2p( time.second() / 60.0 * M_PI * 2, m_radius - 2 ) );
     p.setPen( QPen( QColor( "yellow" ), 1 ) );
     p.drawLine( m_center, a2p( time.second() / 60.0 * M_PI * 2, m_radius - 2 ) );
     p.end();
     setRaster( img );
 } // rerender
Esempio n. 2
0
/**
 * If "key" is associated to "val", returns "val". 
 * Undefined behavior, if "key" is not found.
 * You may need the helper function a2p.
 */
char *ca_str_value(char key[]) {
	for(int i = 0; i < pos; i++)
	{
		if(keys[i] != NULL)
		{
			if(strcmp(key, keys[i]) == 0)
				return a2p(values[i]);
		}
/*		for(int j = 0; j <= KEY_LEN; j++)
		{
			if(key[j] != keys[i][j])
				break;
			if(j == KEY_LEN)
			{
				if[values[i] == NULL]
					return NULL;
				else
					return a2p(values[i]);
				
			}
		} */
	}
	return NULL;
}