[vlc-devel] [PATCH 00/12] First implementation of groups on the Qt side
Benjamin Arnaud
benjamin.arnaud at videolabs.io
Wed Apr 14 08:05:47 UTC 2021
This patch is a first implementation of medialibrary groups on the Qt / QML side.
It contains the following:
- A collection of models that make group(s) accessible from our views.
- Parented media(s) support in the MLVideoModel.
- QML views for the Video tabs displaying:
- The list of group(s) and video(s)
- The list of video(s) inside a group.
- Contextual menus for each view.
This is a first implementation and we still need to implement the thumbnails, similar to what we already have on Android.
Thanks to Pierre, Chouquette and rom1v for their support.
Benjamin Arnaud (12):
medialibrary: Add comprehensive group support
qt/mlvideomodel: Add support for parented media(s) in the
MLVideoModel::Loader
qt: Create MLGroup
qt: Create MLGroupListModel
qt/mlbasemodel: Add 'getData' function for QModelIndex
qt/qml_menu_wrapper: Add group support
qt/mainui: Add QML group support
qml/VideoListDisplay: Add configuration for the 'mainCriteria'
qml/VideoAll: Add support for different models qml/VideoGridItem:
Remove the static 'onItemDoubleClicked' behavior
qml: Create MediaGroupList
qml: Create MediaGroupDisplay
qml: Create VideoGroupsDisplay
include/vlc_media_library.h | 83 ++++
modules/gui/qt/Makefile.am | 9 +
modules/gui/qt/maininterface/mainui.cpp | 3 +
modules/gui/qt/medialibrary/mlbasemodel.cpp | 21 +-
modules/gui/qt/medialibrary/mlbasemodel.hpp | 3 +-
modules/gui/qt/medialibrary/mlevent.hpp | 5 +
modules/gui/qt/medialibrary/mlgroup.cpp | 70 ++++
modules/gui/qt/medialibrary/mlgroup.hpp | 64 +++
.../gui/qt/medialibrary/mlgrouplistmodel.cpp | 287 +++++++++++++
.../gui/qt/medialibrary/mlgrouplistmodel.hpp | 91 ++++
modules/gui/qt/medialibrary/mlqmltypes.hpp | 1 +
modules/gui/qt/medialibrary/mlvideomodel.cpp | 43 +-
.../qt/medialibrary/qml/MediaGroupDisplay.qml | 73 ++++
.../qt/medialibrary/qml/MediaGroupList.qml | 393 ++++++++++++++++++
modules/gui/qt/medialibrary/qml/VideoAll.qml | 41 +-
.../gui/qt/medialibrary/qml/VideoDisplay.qml | 6 +-
.../gui/qt/medialibrary/qml/VideoGridItem.qml | 6 -
.../medialibrary/qml/VideoGroupsDisplay.qml | 117 ++++++
.../qt/medialibrary/qml/VideoListDisplay.qml | 102 ++++-
modules/gui/qt/menus/qml_menu_wrapper.cpp | 45 ++
modules/gui/qt/menus/qml_menu_wrapper.hpp | 21 +
modules/gui/qt/vlc.qrc | 3 +
modules/misc/medialibrary/entities.cpp | 17 +
modules/misc/medialibrary/medialibrary.cpp | 125 +++++-
modules/misc/medialibrary/medialibrary.h | 3 +
po/POTFILES.in | 7 +
src/libvlccore.sym | 2 +
src/misc/medialibrary.c | 27 ++
28 files changed, 1589 insertions(+), 79 deletions(-)
create mode 100644 modules/gui/qt/medialibrary/mlgroup.cpp
create mode 100644 modules/gui/qt/medialibrary/mlgroup.hpp
create mode 100644 modules/gui/qt/medialibrary/mlgrouplistmodel.cpp
create mode 100644 modules/gui/qt/medialibrary/mlgrouplistmodel.hpp
create mode 100644 modules/gui/qt/medialibrary/qml/MediaGroupDisplay.qml
create mode 100644 modules/gui/qt/medialibrary/qml/MediaGroupList.qml
create mode 100644 modules/gui/qt/medialibrary/qml/VideoGroupsDisplay.qml
--
2.25.1
More information about the vlc-devel
mailing list