gmusicbrowser Forum

Main board => Customization => Topic started by: hansi on August 26, 2015, 23:35:22

Title: Queue buttons placement
Post by: hansi on August 26, 2015, 23:35:22
Hello,

I'm trying to reproduce the old Shimmer queue buttons placement (with QueueActions + ShuffleList + EmptyList widgets), but unfortunately without any success...  >:(

Here's an example of I would like to obtain:
(http://7.t.imgbox.com/addRIJWL.jpg) (http://imgbox.com/addRIJWL)

And this is where I am for now:
(http://7.t.imgbox.com/zfZMfzy5.jpg) (http://imgbox.com/zfZMfzy5)

Is this feasible with the new 1.1.15 ? If yes, are there anyone here who would be kind enough to show me how?

Thank you in advance..

Here is the relevant layout code:
### main left: artist pane and album-cover ###
VBLeft = _VBListCover HBStatus
VBListCover = _NBList HBQueueButtons 1Cover(default=elementary/no-cover.svg,showcover=0)
NBList = (tabpos="bottom") QueueList(songtree=1,tabtitle=_"Queue (%n)",tabicon="gmb-song",cols="queuenumber titleaa",colwidth="queuenumber 20 titleaa 248",showbb=1,hscrollbar=0) HBparcourir HBLyrics VBAlbuminfo VBArtistinfo
HBQueueButtons = QueueActions ShuffleList EmptyList
HBparcourir = (tabtitle=_"Parcourir",tabicon="gmb-browse") _FPane
HBLyrics = (tabtitle=_"Lyrics",tabicon="emblem-shared") _PluginLyrics
VBArtistinfo = (tabtitle=_"Artist",tabicon="gmb-artist") _PluginArtistinfo
VBAlbuminfo = (tabtitle=_"Album",tabicon="emblem-generic") _PluginAlbuminfo
HBStatus = 3Total(noheader=1,format=long,relief=none,button=1,mode=library) -2Sort(button=1,tip=_"Right-click to toggle shuffle/random") -2Filter(button=1,tip=_"Right-click to remove filters") -2ToggleButton3(icon=gmb-picture,relief=none,size=menu,widget=Cover,tip=_"Show/Hide Cover")
Title: Re: Queue buttons placement
Post by: Quentin Sculo on August 27, 2015, 14:59:58
The closest you can get currently is use a custom Queue page instead of the default one, it doesn't support the %n in its title (replaced by number of songs) :

HBQueueButtons = QueueActions -EmptyList -ShuffleList
VBQueueWithButtons= (tabtitle=_"Queue",tabicon=gmb-song) _QueueList(songtree=1,cols="queuenumber titleaa",colwidth="queuenumber 20 titleaa 248",showbb=1,hscrollbar=0) HBQueueButtons

remove the HBQueueButtons from VBListCover
and replace QueueList in NBList by VBQueueWithButtons
Title: Re: Queue buttons placement
Post by: hansi on August 27, 2015, 22:00:55
Oh great ! Thank you so much !! But about Queue number, maybe it could be displayed between QueueActions and -EmptyList ?
Title: Re: Queue buttons placement
Post by: hansi on August 29, 2015, 20:57:39
Woops, I forgot to mention that I had to add a "group=" parameter to QueueActions + EmptyList + ShuffleList + QueueList in order to make the buttons functional with the good Queue, the left one instead of the main one (on the right)...
Title: Re: Queue buttons placement
Post by: hansi on August 31, 2015, 04:40:30
Great! I finally succeed by tinkering a new widget based on Pos!

Well, it's not nearly as good and convenient that if it was in the title of the tab (like the original Shimmer layout), but it's better than nothing...

(http://1.t.imgbox.com/z46fTphP.jpg) (http://imgbox.com/z46fTphP)

gmusicbrowser_layout.pm:
PosMini =>
{ class => 'Layout::Label',
group => 'Play',
xalign => .5,
initsize=> ::__n("%d song","%d songs",99999),
update => sub  { my $t=(@$::ListPlay==0) ? '':
@$::Queue ? ::__n("%d song","%d songs", scalar @$::Queue):
!defined $::Position ? ::__n("%d song","%d songs",scalar @$::ListPlay):
($::Position+1).'/'.@$::ListPlay;
  $_[0]->set_markup_with_format( '<i>%s</i>', $t );
},
click1 => 'MenuQueue',
click3 => sub { ::ChooseSongs([::GetNeighbourSongs(5)]) unless $::RandomMode || @$::Queue; },
event => 'Pos Queue Filter',
},


Corrected layout code:
NBList = (tabpos="bottom") VBQueueWithButtons HBparcourir HBLyrics VBAlbuminfo VBArtistinfo
HBQueueButtons = QueueActions(group=2) _PosMini -EmptyList(group=2) -ShuffleList(group=2)
VBQueueWithButtons= (tabtitle=_"Queue",tabicon=gmb-song) _QueueList(songtree=1,group=2,cols="queuenumber titleaa",colwidth="queuenumber 20 titleaa 248",showbb=1,hscrollbar=0) HBQueueButtons