Move formatDuration out of MainWindow class
This commit is contained in:
10
TODO
10
TODO
@@ -4,16 +4,6 @@
|
||||
- Allow drag-n-drop within playlist
|
||||
- 'Add to playlist XXX' entries to library, album, and folder context menus
|
||||
|
||||
* Improve tooltips in views.
|
||||
Library
|
||||
Artist\n%n Albums
|
||||
Album\n%n Songs
|
||||
Song\nDuration
|
||||
Playlists
|
||||
Playlist\n%n Songs DONE
|
||||
Song\nDuration
|
||||
|
||||
|
||||
* Add next/prev provider buttons to lyrics page - so that can try others.
|
||||
|
||||
* Need better repeat icon.
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#include "mpdconnection.h"
|
||||
#include "mpdstats.h"
|
||||
#include "mainwindow.h"
|
||||
|
||||
#include "mpdparseutils.h"
|
||||
#ifdef ENABLE_KDE_SUPPORT
|
||||
#include <KDE/KAction>
|
||||
#include <KDE/KLocale>
|
||||
@@ -74,9 +74,9 @@ void InfoPage::clear()
|
||||
|
||||
void InfoPage::statsUpdated()
|
||||
{
|
||||
uptime->setText(MainWindow::formatDuration(MPDStats::self()->uptime()));
|
||||
timePlaying->setText(MainWindow::formatDuration(MPDStats::self()->playtime()));
|
||||
totalDuration->setText(MainWindow::formatDuration(MPDStats::self()->dbPlaytime()));
|
||||
uptime->setText(MPDParseUtils::formatDuration(MPDStats::self()->uptime()));
|
||||
timePlaying->setText(MPDParseUtils::formatDuration(MPDStats::self()->playtime()));
|
||||
totalDuration->setText(MPDParseUtils::formatDuration(MPDStats::self()->dbPlaytime()));
|
||||
artists->setText(QString::number(MPDStats::self()->artists()));
|
||||
album->setText(QString::number(MPDStats::self()->albums()));
|
||||
songs->setText(QString::number(MPDStats::self()->songs()));
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
|
||||
#include "librarypage.h"
|
||||
#include "mpdconnection.h"
|
||||
#include "mpdparseutils.h"
|
||||
#include "covers.h"
|
||||
#include "musiclibraryitemalbum.h"
|
||||
#include "musiclibraryitemsong.h"
|
||||
@@ -106,7 +107,7 @@ public:
|
||||
break;
|
||||
case MusicLibraryItem::Type_Song:
|
||||
pix=QIcon::fromTheme("audio-x-generic").pixmap(imageSize, imageSize);
|
||||
childText=MainWindow::formatDuration(static_cast<MusicLibraryItemSong *>(item)->time());
|
||||
childText=MPDParseUtils::formatDuration(static_cast<MusicLibraryItemSong *>(item)->time());
|
||||
if (childText.startsWith(QLatin1String("00:"))) {
|
||||
childText=childText.mid(3);
|
||||
}
|
||||
|
||||
@@ -1148,32 +1148,6 @@ void MainWindow::addToPlaylist()
|
||||
}
|
||||
}
|
||||
|
||||
QString MainWindow::formatDuration(const quint32 totalseconds)
|
||||
{
|
||||
//Get the days,hours,minutes and seconds out of the total seconds
|
||||
quint32 days = totalseconds / 86400;
|
||||
quint32 rest = totalseconds - (days * 86400);
|
||||
quint32 hours = rest / 3600;
|
||||
rest = rest - (hours * 3600);
|
||||
quint32 minutes = rest / 60;
|
||||
quint32 seconds = rest - (minutes * 60);
|
||||
|
||||
//Convert hour,minutes and seconds to a QTime for easier parsing
|
||||
QTime time(hours, minutes, seconds);
|
||||
|
||||
#ifdef ENABLE_KDE_SUPPORT
|
||||
return 0==days
|
||||
? time.toString("hh:mm:ss")
|
||||
: i18np("1 day %2", "%1 days %2", days, time.toString("hh:mm:ss"));
|
||||
#else
|
||||
return 0==days
|
||||
? time.toString("hh:mm:ss")
|
||||
: 1==days
|
||||
? QObject::tr("1 day %1").arg(time.toString("hh:mm:ss"))
|
||||
: QObject::tr("%1 days %2").arg(days).arg(time.toString("hh:mm:ss"));
|
||||
#endif
|
||||
}
|
||||
|
||||
void MainWindow::updatePlayListStatus()
|
||||
{
|
||||
MPDStats * const stats = MPDStats::self();
|
||||
@@ -1194,7 +1168,7 @@ void MainWindow::updatePlayListStatus()
|
||||
status += QString::number(stats->playlistSongs())+QString(1==stats->playlistSongs() ? " Song" : "Songs");
|
||||
#endif
|
||||
status += " (";
|
||||
status += formatDuration(stats->playlistTime());
|
||||
status += MPDParseUtils::formatDuration(stats->playlistTime());
|
||||
status += ")";
|
||||
|
||||
playListStatsLabel->setText(status);
|
||||
|
||||
@@ -146,8 +146,6 @@ public:
|
||||
MainWindow(QWidget *parent = 0);
|
||||
~MainWindow();
|
||||
|
||||
static QString formatDuration(const quint32 totalseconds);
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent *event);
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include "playlisttablemodel.h"
|
||||
#include "settings.h"
|
||||
#include "config.h"
|
||||
#include "mainwindow.h"
|
||||
#include "mpdparseutils.h"
|
||||
#include <QCommonStyle>
|
||||
#include <QFile>
|
||||
#include <QXmlStreamReader>
|
||||
@@ -45,6 +45,7 @@
|
||||
#include <QStringList>
|
||||
#ifdef ENABLE_KDE_SUPPORT
|
||||
#include <KDE/KIcon>
|
||||
#include <KDE/KLocale>
|
||||
#endif
|
||||
|
||||
QString MusicLibraryModel::cacheDir(const QString &sub, bool create)
|
||||
@@ -195,7 +196,7 @@ QVariant MusicLibraryModel::data(const QModelIndex &index, int role) const
|
||||
: tr("%1\n1 Song").arg(item->data(index.column()).toString());
|
||||
#endif
|
||||
case MusicLibraryItem::Type_Song: {
|
||||
QString duration=MainWindow::formatDuration(static_cast<MusicLibraryItemSong *>(item)->time());
|
||||
QString duration=MPDParseUtils::formatDuration(static_cast<MusicLibraryItemSong *>(item)->time());
|
||||
if (duration.startsWith(QLatin1String("00:"))) {
|
||||
duration=duration.mid(3);
|
||||
}
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
#include "mpdparseutils.h"
|
||||
#include "mpdstats.h"
|
||||
#include "mpdconnection.h"
|
||||
#include "mainwindow.h"
|
||||
|
||||
PlaylistsModel::PlaylistsModel(QObject *parent)
|
||||
: QAbstractListModel(parent)
|
||||
@@ -91,7 +90,7 @@ QVariant PlaylistsModel::data(const QModelIndex &index, int role) const
|
||||
: tr("%1\n1 Song").arg(pl.name);
|
||||
#endif
|
||||
#if 0
|
||||
QString duration=MainWindow::formatDuration(static_cast<MusicLibraryItemSong *>(item)->time());
|
||||
QString duration=MPDParseUtils::formatDuration(static_cast<MusicLibraryItemSong *>(item)->time());
|
||||
if (duration.startsWith(QLatin1String("00:"))) {
|
||||
duration=duration.mid(3);
|
||||
}
|
||||
|
||||
@@ -27,7 +27,9 @@
|
||||
#include <QList>
|
||||
#include <QString>
|
||||
#include <QStringList>
|
||||
|
||||
#ifdef ENABLE_KDE_SUPPORT
|
||||
#include <KDE/KLocale>
|
||||
#endif
|
||||
#include "dirviewitemroot.h"
|
||||
#include "dirviewitemdir.h"
|
||||
#include "dirviewitemfile.h"
|
||||
@@ -42,9 +44,6 @@
|
||||
#include "song.h"
|
||||
#include "output.h"
|
||||
#include "covers.h"
|
||||
#ifdef ENABLE_KDE_SUPPORT
|
||||
#include <KDE/KLocale>
|
||||
#endif
|
||||
|
||||
QString MPDParseUtils::getDir(const QString &f)
|
||||
{
|
||||
@@ -386,3 +385,28 @@ QList<Output> MPDParseUtils::parseOuputs(const QByteArray &data)
|
||||
return outputs;
|
||||
}
|
||||
|
||||
QString MPDParseUtils::formatDuration(const quint32 totalseconds)
|
||||
{
|
||||
//Get the days,hours,minutes and seconds out of the total seconds
|
||||
quint32 days = totalseconds / 86400;
|
||||
quint32 rest = totalseconds - (days * 86400);
|
||||
quint32 hours = rest / 3600;
|
||||
rest = rest - (hours * 3600);
|
||||
quint32 minutes = rest / 60;
|
||||
quint32 seconds = rest - (minutes * 60);
|
||||
|
||||
//Convert hour,minutes and seconds to a QTime for easier parsing
|
||||
QTime time(hours, minutes, seconds);
|
||||
|
||||
#ifdef ENABLE_KDE_SUPPORT
|
||||
return 0==days
|
||||
? time.toString("hh:mm:ss")
|
||||
: i18np("1 day %2", "%1 days %2", days, time.toString("hh:mm:ss"));
|
||||
#else
|
||||
return 0==days
|
||||
? time.toString("hh:mm:ss")
|
||||
: 1==days
|
||||
? QObject::tr("1 day %1").arg(time.toString("hh:mm:ss"))
|
||||
: QObject::tr("%1 days %2").arg(days).arg(time.toString("hh:mm:ss"));
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ public:
|
||||
static MusicLibraryItemRoot * parseLibraryItems(const QByteArray &data);
|
||||
static DirViewItemRoot * parseDirViewItems(const QByteArray &data);
|
||||
static QList<Output> parseOuputs(const QByteArray &data);
|
||||
static QString formatDuration(const quint32 totalseconds);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user