vlc | branch: master | Abel Tesfaye <[email protected]> | Fri Aug 9 13:49:27 2019 +0300| [4d856f3e20c571fe18f70007492a031d148829a7] | committer: Jean-Baptiste Kempf
qt: add title_first_symbol property to mlvideomodel Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=4d856f3e20c571fe18f70007492a031d148829a7 --- modules/gui/qt/components/mediacenter/mlvideomodel.cpp | 13 +++++++++++++ modules/gui/qt/components/mediacenter/mlvideomodel.hpp | 1 + 2 files changed, 14 insertions(+) diff --git a/modules/gui/qt/components/mediacenter/mlvideomodel.cpp b/modules/gui/qt/components/mediacenter/mlvideomodel.cpp index 01fe549d0f..26136de8ac 100644 --- a/modules/gui/qt/components/mediacenter/mlvideomodel.cpp +++ b/modules/gui/qt/components/mediacenter/mlvideomodel.cpp @@ -33,6 +33,8 @@ enum Role { VIDEO_MRL, VIDEO_VIDEO_TRACK, VIDEO_AUDIO_TRACK, + + VIDEO_TITLE_FIRST_SYMBOL, }; } @@ -80,6 +82,9 @@ QVariant MLVideoModel::data(const QModelIndex& index, int role) const return QVariant::fromValue( video->getVideoDesc() ); case VIDEO_AUDIO_TRACK: return QVariant::fromValue( video->getAudioDesc() ); + case VIDEO_TITLE_FIRST_SYMBOL: + return QVariant::fromValue( getFirstSymbol( video->getTitle() ) ); + default: return {}; } @@ -100,6 +105,7 @@ QHash<int, QByteArray> MLVideoModel::roleNames() const { VIDEO_MRL, "mrl" }, { VIDEO_AUDIO_TRACK, "audioDesc" }, { VIDEO_VIDEO_TRACK, "videoDesc" }, + { VIDEO_TITLE_FIRST_SYMBOL, "title_first_symbol"}, }; } @@ -158,3 +164,10 @@ void MLVideoModel::onVlcMlEvent(const vlc_ml_event_t* event) } MLBaseModel::onVlcMlEvent( event ); } +QString MLVideoModel::getFirstSymbol( const QString& str ) +{ + QString ret("#"); + if ( str.length() > 0 && str[0].isLetter() ) + ret = str[0].toUpper(); + return ret; +} diff --git a/modules/gui/qt/components/mediacenter/mlvideomodel.hpp b/modules/gui/qt/components/mediacenter/mlvideomodel.hpp index 91e2d62fe1..ae0bac0dc6 100644 --- a/modules/gui/qt/components/mediacenter/mlvideomodel.hpp +++ b/modules/gui/qt/components/mediacenter/mlvideomodel.hpp @@ -50,6 +50,7 @@ private: virtual void onVlcMlEvent( const vlc_ml_event_t* event ) override; static QHash<QByteArray, vlc_ml_sorting_criteria_t> M_names_to_criteria; + static QString getFirstSymbol( const QString& str ); }; #endif // MCVIDEOMODEL_H _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
