Warning, /maui/clip/src/views/player/Playlist.qml is written in an unsupported language. File is not indexed.
0001 import QtQuick 2.14 0002 import QtQml 2.14 0003 import QtQuick.Controls 2.14 0004 import QtQuick.Layouts 1.3 0005 import org.mauikit.controls 1.3 as Maui 0006 import org.maui.clip 1.0 as Clip 0007 0008 import ".." 0009 0010 Maui.ListBrowser 0011 { 0012 id: control 0013 0014 property alias list : _collectionList 0015 property alias listModel: _collectionModel 0016 0017 clip: true 0018 0019 holder.visible: list.count === 0 0020 holder.emoji: "qrc:/img/assets/media-playlist-append.svg" 0021 holder.title: i18n("No Videos!") 0022 holder.body: i18n("Add videos to the playlist.") 0023 0024 Binding on currentIndex 0025 { 0026 value: _playerView.currentVideoIndex 0027 restoreMode: Binding.RestoreBindingOrValue 0028 } 0029 0030 model: Maui.BaseModel 0031 { 0032 id: _collectionModel 0033 recursiveFilteringEnabled: true 0034 sortCaseSensitivity: Qt.CaseInsensitive 0035 filterCaseSensitivity: Qt.CaseInsensitive 0036 list: Clip.Videos 0037 { 0038 id: _collectionList 0039 } 0040 } 0041 0042 ItemMenu 0043 { 0044 id: _menu 0045 index: control.currentIndex 0046 model: control.model 0047 } 0048 0049 delegate: Maui.ListBrowserDelegate 0050 { 0051 id: _listDelegate 0052 width: ListView.view.width 0053 0054 isCurrentItem: ListView.isCurrentItem 0055 draggable: true 0056 tooltipText: model.url 0057 0058 label1.text: model.label 0059 label2.text: Qt.formatDateTime(new Date(model.modified), "d MMM yyyy") 0060 imageSource: model.thumbnail 0061 template.fillMode: Image.PreserveAspectCrop 0062 0063 ToolButton 0064 { 0065 Layout.fillHeight: true 0066 Layout.preferredWidth: implicitWidth 0067 visible: (Maui.Handy.isTouch ? true : _listDelegate.hovered) 0068 icon.name: "edit-clear" 0069 onClicked: 0070 { 0071 if(index === _playerView.currentVideoIndex) 0072 player.video.stop() 0073 0074 _collectionList.remove(index) 0075 } 0076 0077 opacity: _listDelegate.hovered ? 0.8 : 0.6 0078 } 0079 0080 0081 onToggled: 0082 { 0083 control.currentView.itemsSelected([index]) 0084 } 0085 0086 onClicked: (mouse) => 0087 { 0088 control.currentIndex = index 0089 0090 if(selectionMode || (mouse.button == Qt.LeftButton && (mouse.modifiers & Qt.ControlModifier))) 0091 { 0092 control.currentView.itemsSelected([index]) 0093 }else if(Maui.Handy.singleClick) 0094 { 0095 playAt(index) 0096 } 0097 } 0098 0099 onDoubleClicked: 0100 { 0101 control.currentIndex = index 0102 0103 if(!Maui.Handy.singleClick && !selectionMode) 0104 { 0105 playAt(index) 0106 } 0107 } 0108 0109 // onPressAndHold: 0110 // { 0111 // control.currentIndex = index 0112 // _menu.popup() 0113 // } 0114 0115 // onRightClicked: 0116 // { 0117 // control.currentIndex = index 0118 // _menu.popup() 0119 // } 0120 } 0121 0122 function append(item) 0123 { 0124 console.log("Queue item<<" , item, item.url) 0125 0126 control.list.append(item) 0127 } 0128 } 0129