author | harlekin <harlekin> | 2003-04-05 14:54:02 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2003-04-05 14:54:02 (UTC) |
commit | 2bfd529736f1dcf008540be2199cd3887a53c75c (patch) (side-by-side diff) | |
tree | fbbd6ed437c28b77aab1388e025a219ffff1a35f /libopie/owait.cpp | |
parent | 32faa31960652ee538fd3bcc8c248c850aed1a4b (diff) | |
download | opie-2bfd529736f1dcf008540be2199cd3887a53c75c.zip opie-2bfd529736f1dcf008540be2199cd3887a53c75c.tar.gz opie-2bfd529736f1dcf008540be2199cd3887a53c75c.tar.bz2 |
get the animation right and allways show the busy indicator in the middle of the screen ( in all rotations -) )
-rw-r--r-- | libopie/owait.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libopie/owait.cpp b/libopie/owait.cpp index c7c4445..7ed66eb 100644 --- a/libopie/owait.cpp +++ b/libopie/owait.cpp @@ -1,79 +1,82 @@ /* This file is part of the OPIE libraries Copyright (C) 2003 Maximilian Reiss (harlekin@handhelds.org) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include <qlabel.h> #include <qlayout.h> #include <qtimer.h> +#include <qpe/qpeapplication.h> #include <qpainter.h> #include "owait.h" #include <qpe/resource.h> static int frame = 0; OWait::OWait(QWidget *parent, const char* msg, bool dispIcon ) :QDialog(parent, QObject::tr("Wait"), TRUE,WStyle_Customize) { QHBoxLayout *hbox = new QHBoxLayout( this ); m_lb = new QLabel( this ); m_lb->setBackgroundMode ( NoBackground ); hbox->addWidget( m_lb ); hbox->activate(); m_pix = Resource::loadPixmap( "BigBusy" ); resize( 48, 48 ); m_timerLength = 10; m_waitTimer = new QTimer( this ); connect( m_waitTimer, SIGNAL( timeout() ), this, SLOT( hide() ) ); } void OWait::timerEvent( QTimerEvent * ) { - frame = (++frame) % 3; + frame = (++frame) % 4; repaint(); } void OWait::paintEvent( QPaintEvent * ) { QPainter p( m_lb ); p.drawPixmap( 0, 0, m_pix, 48 * frame, 0, 48, 48 ); } void OWait::show() { + + move( ( ( qApp->desktop()->width() ) / 2 ) - 24, ( ( qApp->desktop()->height() ) / 2 ) - 24 ); startTimer( 300 ); - m_waitTimer->start( m_timerLength * 1000, true ); + m_waitTimer->start( m_timerLength * 1000, true ); QDialog::show(); } void OWait::hide() { killTimers(); m_waitTimer->stop(); frame = 0; QDialog::hide(); } void OWait::setTimerLength( int length ) { m_timerLength = length; } OWait::~OWait() { } |