-rw-r--r-- | library/backend/rohfeedback.cpp | 2 | ||||
-rw-r--r-- | library/backend/rohfeedback.h | 2 |
2 files changed, 0 insertions, 4 deletions
diff --git a/library/backend/rohfeedback.cpp b/library/backend/rohfeedback.cpp index 9a19aac..fa2a636 100644 --- a/library/backend/rohfeedback.cpp +++ b/library/backend/rohfeedback.cpp @@ -1,144 +1,142 @@ /********************************************************************** ** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. ** ** This file is part of the Qtopia Environment. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ -#ifdef OPIE_WITHROHFEEDBACK #include <rohfeedback.h> #include <stdio.h> #include <qpeapplication.h> #include <qevent.h> #include <resource.h> #include <qpixmap.h> #include <qbitmap.h> #define SPEED 600 #define DELAY 500 namespace Opie { namespace Internal { /* RightOnHold feedback */ QPixmap * RoHFeedback::Imgs[NOOFICONS] = { 0, 0, 0, 0, 0 }; QBitmap * RoHFeedback::Masks[NOOFICONS]; int RoHFeedback::IconWidth; int RoHFeedback::IconHeight; RoHFeedback::RoHFeedback() : QLabel( 0, 0, Qt::WType_Popup ), Timer() { Receiver = 0l; connect( &Timer, SIGNAL( timeout() ), this, SLOT( iconShow() ) ); if( Imgs[0] == 0 ) { QString S; for( int i = 0; i < NOOFICONS ; i ++ ) { Imgs[i] = new QPixmap( Resource::loadPixmap( "RoH/star/"+ QString::number(i+1) + ".png" )); Masks[i] = new QBitmap(); (*Masks[i]) = Resource::loadPixmap( "RoH/star/"+QString::number(i+1) + "-mask.png" ); } } IconWidth = Imgs[0]->size().width(); IconHeight = Imgs[0]->size().height(); resize( IconWidth, IconHeight ); } int RoHFeedback::delay( void ) { return DELAY+SPEED+50; } RoHFeedback::~RoHFeedback() { for ( int i = 0; i < NOOFICONS; ++i ) { delete Imgs [i]; delete Masks[i]; } } void RoHFeedback::init( const QPoint & P, QWidget* wid ) { if( ! IconWidth ) return; Receiver = wid; IconNr = FeedbackTimerStart; move( P.x()-IconWidth/2, P.y() - IconHeight/2 ); // to initialize Timer.start( DELAY ); } void RoHFeedback::stop( void ) { IconNr = FeedbackStopped; // stop } bool RoHFeedback::event( QEvent * E ) { if( E->type() >= QEvent::MouseButtonPress && E->type() <= QEvent::MouseMove ) { // pass the event to the receiver with translated coord QMouseEvent QME( ((QMouseEvent *)E)->type(), Receiver->mapFromGlobal( ((QMouseEvent *)E)->globalPos() ), ((QMouseEvent *)E)->globalPos(), ((QMouseEvent *)E)->button(), ((QMouseEvent *)E)->state() ); return QPEApplication::sendEvent( Receiver, &QME ); } // first let the label treat the event return QLabel::event( E ); } void RoHFeedback::iconShow( void ) { switch( IconNr ) { case FeedbackTimerStart: IconNr = FeedbackShow; Timer.start( SPEED/NOOFICONS ); break; case FeedbackStopped: // stopped IconNr = FeedbackTimerStart; hide(); Timer.stop(); break; case FeedbackShow: // first show(); // FT default : // show setPixmap( *(Imgs[IconNr]) ); setMask( *(Masks[IconNr]) ); IconNr = (IconNr+1)%NOOFICONS; // rotate break; } } } } -#endif diff --git a/library/backend/rohfeedback.h b/library/backend/rohfeedback.h index 774ee85..2961d0e 100644 --- a/library/backend/rohfeedback.h +++ b/library/backend/rohfeedback.h @@ -1,84 +1,82 @@ /********************************************************************** ** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. ** ** This file is part of the Qtopia Environment. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ #ifndef ROHFEEDBACK_H #define ROHFEEDBACK_H -#ifdef OPIE_WITHROHFEEDBACK /* RightOnHold feedback show */ #define NOOFICONS 5 #include <qlabel.h> #include <qtimer.h> class QEvent; class QPixmap; class QBitmap; class QMouseEvent; namespace Opie { namespace Internal { class RoHFeedback : public QLabel { Q_OBJECT enum Actions { FeedbackStopped = -2, FeedbackTimerStart = -1, FeedbackShow = 0 }; public : RoHFeedback(); ~RoHFeedback(); void init( const QPoint & P, QWidget* wid ); void stop( void ); int delay( void ); public slots : void iconShow( void ); protected : bool event( QEvent * E ); QTimer Timer; int IconNr; QWidget * Receiver; static int IconWidth; static int IconHeight; static QPixmap * Imgs[NOOFICONS]; static QBitmap * Masks[NOOFICONS]; }; } } #endif -#endif |