Version: 0.18 (using KDE KDE 3.4.3) Installed from: Gentoo Packages Here is a patch to always have the remaining time being displayed in a xx:xx:xx format. exp: 01:00:09 currently the example would get displayed as 1:9 which is obviously not right. This will also make it look cleaner than 2:15:3 30:9
Created attachment 13469 [details] Patch to fix the reported problems.
Comment on attachment 13469 [details] Patch to fix the reported problems. >--- konversation-0.18/konversation/src/dcctransfer.cpp.old 2005-11-15 08:41:12.760682384 -0600 >+++ konversation-0.18/konversation/src/dcctransfer.cpp 2005-11-15 08:43:25.387520040 -0600 >@@ -475,14 +475,15 @@ > int remHour = remTime / 3600; remTime -= remHour * 3600; > int remMin = remTime / 60; remTime -= remMin * 60; > QString text; >- if ( remHour ) >- text += QString::number( remHour ) + ":"; >- if ( remMin ) >- text += QString::number( remMin ) + ":"; >- if ( text.isEmpty() ) >- text = i18n("%1 sec").arg( QString::number( remTime ) ); >- else >- text += QString::number( remTime ); >+ if ( remHour < 10 ) >+ text += "0"; >+ text += QString::number( remHour ) + ":"; >+ if ( remMin < 10 ) >+ text += "0"; >+ text += QString::number( remMin ) + ":"; >+ if ( remTime < 10 ) >+ text += "0"; >+ text += QString::number( remTime ); > return text; > } > }
strm, please review and apply this patch. Currently remaining time looks real bad.
Wishlist->Normal
SVN commit 480603 by shin: change the format of remaining time on DCC panel to simple HH:MM:SS style. BUG: 116429 Thank you for the report and the patch. M +7 -17 dcctransfer.cpp --- trunk/extragear/network/konversation/src/dcctransfer.cpp #480602:480603 @@ -469,26 +469,16 @@ QString DccTransfer::getTimeRemainingPrettyText() const { + QString text; + if ( m_timeRemaining == TIME_REMAINING_NOT_AVAILABLE ) - return QString::null; + ; else if ( m_timeRemaining == TIME_REMAINING_INFINITE ) - return QString( "?" ); + text = "?"; else - { - int remTime = m_timeRemaining; - int remHour = remTime / 3600; remTime -= remHour * 3600; - int remMin = remTime / 60; remTime -= remMin * 60; - QString text; - if ( remHour ) - text += QString::number( remHour ) + ":"; - if ( remMin ) - text += QString::number( remMin ) + ":"; - if ( text.isEmpty() ) - text = i18n("%1 sec").arg( QString::number( remTime ) ); - else - text += QString::number( remTime ); - return text; - } + text = QTime().addSecs( m_timeRemaining ).toString( "hh:mm:ss" ); + + return text; } QString DccTransfer::getCPSPrettyText() const
SVN commit 480693 by shin: stupid me CCBUG: 116429 M +11 -1 dcctransfer.cpp --- trunk/extragear/network/konversation/src/dcctransfer.cpp #480692:480693 @@ -476,8 +476,18 @@ else if ( m_timeRemaining == TIME_REMAINING_INFINITE ) text = "?"; else - text = QTime().addSecs( m_timeRemaining ).toString( "hh:mm:ss" ); + { + int remSec = m_timeRemaining; + int remHour = remSec / 3600; remSec -= remHour * 3600; + int remMin = remSec / 60; remSec -= remMin * 60; + // remHour can be more than 25, so we can't use QTime here. + text = QString( "%1:%2:%3" ) + .arg( QString::number( remHour ).rightJustify( 2, '0', false ) ) + .arg( QString::number( remMin ).rightJustify( 2, '0' ) ) + .arg( QString::number( remSec ).rightJustify( 2, '0' ) ); + } + return text; }
commit 63be6aa23a5dc2c914682d9d765a4fffba50c89f Author: Shintaro Matsuoka <shin@shoegazed.org> Date: Tue Nov 15 17:49:12 2005 +0000 change the format of remaining time on DCC panel to simple HH:MM:SS style. BUG: 116429 Thank you for the report and the patch. svn path=/trunk/extragear/network/konversation/; revision=480603 diff --git a/src/dcctransfer.cpp b/src/dcctransfer.cpp index 6b46e38..847733a 100644 --- a/src/dcctransfer.cpp +++ b/src/dcctransfer.cpp @@ -469,26 +469,16 @@ QString DccTransfer::getPositionPrettyText( bool detailed ) const QString DccTransfer::getTimeRemainingPrettyText() const { + QString text; + if ( m_timeRemaining == TIME_REMAINING_NOT_AVAILABLE ) - return QString::null; + ; else if ( m_timeRemaining == TIME_REMAINING_INFINITE ) - return QString( "?" ); + text = "?"; else - { - int remTime = m_timeRemaining; - int remHour = remTime / 3600; remTime -= remHour * 3600; - int remMin = remTime / 60; remTime -= remMin * 60; - QString text; - if ( remHour ) - text += QString::number( remHour ) + ":"; - if ( remMin ) - text += QString::number( remMin ) + ":"; - if ( text.isEmpty() ) - text = i18n("%1 sec").arg( QString::number( remTime ) ); - else - text += QString::number( remTime ); - return text; - } + text = QTime().addSecs( m_timeRemaining ).toString( "hh:mm:ss" ); + + return text; } QString DccTransfer::getCPSPrettyText() const