-rw-r--r-- | noncore/tools/clock/clock.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/noncore/tools/clock/clock.cpp b/noncore/tools/clock/clock.cpp index 74b7147..41c99a8 100644 --- a/noncore/tools/clock/clock.cpp +++ b/noncore/tools/clock/clock.cpp @@ -495,59 +495,65 @@ void Clock::appMessage( const QCString& msg, const QByteArray& /*data*/ ) show(); raise(); QPEApplication::setKeepRunning(); setActiveWindow(); } void Clock::timerEvent( QTimerEvent *e ) { static int stop = 0; if ( stop < 120 && bSound ) { Sound::soundAlarm(); stop++; } else { stop = 0; killTimer( e->timerId() ); clearTimer(); setCaption( tr( "Clock: Alarm was missed." ) ); } } +AnalogClock::AnalogClock(QWidget * parent, const char * name) : QFrame( parent, name ), clear(true) +{ + bg = Resource::loadPixmap("clock/bg"); +} QSizePolicy AnalogClock::sizePolicy() const { return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ); } void AnalogClock::drawContents( QPainter *p ) { QRect r = contentsRect(); QRect fr; + p->drawPixmap(QPoint(0, 0), bg, r); + if ( r. width ( ) > r. height ( )) fr. setRect (( r. width ( ) - r. height ( )) / 2, r. y ( ), r. height ( ), r. height ( )); else fr. setRect ( r. x ( ), ( r. height ( ) - r. width ( )) / 2, r. width ( ), r. width ( )); QPoint center = fr. center ( ); // ( fr.x() + fr.width() / 2, fr.y() + fr.height() / 2 ); QPoint l1 ( center. x ( ), fr. y ( ) + 2 ); QPoint l2 ( center. x ( ), fr. y ( ) + 8 ); if ( clear ) { erase ( r ); p-> setPen ( NoPen ); p-> setBrush ( colorGroup ( ). color ( QColorGroup::Base )); p-> drawEllipse ( fr ); p-> setBrush ( NoBrush ); // draw ticks p->setPen( QPen( colorGroup ( ). color ( QColorGroup::Text ), 1 ) ); for ( int i = 0; i < 12; i++ ) p->drawLine( rotate( center, l1, i * 30 ), rotate( center, l2, i * 30 ) ); } |