Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • videolan/vlc
  • chouquette/vlc
  • bakiewicz.marek122/vlc
  • devnexen/vlc
  • rohanrajpal/vlc
  • blurrrb/vlc
  • gsoc/gsoc2019/darkapex/vlc
  • b1ue/vlc
  • fkuehne/vlc
  • magsoft/vlc
  • chub/vlc
  • cramiro9/vlc
  • robUx4/vlc
  • rom1v/vlc
  • akshayaky/vlc
  • tmk907/vlc
  • akymaster/vlc
  • govind.sharma/vlc
  • psilokos/vlc
  • xjbeta/vlc
  • jahan/vlc
  • 1480c1/vlc
  • amanchande/vlc
  • aaqib/vlc
  • rist/vlc
  • apol/vlc
  • mindfreeze/vlc
  • alexandre-janniaux/vlc
  • sandsmark/vlc
  • jagannatharjun/vlc
  • gsoc/gsoc2020/matiaslgonzalez/vlc
  • gsoc/gsoc2020/jagannatharjun/vlc
  • mstorsjo/vlc
  • gsoc/gsoc2020/vedenta/vlc
  • gsoc/gsoc2020/arnav-ishaan/vlc
  • gsoc/gsoc2020/andreduong/vlc
  • fuzun/vlc
  • gsoc/gsoc2020/vatsin/vlc
  • gsoc/gsoc2020/sagid/vlc
  • yaron/vlc
  • Phoenix/vlc
  • Garf/vlc
  • ePiratWorkarounds/vlc
  • tguillem/vlc
  • jnqnfe/vlc
  • mdc/vlc
  • Vedaa/vlc
  • rasa/vlc
  • quink/vlc
  • yealo/vlc
  • aleksey_ak/vlc
  • ePirat/vlc
  • ilya.yanok/vlc
  • asenat/vlc
  • m/vlc
  • bunjee/vlc
  • BLumia/vlc
  • sagudev/vlc
  • hamedmonji30/vlc
  • nullgemm/vlc
  • DivyamAhuja/vlc
  • thesamesam/vlc
  • dag7/vlc
  • snehil101/vlc
  • haasn/vlc
  • jbk/vlc
  • ValZapod/vlc
  • mfkl/vlc
  • WangChuan/vlc
  • core1024/vlc
  • GhostVaibhav/vlc
  • dfuhrmann/vlc
  • davide.prade/vlc
  • tmatth/vlc
  • Courmisch/vlc
  • zouya/vlc
  • hpi/vlc
  • EwoutH/vlc
  • aleung27/vlc
  • hengwu0/vlc
  • saladin/vlc
  • ashuio/vlc
  • richselwood/vlc
  • verma16Ayush/vlc
  • chemicalflash/vlc
  • PoignardAzur/vlc
  • huangjieNT/vlc
  • Blake-Haydon/vlc
  • AnuthaDev/vlc
  • gsoc/gsoc2021/mpd/vlc
  • nicolas_lequec/vlc
  • sambassaly/vlc
  • thresh/vlc
  • bonniegong/vlc
  • myaashish/vlc
  • stavros.vagionitis/vlc
  • ileoo/vlc
  • louis-santucci/vlc
  • cchristiansen/vlc
  • sabyasachi07/vlc
  • AbduAmeen/vlc
  • ashishb0410/vlc
  • urbanhusky/vlc
  • davidepietrasanta/vlc
  • riksleutelstad/vlc
  • jeremyVignelles/vlc
  • komh/vlc
  • iamjithinjohn/vlc
  • JohannesKauffmann/vlc2
  • kunglao/vlc
  • natzberg/vlc
  • jill/vlc
  • cwendling/vlc
  • adufou/vlc
  • ErwanAirone/vlc
  • HasinduDilshan10/vlc
  • vagrantc/vlc
  • rafiv/macos-bigsur-icon
  • Aymeriic/vlc
  • saranshg20/vlc
  • metzlove24/vlc
  • linkfanel/vlc
  • Ds886/vlc
  • metehan-arslan/vlc
  • Skantes/vlc
  • kgsandundananjaya96/vlc
  • mitchcapper/vlc
  • advaitgupta/vlc
  • StefanBruens/vlc
  • ratajs/vlc
  • T.M.F.B.3761/vlc
  • m222059/vlc
  • casemerrick/vlc
  • joshuaword2alt/vlc
  • sjwaddy/vlc
  • dima/vlc
  • Ybalrid/vlc
  • umxprime/vlc
  • eschmidt/vlc
  • vannieuwenhuysenmichelle/vlc
  • badcf00d/vlc
  • wesinator/vlc
  • louis/vlc
  • xqq/vlc
  • EmperorYP7/vlc
  • NicoLiam/vlc
  • loveleen/vlc
  • rofferom/vlc
  • rbultje/vlc
  • TheUnamed/vlc
  • pratiksharma341/vlc
  • Saurab17/vlc
  • purist.coder/vlc
  • Shuicheng/vlc
  • mdrrubel292/vlc
  • silverbleu00/vlc
  • metif12/vlc
  • asher-m/vlc
  • jeffk/vlc
  • Brandonbr1/vlc
  • beautyyuyanli/vlc
  • rego21/vlc
  • muyangren907/vlc
  • collectionbylawrencejason/vlc
  • evelez/vlc
  • GSMgeeth/vlc
  • Oneric/vlc
  • TJ5/vlc
  • XuanTung95/vlc
  • darrenjenny21/vlc
  • Trenly/vlc
  • RockyTDR/vlc
  • mjakubowski/vlc
  • caprica/vlc
  • ForteFrankie/vlc
  • seannamiller19/vlc
  • junlon2006/vlc
  • kiwiren6666/vlc
  • iuseiphonexs/vlc
  • fenngtun/vlc
  • Rajdutt999/vlc
  • typx/vlc
  • leon.vitanos/vlc
  • robertogarci0938/vlc
  • gsoc/gsoc2022/luc65r/vlc-mpd
  • skeller/vlc
  • MCJack123/vlc
  • luc65r/vlc-mpd
  • popov895/vlc
  • claucambra/vlc
  • brad/vlc
  • matthewmurua88/vlc
  • Tomas8874/vlc
  • philenotfound/vlc
  • makita-do3/vlc
  • LZXCorp/vlc
  • mar0x/vlc
  • senojetkennedy0102/vlc
  • shaneb243/vlc
  • ahmadbader/vlc
  • rajduttcse26/vlc-audio-filters
  • Juniorzito8415/vlc
  • achernyakov/vlc
  • lucasjetgroup/vlc
  • pupdoggy666/vlc
  • gmde9363/vlc
  • alexnwayne/vlc
  • bahareebrahimi781/vlc
  • hamad633666/vlc
  • umghof3112/vlc
  • joe0199771874/vlc
  • Octocats66666666/vlc
  • jjm_223/vlc
  • btech10110.19/vlc
  • sunnykfc028/vlc-audio-filters
  • loic/vlc
  • nguyenminhducmx1/vlc
  • JanekKrueger/vlc
  • bstubbington2/vlc
  • rcombs/vlc
  • Ordissimo/vlc
  • king7532/vlc
  • noobsauce101/vlc
  • schong0525/vlc
  • myQwil/vlc
  • apisbg91/vlc
  • geeboy0101017/vlc
  • kim.faughey/vlc
  • nurupo/vlc
  • yyusea/vlc
  • 0711235879.khco/vlc
  • ialo/vlc
  • iloveyeye2/vlc
  • gdtdftdqtd/vlc
  • leandroconsiglio/vlc
  • AndyHTML2012/vlc
  • ncz/vlc
  • lucenticus/vlc
  • knr1931/vlc
  • kjoonlee/vlc
  • chandrakant100/vlc-qt
  • johge42/vlc
  • polter/vlc
  • hexchain/vlc
  • Tushwrld/vlc
  • mztea928/vlc
  • jbelloncastro/vlc
  • alvinhochun/vlc
  • ghostpiratecrow/vlc
  • ujjwaltwitx/vlc
  • alexsonarin06/vlc
  • adrianbon76/vlc
  • altsod/vlc
  • damien.lucas44/vlc
  • dmytrivtaisa/vlc
  • utk202/vlc
  • aaxhrj/vlc
  • thomas.hermes/vlc
  • structurenewworldorder/vlc
  • slomo/vlc
  • wantlamy/vlc
  • musc.o3cminc/vlc
  • thebarshablog/vlc
  • kerrick/vlc
  • kratos142518/vlc
  • leogps/vlc
  • vacantron/vlc
  • luna_koly/vlc
  • Ratio2/vlc
  • anuoshemohammad/vlc
  • apsun/vlc
  • aaa1115910/vlc
  • alimotmoyo/vlc
  • Ambossmann/vlc
  • Sam-LearnsToCode/vlc
  • Chilledheart/vlc
  • Labnann/vlc
  • ktcoooot1/vlc
  • mohit-marathe/vlc
  • johnddx/vlc
  • manstabuk/vlc
  • Omar-ahmed314/vlc
  • vineethkm/vlc
  • 9Enemi86/vlc
  • radoslav.m.panteleev/vlc
  • ashishami2002/vlc
  • Corbax/vlc
  • firnasahmed/vlc
  • pelayarmalam4/vlc
  • c0ff330k/vlc
  • shikhindahikar/vlc
  • l342723951/vlc
  • christianschwandner/vlc
  • douniwan5788/vlc
  • 7damian7/vlc
  • ferdnyc/vlc
  • f.ales1/vlc
  • pandagby/vlc
  • BaaBaa/vlc
  • jewe37/vlc
  • w00drow/vlc
  • russelltg/vlc
  • ironicallygod/vlc
  • soumyaDghosh/vlc
  • linzihao1999/vlc
  • deyayush6/vlc
  • mibi88/vlc
  • newabdallah10/vlc
  • jhorbincolombia/vlc
  • rimvihaqueshupto/vlc
  • andrewkhon98/vlc
  • fab78/vlc
  • lapaz17/vlc
  • amanna13/vlc
  • mdakram28/vlc
  • 07jw1980/vlc
  • sohamgupta/vlc
  • Eson-Jia1/vlc
  • Sumou/vlc
  • vikram-kangotra/vlc
  • chalice191/vlc
  • olivercalder/vlc
  • aaasg4001/vlc
  • zipdox/vlc
  • kwizart/vlc
  • Dragon-S/vlc
  • jdemeule/vlc
  • gabriel_lt/vlc
  • locutusofborg/vlc
  • sammirata/vlc-librist
  • another/vlc
  • Benjamin_Loison/vlc
  • ahmedmoselhi/vlc
  • petergaal/vlc
  • huynhsontung/vlc
  • dariusmihut/vlc
  • tvermaashutosh/vlc
  • buti/vlc
  • Niram7777/vlc
  • rohan-here/vlc
  • balaji-sivasakthi/vlc
  • rlindner81/vlc
  • Kakadus/vlc
  • djain/vlc
  • ABBurmeister/vlc
  • craighuggins/vlc
  • orbea/vlc
  • maxos/vlc
  • aakarshmj/vlc
  • kblaschke/vlc
  • ankitm/vlc
  • advait-0/vlc
  • mohak2003/vlc
  • yselkowitz/vlc
  • AZM999/vlc-azm
  • andrey.turkin/vlc
  • Disha-Baghel/vlc
  • nowrep/vlc
  • Apeng/vlc
  • Choucroute_melba/vlc
  • autra/vlc
  • eclipseo/vlc
  • fhuber/vlc
  • olafhering/vlc
  • sdasda7777/vlc
  • 1div0/vlc
  • skosnits/vlc-extended-playlist-support
  • dnicolson/vlc
  • Timshel/vlc
  • octopols/vlc
  • MangalK/vlc
  • nima64/vlc
  • misawai/vlc
  • Alexander-Wilms/vlc
  • Maxime2/vlc-fork-for-visualizer
  • ww/vlc
  • jeske/vlc
  • sgross-emlix/vlc
  • morenonatural/vlc
  • freakingLovesVLC/vlc
  • borisgolovnev/vlc
  • mpromonet/vlc
  • diogo.simao-marques/vlc
  • masstock/vlc
  • pratikpatel8982/vlc
  • hugok79/vlc
  • longervision/vlc
  • abhiudaysurya/vlc
  • rishabhgarg/vlc
  • tumic/vlc
  • cart/vlc
  • shubham442/vlc
  • Aditya692005/vlc
  • sammirata/vlc4
  • syrykh/vlc
  • Vvorcun/macos-new-icon
  • AyaanshC/vlc
  • nasso/vlc
  • Quark/vlc
  • sebastinas/vlc
  • rhstone/vlc
  • talregev/vlc
  • Managor/vlc
403 results
Show changes
Commits on Source (3)
Showing
with 405 additions and 135 deletions
......@@ -217,11 +217,39 @@ FocusScope {
rowHeight: VLCStyle.tableCoverRow_height
headerTopPadding: VLCStyle.margin_normal
sortModel: [
{ isPrimary: true, criteria: "title", width: VLCStyle.colWidth(2), text: I18n.qtr("Title"), headerDelegate: tableColumns.titleHeaderDelegate, colDelegate: tableColumns.titleDelegate, placeHolder: VLCStyle.noArtAlbumCover },
{ criteria: "main_artist", width: VLCStyle.colWidth(Math.max(tableView_id._nbCols - 3, 1)), text: I18n.qtr("Artist") },
{ criteria: "duration", width:VLCStyle.colWidth(1), showSection: "", headerDelegate: tableColumns.timeHeaderDelegate, colDelegate: tableColumns.timeColDelegate },
]
sortModel: [{
size: 2,
model: {
criteria: "title",
text: I18n.qtr("Title"),
headerDelegate: tableColumns.titleHeaderDelegate,
colDelegate: tableColumns.titleDelegate,
placeHolder: VLCStyle.noArtAlbumCover
}
}, {
size: Math.max(tableView_id._nbCols - 3, 1),
model: {
criteria: "main_artist",
text: I18n.qtr("Artist")
}
}, {
size: 1,
model: {
criteria: "duration",
showSection: "",
headerDelegate: tableColumns.timeHeaderDelegate,
colDelegate: tableColumns.timeColDelegate
}
}]
Navigation.cancelAction: root._onNavigationCancel
......
......@@ -289,10 +289,35 @@ FocusScope {
currentIndex = 0
}
sortModel: [
{ isPrimary: true, criteria: "title", width: VLCStyle.colWidth(Math.max(tracks._nbCols - 1, 1)), visible: true, text: I18n.qtr("Title"), showSection: "", colDelegate: titleDelegate, headerDelegate: titleHeaderDelegate },
{ criteria: "duration", width: VLCStyle.colWidth(1), visible: true, showSection: "", colDelegate: tableColumns.timeColDelegate, headerDelegate: tableColumns.timeHeaderDelegate },
]
sortModel: [{
size: Math.max(tracks._nbCols - 1, 1),
model: {
criteria: "title",
visible: true,
text: I18n.qtr("Title"),
showSection: "",
colDelegate: titleDelegate,
headerDelegate: titleHeaderDelegate
}
}, {
size: 1,
model: {
criteria: "duration",
visible: true,
showSection: "",
colDelegate: tableColumns.timeColDelegate,
headerDelegate: tableColumns.timeHeaderDelegate
}
}]
Navigation.parentItem: root
Navigation.leftItem: actionButtons
......
......@@ -187,10 +187,28 @@ FocusScope {
}
}
sortModel: [
{ isPrimary: true, criteria: "name", width: VLCStyle.colWidth(Math.max(artistTable._nbCols - 1, 1)), text: I18n.qtr("Name"), headerDelegate: tableColumns.titleHeaderDelegate, colDelegate: tableColumns.titleDelegate, placeHolder: VLCStyle.noArtArtistSmall },
{ criteria: "nb_tracks", width: VLCStyle.colWidth(1), text: I18n.qtr("Tracks") }
]
sortModel: [{
size: Math.max(artistTable._nbCols - 1, 1),
model: {
criteria: "name",
text: I18n.qtr("Name"),
headerDelegate: tableColumns.titleHeaderDelegate,
colDelegate: tableColumns.titleDelegate,
placeHolder: VLCStyle.noArtArtistSmall
}
}, {
size: 1,
model: {
criteria: "nb_tracks",
text: I18n.qtr("Tracks")
}
}]
onItemDoubleClicked: root.requestArtistAlbumView(Qt.MouseFocusReason)
......
......@@ -395,11 +395,37 @@ FocusScope {
headerPositioning: ListView.InlineHeader
rowHeight: VLCStyle.tableCoverRow_height
sortModel: [
{ isPrimary: true, criteria: "title", width: VLCStyle.colWidth(2), text: I18n.qtr("Title"), headerDelegate: tableColumns.titleHeaderDelegate, colDelegate: tableColumns.titleDelegate },
{ criteria: "album_title", width: VLCStyle.colWidth(Math.max(tableView_id._nbCols - 3, 1)), text: I18n.qtr("Album") },
{ criteria: "duration", width:VLCStyle.colWidth(1), showSection: "", headerDelegate: tableColumns.timeHeaderDelegate, colDelegate: tableColumns.timeColDelegate },
]
sortModel: [{
size: 2,
model: {
criteria: "title",
text: I18n.qtr("Title"),
headerDelegate: tableColumns.titleHeaderDelegate,
colDelegate: tableColumns.titleDelegate
}
}, {
size: Math.max(tableView_id._nbCols - 3, 1),
model: {
criteria: "album_title",
text: I18n.qtr("Album")
}
}, {
size: 1,
model: {
criteria: "duration",
showSection: "",
headerDelegate: tableColumns.timeHeaderDelegate,
colDelegate: tableColumns.timeColDelegate
}
}]
Navigation.parentItem: root
......
......@@ -247,25 +247,30 @@ FocusScope {
headerTopPadding: VLCStyle.margin_normal
sortModel: [{
isPrimary: true,
criteria: "cover",
size: 1,
width: VLCStyle.colWidth(1),
model: {
criteria: "cover",
headerDelegate: tableColumns.titleHeaderDelegate,
colDelegate: tableColumns.titleDelegate
headerDelegate: tableColumns.titleHeaderDelegate,
colDelegate: tableColumns.titleDelegate
}
}, {
criteria: "name",
size: _nameColSpan,
width: VLCStyle.colWidth(_nameColSpan),
model: {
criteria: "name",
text: I18n.qtr("Name")
text: I18n.qtr("Name")
}
}, {
criteria: "nb_tracks",
size: 1,
width: VLCStyle.colWidth(1),
model: {
criteria: "nb_tracks",
text: I18n.qtr("Tracks")
text: I18n.qtr("Tracks")
}
}]
onItemDoubleClicked: {
......
......@@ -30,33 +30,141 @@ import "qrc:///style/"
Widgets.KeyNavigableTableView {
id: root
property var sortModelSmall: [
{ isPrimary: true, criteria: "title", width: VLCStyle.colWidth(1), text: I18n.qtr("Title"), showSection: "title", colDelegate: tableColumns.titleDelegate, headerDelegate: tableColumns.titleHeaderDelegate, placeHolder: VLCStyle.noArtAlbumCover },
{ criteria: "album_title", width: VLCStyle.colWidth(1), text: I18n.qtr("Album"), showSection: "album_title" },
{ criteria: "main_artist", width: VLCStyle.colWidth(1), text: I18n.qtr("Artist"), showSection: "main_artist" },
{ criteria: "duration", width: VLCStyle.colWidth(1), text: I18n.qtr("Duration"), showSection: "", colDelegate: tableColumns.timeColDelegate, headerDelegate: tableColumns.timeHeaderDelegate },
]
property var sortModelMedium: [
{ isPrimary: true, criteria: "title", width: VLCStyle.colWidth(2), text: I18n.qtr("Title"), showSection: "title", colDelegate: tableColumns.titleDelegate, headerDelegate: tableColumns.titleHeaderDelegate, placeHolder: VLCStyle.noArtAlbumCover },
{ criteria: "album_title", width: VLCStyle.colWidth(2), text: I18n.qtr("Album"), showSection: "album_title" },
{ criteria: "main_artist", width: VLCStyle.colWidth(1), text: I18n.qtr("Artist"), showSection: "main_artist" },
{ criteria: "duration", width: VLCStyle.colWidth(1), text: I18n.qtr("Duration"), showSection: "", colDelegate: tableColumns.timeColDelegate, headerDelegate: tableColumns.timeHeaderDelegate },
]
// Properties
readonly property int _expandingColsSpan: Math.floor((VLCStyle.gridColumnsForWidth(root.availableRowWidth) - 3 /* static cols (track_number, etc)*/) / 3)
property var sortModelLarge: [
{ isPrimary: true, criteria: "title", width: VLCStyle.colWidth(root._expandingColsSpan), text: I18n.qtr("Title"), showSection: "title", colDelegate: tableColumns.titleDelegate, headerDelegate: tableColumns.titleHeaderDelegate, placeHolder: VLCStyle.noArtAlbumCover },
{ criteria: "album_title", width: VLCStyle.colWidth(root._expandingColsSpan), text: I18n.qtr("Album"), showSection: "album_title" },
{ criteria: "main_artist", width: VLCStyle.colWidth(root._expandingColsSpan), text: I18n.qtr("Artist"), showSection: "main_artist" },
{ criteria: "duration", width: VLCStyle.colWidth(1), text: I18n.qtr("Duration"), showSection: "", colDelegate: tableColumns.timeColDelegate, headerDelegate: tableColumns.timeHeaderDelegate },
{ criteria: "track_number",width: VLCStyle.colWidth(1), text: I18n.qtr("Track"), showSection: "" },
{ criteria: "disc_number", width: VLCStyle.colWidth(1), text: I18n.qtr("Disc"), showSection: "" },
]
sortModel: ( availableRowWidth < VLCStyle.colWidth(6) ) ? sortModelSmall
: ( availableRowWidth < VLCStyle.colWidth(9) )
? sortModelMedium : sortModelLarge
property alias parentId: rootmodel.parentId
// Private
property var _lineTitle: ({
criteria: "title",
text: I18n.qtr("Title"),
showSection: "title",
colDelegate: tableColumns.titleDelegate,
headerDelegate: tableColumns.titleHeaderDelegate,
placeHolder: VLCStyle.noArtAlbumCover
})
property var _lineAlbum: ({
criteria: "album_title",
text: I18n.qtr("Album"),
showSection: "album_title"
})
property var _lineArtist: ({
criteria: "main_artist",
text: I18n.qtr("Artist"),
showSection: "main_artist"
})
property var _lineDuration: ({
criteria: "duration",
text: I18n.qtr("Duration"),
showSection: "",
colDelegate: tableColumns.timeColDelegate,
headerDelegate: tableColumns.timeHeaderDelegate
})
property var _lineTrack: ({
criteria: "track_number",
text: I18n.qtr("Track"),
showSection: ""
})
property var _lineDisc: ({
criteria: "disc_number",
text: I18n.qtr("Disc"),
showSection: ""
})
property var _modelLarge: [{
size: _expandingColsSpan,
model: _lineTitle
}, {
size: _expandingColsSpan,
model: _lineAlbum
}, {
size: _expandingColsSpan,
model: _lineArtist
}, {
size: 1,
model: _lineDuration
}, {
size: 1,
model: _lineTrack
}, {
size: 1,
model: _lineDisc
}]
property var _modelMedium: [{
size: 2,
model: _lineTitle
}, {
size: 2,
model: _lineAlbum
}, {
size: 1,
model: _lineArtist
}, {
size: 1,
model: _lineDuration
}]
property var _modelSmall: [{
size: 1,
model: _lineTitle
}, {
size: 1,
model: _lineAlbum
}, {
size: 1,
model: _lineArtist
}, {
size: 1,
model: _lineDuration
}]
sortModel: {
if (availableRowWidth < VLCStyle.colWidth(6))
return _modelSmall
else if (availableRowWidth < VLCStyle.colWidth(9))
return _modelMedium
else
return _modelLarge
}
section.property: "title_first_symbol"
headerColor: VLCStyle.colors.bg
......@@ -65,8 +173,6 @@ Widgets.KeyNavigableTableView {
selectionDelegateModel: selectionModel
rowHeight: VLCStyle.tableCoverRow_height
property alias parentId: rootmodel.parentId
onActionForSelection: MediaLib.addAndPlay(model.getIdsForIndexes( selection ))
onItemDoubleClicked: MediaLib.addAndPlay(model.id)
onContextMenuButtonClicked: contextMenu.popup(selectionModel.selectedIndexes, globalMousePos)
......
......@@ -27,7 +27,15 @@ import "qrc:///main/" as MainInterface
FocusScope {
id: root
property alias sortModel: tracklistdisplay_id.sortModel
property var sortModel: [
{ text: I18n.qtr("Title"), criteria: "title"},
{ text: I18n.qtr("Album"), criteria: "album_title" },
{ text: I18n.qtr("Artist"), criteria: "main_artist" },
{ text: I18n.qtr("Duration"), criteria: "duration" },
{ text: I18n.qtr("Track"), criteria: "track_number" },
{ text: I18n.qtr("Disc"), criteria: "disc_number" }
]
property alias model: tracklistdisplay_id.model
property alias selectionModel: tracklistdisplay_id.selectionDelegateModel
readonly property bool isViewMultiView: false
......
......@@ -55,31 +55,35 @@ MainInterface.MainTableView {
acceptDrop: true
sortModel: [{
criteria: "thumbnail",
size: 1,
width: VLCStyle.colWidth(1),
model: {
criteria: "thumbnail",
type: "image",
type: "image",
headerDelegate: table.titleHeaderDelegate,
colDelegate : table.titleDelegate,
headerDelegate: table.titleHeaderDelegate,
colDelegate : table.titleDelegate,
placeHolder: VLCStyle.noArtAlbumCover,
placeHolder: VLCStyle.noArtAlbumCover
}
}, {
isPrimary: true,
criteria: "title",
size: Math.max(columns - 2, 1),
width: VLCStyle.colWidth(Math.max(columns - 2, 1)),
model: {
criteria: "title",
text: I18n.qtr("Title")
text: I18n.qtr("Title")
}
}, {
criteria: "duration",
size: 1,
width: VLCStyle.colWidth(1),
model: {
criteria: "duration",
headerDelegate: table.timeHeaderDelegate,
colDelegate : table.timeColDelegate
headerDelegate: table.timeHeaderDelegate,
colDelegate : table.timeColDelegate
}
}]
//---------------------------------------------------------------------------------------------
......
......@@ -342,25 +342,30 @@ FocusScope {
headerColor: VLCStyle.colors.bg
sortModel: [{
isPrimary: true,
criteria: "thumbnail",
size: 1,
width: VLCStyle.colWidth(1),
model: {
criteria: "thumbnail",
headerDelegate: columns.titleHeaderDelegate,
colDelegate : columns.titleDelegate
headerDelegate: columns.titleHeaderDelegate,
colDelegate : columns.titleDelegate
}
}, {
criteria: "name",
size: _columns,
width: VLCStyle.colWidth(_columns),
model: {
criteria: "name",
text: I18n.qtr("Name")
text: I18n.qtr("Name")
}
}, {
criteria: "count",
size: 1,
width: VLCStyle.colWidth(1),
model: {
criteria: "count",
text: I18n.qtr("Tracks")
text: I18n.qtr("Tracks")
}
}]
Navigation.parentItem: root
......
......@@ -43,20 +43,29 @@ Widgets.KeyNavigableTableView {
selectionDelegateModel: selectionModel
sortModel: [{
"isPrimary": true,
"criteria": "url",
"width": VLCStyle.colWidth(Math.max(listView_id._nbCols - 1,
1)),
"text": I18n.qtr("Url"),
"showSection": "url",
size: Math.max(listView_id._nbCols - 1, 1),
model: {
criteria: url,
text: I18n.qtr("Url"),
showSection: url,
headerDelegate: urlHeaderDelegate
}, {
"criteria": "last_played_date",
"width": VLCStyle.colWidth(1),
"showSection": "",
"headerDelegate": tableColumns.timeHeaderDelegate,
"showContextButton": true
}]
}
}, {
size: 1,
model: {
criteria: last_played_date,
showSection: "",
showContextButton: true,
headerDelegate: tableColumns.timeHeaderDelegate
}
}]
rowHeight: VLCStyle.listAlbumCover_height + VLCStyle.margin_xxsmall * 2
headerColor: VLCStyle.colors.bg
......
......@@ -47,36 +47,42 @@ MainInterface.MainTableView {
//---------------------------------------------------------------------------------------------
sortModel: [{
type: "image",
size: 1,
criteria: "thumbnail",
model: ({
type: "image",
width: VLCStyle.colWidth(1),
criteria: "thumbnail",
showSection: "",
showSection: "",
placeHolder: VLCStyle.noArtVideoCover,
placeHolder: VLCStyle.noArtVideoCover,
headerDelegate: tableColumns.titleHeaderDelegate,
colDelegate : tableColumns.titleDelegate,
headerDelegate: tableColumns.titleHeaderDelegate,
colDelegate : tableColumns.titleDelegate
})
}, {
isPrimary: true,
criteria: mainCriteria,
size: Math.max(listView_id._nbCols - 2, 1),
width: VLCStyle.colWidth(Math.max(listView_id._nbCols - 2, 1)),
model: ({
criteria: mainCriteria,
showSection: "title",
showSection: "title",
text: I18n.qtr("Title")
text: I18n.qtr("Title")
})
}, {
criteria: "duration",
size: 1,
width: VLCStyle.colWidth(1),
model: ({
criteria: "duration",
showSection: "",
showSection: "",
showContextButton: true,
headerDelegate: tableColumns.timeHeaderDelegate, showContextButton: true,
colDelegate : tableColumns.timeColDelegate
headerDelegate: tableColumns.timeHeaderDelegate,
colDelegate : tableColumns.timeColDelegate
})
}]
section.property: "title_first_symbol"
......
......@@ -278,27 +278,32 @@ FocusScope {
model: modelFilter
sortModel: [{
criteria: "artwork",
size: 1,
width: VLCStyle.colWidth(1),
model: {
criteria: "artwork",
headerDelegate: artworkHeader,
colDelegate : artworkColumn
headerDelegate: artworkHeader,
colDelegate : artworkColumn
}
}, {
isPrimary: true,
criteria: "name",
size: listView._nameColSpan,
width: VLCStyle.colWidth(listView._nameColSpan),
model: {
criteria: "name",
text: I18n.qtr("Name")
text: I18n.qtr("Name")
}
}, {
criteria: "mrl",
size: Math.max(listView._nbCols - listView._nameColSpan - 1, 1),
width: VLCStyle.colWidth(Math.max(listView._nbCols - listView._nameColSpan - 1), 1),
model: {
criteria: "mrl",
text: I18n.qtr("Url"),
text: I18n.qtr("Url"),
colDelegate: mrlColumn
colDelegate: mrlColumn
}
}]
header: root.header
......
......@@ -307,11 +307,34 @@ FocusScope {
}
}
sortModel: [
{ criteria: "thumbnail", width: VLCStyle.colWidth(1), headerDelegate: tableView.thumbnailHeader, colDelegate: tableView.thumbnailColumn },
{ isPrimary: true, criteria: "name", width: VLCStyle.colWidth(tableView._nameColSpan), text: I18n.qtr("Name") },
{ criteria: "mrl", width: VLCStyle.colWidth(Math.max(tableView._nbCols - tableView._nameColSpan - 1), 1), text: I18n.qtr("Url"), showContextButton: true },
]
sortModel: [{
size: 1,
model: {
criteria: "thumbnail",
headerDelegate: tableView.thumbnailHeader,
colDelegate: tableView.thumbnailColumn
}
}, {
size: tableView._nameColSpan,
model: {
criteria: "name",
text: I18n.qtr("Name")
}
}, {
size: Math.max(tableView._nbCols - tableView._nameColSpan - 1, 1),
model: {
criteria: "mrl",
text: I18n.qtr("Url"),
showContextButton: true
}
}]
onActionForSelection: _actionAtIndex(selection[0].row)
onItemDoubleClicked: _actionAtIndex(index)
......
......@@ -54,7 +54,7 @@ FocusScope {
var size = leftMargin + rightMargin
for (var i in sortModel)
size += sortModel[i].width
size += VLCStyle.colWidth(sortModel[i].size)
return size + Math.max(VLCStyle.column_spacing * (sortModel.length - 1), 0)
}
......@@ -314,11 +314,13 @@ FocusScope {
model: sortModel
MouseArea {
height: childrenRect.height
width: modelData.width || 1
width: VLCStyle.colWidth(modelData.size) || 1
//Layout.alignment: Qt.AlignVCenter
Loader {
property var model: modelData
property var model: modelData.model
sourceComponent: model.headerDelegate || root.tableHeaderDelegate
}
......
......@@ -179,7 +179,7 @@ T.Control {
Loader{
property var rowModel: delegate.rowModel
property var colModel: modelData
property var colModel: modelData.model
readonly property int index: delegate._index
......@@ -189,7 +189,7 @@ T.Control {
readonly property color foregroundColor: delegate.background.foregroundColor
width: (modelData.width) ? modelData.width : 0
width: (modelData.size) ? VLCStyle.colWidth(modelData.size) : 0
height: parent.height
......