[SCM] gmusicbrowser/master: Take patch from Ubuntu to adopt new layouts made by the Shimmer project.

alessio at users.alioth.debian.org alessio at users.alioth.debian.org
Fri Mar 25 08:25:29 UTC 2011


The following commit has been merged in the master branch:
commit 6b894cd2af8764c526fd1079fe2ccc67c40a98d1
Author: Alessio Treglia <alessio at debian.org>
Date:   Fri Mar 25 09:24:55 2011 +0100

    Take patch from Ubuntu to adopt new layouts made by the Shimmer project.

diff --git a/debian/patches/series b/debian/patches/series
index a6030d1..77e02c3 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
 no-extra-copying
 fix-menu
 spelling-errors
+shimmer-layouts
diff --git a/debian/patches/shimmer-layouts b/debian/patches/shimmer-layouts
new file mode 100644
index 0000000..cbe5056
--- /dev/null
+++ b/debian/patches/shimmer-layouts
@@ -0,0 +1,1045 @@
+Description: Add some extra layouts made by the shimmer project
+Origin: other, https://github.com/shimmerproject/gmusicbrowser
+Author: Simon Steinbeiß <simon.steinbeiss at elfenbeinturm.at>
+---
+ gmbrc.default                 |   10 +
+ gmusicbrowser.pl              |   54 ------
+ gmusicbrowser_layout.pm       |   15 +
+ gmusicbrowser_list.pm         |   36 +++-
+ layouts/main.layout           |   21 ++
+ layouts/makeitlooklike.layout |  363 ++++++++++++++++++++++++++++++++++++++++++
+ layouts/shimmer.layout        |  106 ++++++++++++
+ layouts/songtree.layout       |   59 ++++++
+ plugins/fetch_cover.pm        |    4 
+ 9 files changed, 608 insertions(+), 60 deletions(-)
+
+--- gmusicbrowser.orig/gmusicbrowser_list.pm
++++ gmusicbrowser/gmusicbrowser_list.pm
+@@ -202,8 +202,8 @@ sub Update
+ 	if (!$array)	{ $tip=$text=_"error"; }
+ 	else		{ $text.= ::CalcListLength($array,$self->{format}); }
+ 	my $format= $self->{size} ? '<span size="'.$self->{size}.'">%s</span>' : '%s';
+-	$self->child->set_markup_with_format($format,$text);
+-	$self->set_tooltip_text($tip);
++	if ($self->{mode} eq "filter") { $self->child->set_markup_with_format($format,$text); $self->set_tooltip_text($tip); }
++	else	{	$self->child->set_markup_with_format($format,$tip); $self->set_tooltip_text($text); }
+ 	$self->{needupdate}=0;
+ }
+ 
+@@ -230,7 +230,7 @@ sub filter_Update
+ {	my $self=shift;
+ 	my $filter=::GetFilter($self);
+ 	my $array=$filter->filter;
+-	return _("Filter : "), $array, $filter->explain;
++	return _("Filter : "), $array, ("Filter: ".$filter->explain);
+ }
+ 
+ ### list functions
+@@ -249,7 +249,7 @@ sub list_SongArray_changed
+ sub list_Update
+ {	my $self=shift;
+ 	my $array=::GetSongArray($self) || return;
+-	return _("Listed : "), $array,  ::__('%d song','%d songs',scalar@$array);
++	return _("Listed : "), $array,  ::__('%d song listed','%d songs listed',scalar@$array);
+ }
+ 
+ ### selected functions
+@@ -1521,6 +1521,7 @@ our %Pages=
+ our @MenuMarkupOptions=
+ (	"%a",
+ 	"<b>%a</b>%Y\n<small>%s <small>%l</small></small>",
++	"<b>%a</b>%Y\n<small>%x / %s / <small>%l</small></small>",
+ 	"<b>%a</b>%Y\n<small>%b</small>",
+ 	"<b>%a</b>%Y\n<small>%b</small>\n<small>%s <small>%l</small></small>",
+ 	"<b>%y %a</b>",
+@@ -1537,6 +1538,7 @@ my @mpicsize_menu=
+ 	_("medium size")	=> 64,
+ 	_("big size")		=> 96,
+ 	_("huge size")		=> 128,
++	_("giant size")		=> 256,
+ );
+ my @cloudstats_menu=
+ (	_("number of songs")	=> 'count',
+@@ -3201,7 +3203,7 @@ sub new
+ 		my $BAlblist=::NewIconButton('gmb-playlist',undef,undef,'none');
+ 		$BAlblist->signal_connect(button_press_event => \&AlbumListButton_press_cb);
+ 		$BAlblist->set_tooltip_text(_"Choose Album From this Artist");
+-		$buttonbox->pack_start($BAlblist, ::FALSE, ::FALSE, 0);
++		$buttonbox->pack_start($_, ::FALSE, ::FALSE, 0) for $BAlblist;
+ 	}
+ 
+ 	my $drgsrc=$aa eq 'album' ? ::DRAG_ALBUM : ::DRAG_ARTIST;
+@@ -4486,6 +4488,16 @@ sub button_press_cb
+ 		else	{ $self->{pressed}=1; }
+ 		return 0;
+ 	}
++	if ($but==2)
++	{	my ($i,$j,$key)=$self->coord_to_index($event->get_coords);
++		if (defined $key && !exists $self->{selected}{$key})
++		{	$self->key_selected($event,$i,$j);
++		}
++		my $menu = ::ChooseSongsFromA($key);
++		my $event = Gtk2->get_current_event;
++		$menu->show_all;
++		$menu->popup(undef,undef,undef,undef,$event->button,$event->time);
++	}
+ 	if ($but==3)
+ 	{	my ($i,$j,$key)=$self->coord_to_index($event->get_coords);
+ 		if (defined $key && !exists $self->{selected}{$key})
+@@ -5358,7 +5370,7 @@ sub new
+ 	my $default= $::Options{"DefaultOptions_$name"} || {};
+ 
+ 	%$opt=( @DefaultOptions, %$default, %$opt );
+-	$self->{$_}=$opt->{$_} for qw/headclick songxpad songypad no_typeahead grouping/;
++	$self->{$_}=$opt->{$_} for qw/headclick songxpad songypad no_typeahead grouping showbb/;
+ 
+ 	#create widgets used to draw the songtree as a treeview, would be nice to do without but it's not possible currently
+ 	$self->{stylewidget}=Gtk2::TreeView->new;
+@@ -5428,7 +5440,17 @@ sub new
+ 
+ 	$self->AddColumn($_) for split / +/,$opt->{cols};
+ 	unless ($self->{cells}) { $self->AddColumn('title'); } #to ensure there is at least 1 column
+-
++
++	if ($self->{showbb}) { # show queue actions in QueueList if option showbb is set
++		my $qactions = Layout::NewWidget("QueueActions");
++		my $clearb = ::NewIconButton('gtk-clear',"",\&::ClearQueue,"none","Clear Queue");
++		my $shuffleb = ::NewIconButton('gmb-shuffle',"",\&::ShuffleQueue,"none","Shuffle Queue");
++		my $bbox = Gtk2::HBox->new(0,0);
++		$bbox->pack_start($qactions,0,0,0);
++		$bbox->pack_end($clearb,0,0,0);
++		$bbox->pack_end($shuffleb,0,0,0);
++		$vbox->pack_end($bbox,0,0,0);
++	}
+ 	$self->{selected}='';
+ 	$self->{lastclick}=$self->{startgrow}=-1;
+ 	$self->set_head_columns;
+--- gmusicbrowser.orig/gmusicbrowser_layout.pm
++++ gmusicbrowser/gmusicbrowser_layout.pm
+@@ -7,6 +7,7 @@
+ 
+ use strict;
+ use warnings;
++use utf8;
+ 
+ package Layout;
+ use Gtk2;
+@@ -242,6 +243,7 @@ our %Widgets=
+ 	{	class	=> 'Layout::Label',
+ 		group	=> 'Play',
+ 		minsize	=> 20,
++		options => 'showcover',
+ 		markup	=> '<b><big>%S</big></b>%V',
+ 		markup_empty => '<b><big>&lt;'._("Playlist Empty").'&gt;</big></b>',
+ 		click1	=> \&PopupSongsFromAlbum,
+@@ -265,6 +267,10 @@ our %Widgets=
+ 		dragsrc => [::DRAG_ARTIST,\&DragCurrentArtist],
+ 		cursor	=> 'hand2',
+ 	},
++	ArtistBreadcrumb =>
++	{	parent	=> 'Artist',
++		click1	=> sub { my $ID=::GetSelID($_[0]); ::PopupAA( 'album', format=> ::__x( _"<big><b>{album}</b></big>\n{year}  /  {songs}", album => "%a", year => "%y", songs => "%s"), from=> Songs::Get_gid($ID,'artists')) if defined $ID; },
++	},
+ 	Album =>
+ 	{	class	=> 'Layout::Label',
+ 		group	=> 'Play',
+@@ -275,6 +281,10 @@ our %Widgets=
+ 		dragsrc => [::DRAG_ALBUM,\&DragCurrentAlbum],
+ 		cursor	=> 'hand2',
+ 	},
++	AlbumBreadcrumb =>
++	{	parent	=> 'Album',
++		click1	=> \&PopupSongsFromAlbum,
++	},
+ 	Year =>
+ 	{	class	=> 'Layout::Label',
+ 		group	=> 'Play',
+@@ -368,8 +378,10 @@ our %Widgets=
+ 		group	=> 'Play',
+ 		aa	=> 'album',
+ 		oldopt1 => 'maxsize',
++		options => 'showcover',
+ 		schange	=> sub { my $key=(defined $_[1])? Songs::Get_gid($_[1],'album') : undef ; $_[0]->set($key); },
+ 		click1	=> \&PopupSongsFromAlbum,
++		click3	=> sub { my $ID=::GetSelID($_[0]); ::PopupAAContextMenu({self =>$_[0], field=>'album', ID=>$ID, gid=>Songs::Get_gid($ID,'album'), mode => 'P'}) if defined $ID; },
+ 		event	=> 'Picture_album',
+ 		update	=> \&Layout::AAPicture::Changed,
+ 		noinit	=> 1,
+@@ -383,6 +395,7 @@ our %Widgets=
+ 		oldopt1 => 'maxsize',
+ 		schange	=> sub { my $key=(defined $_[1])? Songs::Get_gid($_[1],'artists') : undef ;$_[0]->set($key); },
+ 		click1	=> sub { ::PopupAA('artist'); },
++		click3	=> sub { my $ID=::GetSelID($_[0]); ::PopupAAContextMenu({self =>$_[0], field=>'artist', ID=>$ID, gid=>Songs::Get_gid($ID,'artist'), mode => 'P'}) if defined $ID; },
+ 		event	=> 'Picture_artist',
+ 		update	=> \&Layout::AAPicture::Changed,
+ 		noinit	=> 1,
+@@ -1557,7 +1570,7 @@ use base 'Gtk2::Window';
+ 
+ sub new
+ {	my ($class,$layout,%options)=@_;
+-	my $fallback=delete $options{fallback} || 'Lists, Library & Context';
++	my $fallback=delete $options{fallback} || 'Shimmer Desktop';
+ 	my $opt0={};
+ 	if (my $opt= $layout=~m/^[^(]+\(.*=/)
+ 	{	($layout,$opt0)= $layout=~m/^([^(]+)\((.*)\)$/; #separate layout id and options
+--- gmusicbrowser.orig/gmbrc.default
++++ gmusicbrowser/gmbrc.default
+@@ -9,6 +9,16 @@
+ # of the plugin found at the top of the plugin file :
+ PLUGIN_LYRICS: 1
+ PLUGIN_FETCHCOVER: 1
++PLUGIN_ARTISTINFO: 1
++PLUGIN_MPRIS2: 1
++
++UseTray: 0
++
++Layout: Shimmer Desktop
++IconTheme: elementary
++LayoutT: Shimmer Traytip
++LayoutF: Shimmer Party
++
+ 
+ # default player layout
+ #Layout: Small player
+--- gmusicbrowser.orig/gmusicbrowser.pl
++++ gmusicbrowser/gmusicbrowser.pl
+@@ -441,9 +441,9 @@ our @cMenuAA=
+ (	{ label => _"Lock",	code => sub { ToggleLock($_[0]{lockfield}); }, check => sub { $::TogLock && $::TogLock eq $_[0]{lockfield}}, mode => 'P',
+ 	  test	=> sub { $_[0]{field} eq $_[0]{lockfield} || $_[0]{gid} == Songs::Get_gid($::SongID,$_[0]{lockfield}); },
+ 	},
+-	{ label => _"Lookup in AMG",	code => sub { AMGLookup( $_[0]{mainfield}, $_[0]{aaname} ); },
+-	  test => sub { $_[0]{mainfield} =~m/^album$|^artist$|^title$/; },
+-	},
++	#{ label => _"Lookup in AMG",	code => sub { AMGLookup( $_[0]{mainfield}, $_[0]{aaname} ); },
++	#  test => sub { $_[0]{mainfield} =~m/^album$|^artist$|^title$/; },
++	#},
+ 	{ label => _"Filter",		code => sub { Select(filter => Songs::MakeFilterFromGID($_[0]{field},$_[0]{gid})); },	stockicon => 'gmb-filter', mode => 'P' },
+ 	{ label => \&SongsSubMenuTitle,		submenu => \&SongsSubMenu, },
+ 	{ label => sub {$_[0]{mode} eq 'P' ? _"Display Songs" : _"Filter"},	code => \&FilterOnAA,
+@@ -3039,7 +3039,7 @@ sub ChooseSongsTitle		#Songs with the sa
+ }
+ 
+ sub ChooseSongsFromA	#FIXME limit the number of songs if HUGE number of songs (>100-200 ?)
+-{	my $album=$_[0];
++{	my ($album,$showcover)=@_;
+ 	return unless defined $album;
+ 	my $list= AA::GetIDs(album=>$album);
+ 	Songs::SortList($list,'disc track file');
+@@ -3054,7 +3054,7 @@ sub ChooseSongsFromA	#FIXME limit the nu
+ 	}
+ 	my $menu = ChooseSongs('%n %S', @$list);
+ 	$menu->show_all;
+-	if (1)
++	if ($showcover)
+ 	{	my $h=$menu->size_request->height;
+ 		my $picsize=$menu->size_request->width/$menu->{nbcols};
+ 		$picsize=200 if $picsize<200;
+@@ -3082,48 +3082,6 @@ sub ChooseSongsFromA	#FIXME limit the nu
+ 		#		$item->signal_connect(size_allocate => sub  {my ($self,$alloc)=@_;warn $alloc->width;return if $self->{busy};$self->{busy}=1;my $w=$self->get_toplevel;$w->set_size_request($w->size_request->width-$alloc->width+$picsize+20,-1);$alloc->width($picsize+20);$self->size_allocate($alloc);});
+ 		}
+ 	}
+-	elsif ( my $pixbuf= AAPicture::pixbuf(album=>$album,undef,1) ) #TEST not used
+-	{
+-	 my $request=$menu->size_request;
+-	 my $rwidth=$request->width;
+-	 my $rheight=$request->height;
+-	 my $w=200;
+-	 #$w=500-$rwidth if $rwidth <300;
+-	 $w=300-$rwidth if $rwidth <100;
+-	 my $h=200;
+-	 $h=$rheight if $rheight >$h;
+-	 my $r= $pixbuf->get_width / $pixbuf->get_height;
+-	 #warn "max $w $h   r=$r\n";
+-	 if ($w>$h*$r)	{$w=int($h*$r);}
+-	 else		{$h=int($w/$r);}
+-	 my $h2=$rheight; $h2=$h if $h>$h2;
+-	 #warn "=> $w $h\n";
+-	 $pixbuf=$pixbuf->scale_simple($w,$h,'bilinear');
+-#	 $menu->set_size_request(1000+$rwidth+$w,$h2);
+-
+-#	$menu->signal_connect(size_request => sub {my ($self,$req)=@_;warn $req->width;return if $self->{busy};$self->{busy}=1;my $rw=$self->get_toplevel->size_request->width;$self->get_toplevel->set_size_request($rw+$w,-1);$self->{busy}=undef;});
+-
+-	 $menu->signal_connect(size_allocate => sub
+-		{	# warn join(' ', $_[1]->values);
+-			my ($self,$alloc)=@_;
+-			return if $self->{picture_added};
+-			$self->{picture_added}=1;
+-
+-			my $window=$self->parent;
+-			$window->remove($self);
+-			my $hbox=Gtk2::HBox->new(0,0);
+-			my $frame=Gtk2::Frame->new;
+-			my $image=Gtk2::Image->new_from_pixbuf($pixbuf);
+-			$frame->add($image);
+-			$frame->set_shadow_type('out');
+-			$hbox->pack_start($self,0,0,0);
+-			$hbox->pack_start($frame,1,1,0);
+-			$window->add($hbox);
+-			$hbox->show_all;
+-			#$window->set_size_request($rwidth+$w,$h2);
+-			$self->set_size_request($rwidth,-1);
+-		});
+-	}
+ 	if (defined wantarray)	{return $menu}
+ 	my $event=Gtk2->get_current_event;
+ 	$menu->popup(undef,undef,\&menupos,undef,$event->button,$event->time);
+@@ -3137,7 +3095,7 @@ sub ChooseSongs
+ 	my $activate_callback=sub
+ 	 {	return if $_[0]->get_submenu;
+ 		if ($_[0]{middle}) { Enqueue($_[1]); }
+-		else { Select(song => $_[1]); }
++		else { Select(song => $_[1], play=>1); }
+ 	 };
+ 	my $click_callback=sub
+ 	 { my ($mitem,$event)=@_;
+--- gmusicbrowser.orig/plugins/fetch_cover.pm
++++ gmusicbrowser/plugins/fetch_cover.pm
+@@ -40,15 +40,17 @@ my %Sites=
+ );
+ 
+ my %menuitem=
+-(	label => _"Search for a picture on internet",					#label of the menu item
++(	label => _"Search Picture",					#label of the menu item
+ 	code => sub { Fetch($_[0]{mainfield},$_[0]{gid},$_[0]{ID}); },			#when menu item selected
+ 	test => sub {$_[0]{mainfield} eq 'album' || $_[0]{mainfield} eq 'artist'},	#the menu item is displayed if returns true
++	stockicon => 'gtk-find',
+ );
+ my %fpane_menuitem=
+ (	label=> _"Search for a picture on internet",
+ 	code => sub { Fetch($_[0]{field},$_[0]{gidlist}[0]); },
+ 	onlyone=> 'gidlist',	#menu item is hidden if more than one album/artist is selected
+ 	istrue => 'aa',		#menu item is hidden for non artist/album (aa) FPanes
++	stockicon => 'gtk-find',
+ );
+ 
+ ::SetDefaultOptions(OPT, USEFILE => 1, COVERFILE => 'cover', PictureSite_artist => 'googlei', PictureSite_album => 'googlei');
+--- gmusicbrowser.orig/layouts/songtree.layout
++++ gmusicbrowser/layouts/songtree.layout
+@@ -1,6 +1,37 @@
+ #SongTree Group & Columns definitions
+ #####################################
+ 
++{Group Compact}
++title=Compact
++head=pic:h
++tail=25
++vcollapse=head
++vmin=pic:y+pic:h+25
++title:	text(markup='<b><big>'.pesc($album).'</big></b>'. if($year,'\n'.pesc($year)) . '\n'.pesc($artist),pad=2,x=pic:w)
++pic:	aapic(y=title:y,picsize=picsize,ypad=2,xpad=1,aa='album')
++picsize : OptionNumber(default=50,min=20,max=1000,step=10)
++
++{Group discleft}
++title=disc on the left side
++head=3
++left=width
++vcollapse=head+title:h+line:h+2
++title:	text(markup='<b><big>'.pesc($title).'</big></b>'.if(!$_expanded,'<big><b>»</b></big>'),pad=2,w=left))
++width:	OptionNumber(default=15,min=10,max=100,step=1)
++line: line(x1=1,y1=1,x2=$_w,y2=1,color='#ccc',width=1)
++
++{Group artistalbum_breadcrumbs}
++title=album and artist breadcrumbs
++head=title:h
++tail=25
++vcollapse=head
++vmin=pic:y+pic:h+25
++left=pic:w+2
++title:	text(markup='<b><big>'.pesc($album).'</big></b>'. if($year,'  <big><b>«</b></big>  '.pesc($year)) . '  <big><b>«</b></big>  '.pesc($artist),pad=2)
++pic:	+aapic(y=title:h+title:y,picsize=picsize,ypad=2,xpad=1,aa='album')
++picsize : OptionNumber(default=100,min=20,max=1000,step=10)
++picstars : picture(file=ratingpic($rating_avrg),x=(picsize/2)-(picstars:w/2),y=pic:y+pic:h,hide=$rating_avrg==50 || picsize < 80)
++
+ {Group pic}
+ title= _"with picture"
+ head=title:h
+@@ -33,6 +64,14 @@ pic:	aapic(y=title:y + title:h +2, picsi
+ width:	OptionNumber(default=200,min=20,max=1000,step=10)
+ picsize : OptionNumber(default=100,min=20,max=1000,step=10)
+ 
++{Column RhythmboxQueue}
++menutitle = _"Rhythmbox 2nd queue column"
++title = _"Queue"
++hreq=text:h
++width=200
++sort= title:i
++text : text(markup=pesc($title).'\n<small>by <i>'.pesc($artist).'</i>\non <i>'.pesc($album).'</i></small>',pad=2)
++
+ {Column testtitleandprogress}
+ title= _"Title & progress"
+ sort=album:i title:i
+@@ -42,6 +81,20 @@ hreq=text:h
+ progress: pbar( fill=$progress, hide=!$playing,y=1,h=-2)
+ text: text(markup=playmarkup(pesc($title)))
+ 
++{Column queuenumber}
++menutitle = Queue-Item Number
++title = #
++width = 20
++text: text(markup=$queued, x=-text:w)
++
++{Column playandqueueandtrack}
++menutitle = Playing/Queue Icon or Track
++title = #
++width = 20
++sort = track
++ico:	icon(pad=2,icon=$playicon, hide= !$playing && !$queued)
++text:	text(markup=pesc($track.' '.$queued), hide= $playing || $queued)
++
+ {Column playandqueue}
+ menutitle = _"Playing and queue icons"
+ width = 20
+@@ -82,9 +135,9 @@ title = _"Rating"
+ menutitle = _"Rating (picture)"
+ sort = rating
+ width=100
+-#hreq = pic:h
+-#pic : picture(file=ratingpic($rating),init_file=ratingpic(0))
+-pic : picture(file=ratingpic($rating),h=$_h,w=$_w,resize='ratio',init_file=ratingpic(0))
++hreq = pic:h
++pic : picture(file=ratingpic($rating),init_file=ratingpic(0),x=pic:w)
++#pic : picture(file=ratingpic($rating),h=$_h,w=$_w,resize='ratio',init_file=ratingpic(0))
+ 
+ {Column right_aligned_folder}
+ menutitle = _"Folder (right-aligned)"
+--- /dev/null
++++ gmusicbrowser/layouts/shimmer.layout
+@@ -0,0 +1,106 @@
++[Shimmer Desktop]
++Type=G+
++Title		= "gmusicbrowser"
++DefaultFocus	= SimpleSearch
++Default		= Window(size=1000x750)
++Window		= hidden=HBSongPlaylist|VPMosaic
++Author		= simon at shimmerproject.org
++### main window containers: top bar, main and statusbar ###
++VBMain		= VBTop _HBMain
++HBMain		= VBLeft _HPRight
++VBTop		= HBTop
++HBTop		= ABButtons _15VBPlayer 10ABToggle -5ABSettings
++### top bar from left to right ###
++ABButtons	= (yalign=0,yscale=0.0) HBButtons
++HBButtons	= Prev Play Next(click2=NextAlbum)
++VBPlayer	= 1Filler0 HBTitle HBTimeSlider
++HBTitle		= Title(expand_max=300,minsize=0,markup="<big><b>%t</b></big> ",click1="",tip=_"Title: %t (Track No. %n)",yalign=0.5) LockAlbum(stock="on:gmb-lock gmb-lockopen off:gmb-breadcrumb gmb-locklight") AlbumBreadcrumb(tip=_"Album: %l (%Y)",minsize=1,expand_max=200,yalign=0.5,minsize=1,markup="<big> </big>%l ",showcover=0) LockArtist(stock="on:gmb-lock gmb-lockopen off:gmb-breadcrumb gmb-locklight") ArtistBreadcrumb(tip=_"Artist: %a",expand_max=200,yalign=0.5,minsize=0,markup="<big> </big>%a") -Stars(yalign=0.5)
++HBTimeSlider	= PlayingTime(markup="%s",initsize="XX:XX",xalign=0) _TimeSlider(direct_mode=1) -Length(markup="$length",initsize="XX:XX",xalign=1)
++ABToggle	= (yalign=0,yscale=0.0) HBToggle
++HBToggle	= ToggleButton0(relief=none,size=large-toolbar,icon=gmb-view-list,widget=HBSongPlaylist,togglegroup=1,tip=_"Simple List View") ToggleButton1(relief=none,size=large-toolbar,icon=gmb-view-tree,widget=SongTree,togglegroup=1,tip=_"Songtree View") ToggleButton2(relief=none,size=large-toolbar,icon=gmb-view-mosaic,widget=VPMosaic,togglegroup=1,tip=_"Mosaic View") Fullscreen(stock=gmb-view-fullscreen,size=large-toolbar,tip="Fullscreen View") 10Filler2 ABSearchBox
++ABSearchBox	= (yalign=0) SimpleSearch(suggest=1)
++ABSettings	= (yalign=0,yscale=0.0) HBSettings
++HBSettings	= ExtraButtons(size=large-toolbar) BMSettings
++BMSettings	= (icon=gtk-preferences,size="large-toolbar") SMLibrary LayoutItem PlayItem SeparatorMenuItem01 MenuItem34(click1=OpenCustom(Equalizer),label=_"Equalizer",icon=gmb-equalizer) SeparatorMenuItem20 MenuItem14(command=OpenPref,label=_"Settings",icon="gtk-preferences") MenuItem05(command=Quit,label=_"Quit",icon="gtk-quit")
++SMLibrary	= (label=_"Library") MenuItem00(command="RunPerlCode(::ChooseAddPath(0,1))",label=_"Add Music",icon="gtk-add") MenuItem32(command="RunPerlCode(::IdleScan)",label=_"Rescan Collection",icon="gtk-refresh")
++### main left: artist pane and album-cover ###
++VBLeft		= _NBList HBCover HBStatus
++NBList		= (tabpos="bottom") VBArtist QueueList(songtree=1,tabtitle=_"Queue (%n)",tabicon="",cols="queuenumber titleaa",colwidth="queuenumber 20 titleaa 248",showbb=1) HBLyrics VBAbout
++HBLyrics	= (tabtitle=_"Lyrics") _PluginLyrics
++VBAbout		= (tabtitle=_"Info") _PluginArtistinfo
++VBArtist	= (tabtitle=_"Artist") _FilterPane0(nb=2,hidebb=1,pages=artists,page_artists/lmarkup=1,hidetabs=1,lmarkup="<b>%a</b>%Y\x0a<small>%x / %s / <small>%l</small></small>")
++HBCover		= Cover(overlay=6x6:350x350:elementary/overlay.png,default=elementary/no-cover.svg,showcover=0)
++HBStatus	= 3Total(format=short,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=HBCover,tip=_"Show/Hide Cover")
++### main right: list/tree/mosaic widgets ###
++HPRight		= _HBSongListtree
++HBSongListtree	= _SongTree(cols="playandqueueandtrack title length ratingpic",colwidth="artist 124 lastplay 107 length 49 playandqueue 19 playandqueueandtrack 20 playcount 22 ratingpic 100 title 390 titleaa 397 track 21",grouping="album|artistalbum_breadcrumbs(picsize=100)|disc|discleft(width=15)",follow=1,sort="year album disc track") _HBSongPlaylist _VPMosaic
++HBSongPlaylist	= _SongList(cols="playandqueueandtrack title artist album year length playcount",sort=artist,colwidth="album 200 artist 200 file 400 lastplay 100 length 41 path 413 playandqueueandtrack 24 playcount 96 rating 80 title 270 track 21 year 31",follow=1,sort="year album disc track")
++VPMosaic	= _FilterPane2(nb=3,hidebb=1,pages=album,page_album/mode=mosaic,page_album/mmarkup=1,page_album/mpicsize=96,hidetabs=1)
++### bottom: statusbar ### Pref(size=small-toolbar,button=0)
++### positioning and sizing ###
++HSize0		= 350 NBList
++VSize0		= 350 HBCover
++DefaultFocus	= SimpleSearch
++
++[Shimmer Netbook]
++Type=G+
++Title		= "gmusicbrowser"
++DefaultFocus	= SimpleSearch
++Default		= Window(size=1000x750)
++Author		= simon at shimmerproject.org
++Window		= hidden=SimpleSearch
++### main window containers: top bar, main and statusbar ###
++VBMain		= VBTop _NBList
++VBTop		= 3Filler8 HBTop
++HBTop		= VBButtons _15VBPlayer -5VBSettings
++VBButtons	= HBButtons 3Filler4
++HBButtons	= Prev Play Next(click2=NextAlbum)
++VBPlayer	= HBTitle VBTime
++HBTitle		= Title(expand_max=300,minsize=0,markup="<big><b>%t</b></big> ",click1="",tip=_"Title: %t (Track No. %n)".if($track,pesc($track)),yalign=0.5) LockAlbum(stock="on:gmb-lock gmb-lockopen off:gmb-breadcrumb gmb-locklight") AlbumBreadcrumb(tip=_"Album: %l (%Y)",minsize=0,expand_max=200,yalign=0.5,markup="<big> </big>%l ",showcover=0) LockArtist(stock="on:gmb-lock gmb-lockopen off:gmb-breadcrumb gmb-locklight") ArtistBreadcrumb(tip=_"Artist: %a",expand_max=200,yalign=0.5,minsize=0,markup="<big> </big>%a") -Stars(yalign=0.5)
++VBTime		= _HBTimeSlider _SimpleSearch(suggest=1)
++HBTimeSlider	= PlayingTime(markup="%s",initsize="XX:XX",xalign=0) _TimeSlider(direct_mode=1) -Length(markup="$length",initsize="XX:XX",xalign=1)
++VBSettings	= HBPrefSearch 5Filler5
++HBPrefSearch	= ToggleButton0(size=large-toolbar,relief=none,icon=gtk-find,widget=SimpleSearch) ExtraButtons BMSettings
++BMSettings	= (icon=gtk-preferences,size="large-toolbar") SMLibrary LayoutItem PlayItem SeparatorMenuItem01 MenuItem34(click1=OpenCustom(Equalizer),label=_"Equalizer") SeparatorMenuItem20 MenuItem14(command=OpenPref,label=_"Settings",icon="gtk-preferences") MenuItem05(command=Quit,label=_"Quit",icon="gtk-quit")
++SMLibrary	= (label=_"Library") MenuItem00(command="RunPerlCode(::ChooseAddPath(0,1))",label=_"Add Music",icon="gtk-add") MenuItem32(command="RunPerlCode(::IdleScan)",label=_"Rescan Collection",icon="gtk-refresh")
++NBList		= (tabpos="bottom") HBSongListtree QueueList(songtree=1,tabtitle=_"Queue (%n)",tabicon="",cols="queuenumber titleaa",colwidth="queuenumber 20 titleaa 248",showbb=1) HBLyrics VBAbout
++HBLyrics	= (tabtitle=_"Lyrics") _PluginLyrics
++VBAbout		= (tabtitle=_"Info") _PluginArtistinfo
++HBSongListtree	= (tabtitle=_"Playlist") _SongTree(cols="playandqueueandtrack title length ratingpic",colwidth="artist 124 lastplay 107 length 49 playandqueue 19 playandqueueandtrack 20 playcount 22 ratingpic 100 title 390 titleaa 397 track 21",grouping="album|Compact(picsize=50)|disc|discleft(width=15)",follow=1,sort="year album disc track")
++DefaultFocus	= Play
++
++# Trayicon-Layouts
++#####################################
++
++[Shimmer Traytip]
++Type=T
++VBMain		= HBTime Filler0 VBMain1
++VBMain1		= HBLeft _HBRight
++HBLeft		= _Cover(forceratio=1,default=elementary/no-cover.svg) VBText
++VBText		= 2HBArtist HBAlbum _2HBTitle
++HBButtons	= Prev(size=small-toolbar) Play(size=small-toolbar) Next(size=small-toolbar)
++HBTitle		= LockSong _Title(font=12,interval=75)
++HBArtist	= LockArtist _Artist(font=8)
++HBAlbum		= LockAlbum Album(font=8,minsize=0) Date(font=7,markup=" <b>»</b> %y")
++HBRating	= Filler1  -Stars
++HBTime		= _TimeBar(minheight=7)
++HBRight		= HBButtons _2HBRating
++VSize0		= 3 Filler0
++HSize0		= Filler1 LockArtist LockAlbum LockSong
++HSize1		= Cover HBButtons
++
++# Fullscreen Layouts
++#####################################
++
++[Shimmer Party]
++Type=F
++Window		= fullscreen=1,sticky=0,hidden=VBSidebar
++VBMain		= _HPMain HBNowPlaying
++HPMain		= _FilterPane2(nb=3,hidebb=1,pages=album,page_album/mode=mosaic,page_album/mmarkup=1,page_album/mpicsize=128,hidetabs=1) VBSidebar
++HBNowPlaying	= HBButtons 15Filler0 _HBTitle
++HBButtons	= Prev Play Next
++HBTitle		= Title(expand_max=300,minsize=0,markup="<big><b>%t</b></big> ",click1="",tip=_"Title: %t (Track No. %n)".if($track,pesc($track)),yalign=0.5) LockAlbum(stock="on:gmb-lock gmb-lockopen off:gmb-breadcrumb gmb-locklight") AlbumBreadcrumb(tip=_"Album: %l (%Y)",minsize=1,expand_max=200,yalign=0.5,minsize=1,markup="<big> </big>%l ",showcover=0) LockArtist(stock="on:gmb-lock gmb-lockopen off:gmb-breadcrumb gmb-locklight") ArtistBreadcrumb(tip=_"Artist: %a",expand_max=200,yalign=0.5,minsize=0,markup="<big> </big>%a") -ToggleButton1(size=button,relief=none,icon=gtk-find,widget=VBSidebar) -20Stars(yalign=0.5)
++VBSidebar	= 4Filler1 7HBSearch _7HBQueue 4Filler2
++HBQueue		= 14_QueueList(group=1,songtree=1,cols="queuenumber titleaa",colwidth="queuenumber 20 titleaa 248")
++HBSearch	= 4Filler3 6Label0(markup='<span size="xx-large" weight="ultrabold">«</span>') _SimpleSearch(suggest=1) 7Filler4
++KeyBindings	= Escape CloseWindow
+\ No newline at end of file
+--- gmusicbrowser.orig/layouts/main.layout
++++ gmusicbrowser/layouts/main.layout
+@@ -1,5 +1,6 @@
+ [Lists, Library & Context]
+ Type=G+
++Category	= "Classic"
+ Default		= Window(size=1120x820) VPRight(size=200-550) HPmain(size=400)
+ MBmenu		= MainMenuItem LayoutItem PSortItem PFilterItem QueueItem
+ MBlist 		= HistItem LSortItem PlayItem
+@@ -27,6 +28,7 @@ DefaultFocus	= Play
+ 
+ [Small player]
+ Type=G
++Category	= "Classic"
+ Default	= Window(sticky=1)
+ HBButtons	= VolumeIcon Prev Stop Play Next OpenBrowser ExtraButtons Pref Quit
+ HBIndic		= Sort 10Filter Queue 10Pos -Stars
+@@ -40,6 +42,7 @@ HBmain		= _VBmain 2Filler1 -Cover
+ VolumeScroll	= HBmain
+ 
+ [with queue] based on Small player
++Category	= "Classic"
+ VBmain2		= HBmain 5_VBQueue
+ VBQueue		= _QueueList(group=1,hidewidget=VBQueue,hideif=empty,shrinkonhide=v) HBQueueButtons
+ HBQueueButtons	= EditListButtons(group=1) 4QueueActions
+@@ -47,6 +50,7 @@ HBButtons	= VolumeIcon Prev Stop Play Ne
+ 
+ [minimal]
+ Type=G
++Category	= "Classic"
+ Default	= Window(sticky=1)
+ HBmain	= OpenBrowser Pref Play Next 5_ABTitle
+ ABTitle = (xalign=0,yscale=0) Title_by(minsize=20)
+@@ -54,12 +58,14 @@ VolumeScroll	= HBmain
+ 
+ [full] based on Small player
+ Type=T
++Category=
+ HBButtons =
+ VBmain		= HBIndic _VBText -HBTime
+ HBmain		= _VBmain 2Filler1 -Cover(forceratio=1)
+ 
+ [full with buttons] based on Small player
+ Type=T
++Category=
+ Window= borderwidth=5
+ HBmain		= _VBmain 2Filler1 -Cover(forceratio=1)
+ 
+@@ -78,6 +84,7 @@ Name= _"Minimal tip"
+ 
+ [with browser]
+ Type=G
++Category	= "Classic"
+ Default		= Window(size=1120x820) HPbig(size=780) HPfp(size=165) VPlistAA(size=575) FilterPane0(page=artist) FilterPane1(page=album)
+ HBIndic		= MBmenu Sort 10Filter Queue 10Pos
+ MBmenu		= MainMenuItem PSortItem PFilterItem QueueItem
+@@ -99,6 +106,7 @@ HSize0		= Filler0 LockArtist LockAlbum
+ VolumeScroll	= HBupper
+ 
+ [with browser (SongTree)] based on with browser
++Category	= "Classic"
+ VPlistAA	= _SongTree HBAA
+ 
+ [Browser]
+@@ -137,6 +145,7 @@ HPfp2		= _FilterPane1(nb=2) FilterPane2(
+ 
+ [itunes-like]
+ Type=G+
++Category	= "Classic"
+ Default		= Window(size=1120x820,hidden=QueueList) VPfp_list(size=120) HPfp0(size=300) HPfp_list_src(size=175)
+ HBIndic		= MBmenu Sort 10Filter Queue 10Pos
+ MBmenu		= MainMenuItem LayoutItem PSortItem PFilterItem QueueItem SMView
+@@ -167,11 +176,13 @@ VSize1		= 50 VolumeSlider
+ VolumeScroll	= HBupper
+ 
+ [with search] based on Small player
++Category	= "Classic"
+ VBmain2		= HBmain 2HBsearch _SongList(hideif=nofilter)
+ HBsearch	= FilterBox ResetFilter PlayFilter
+ 
+ [with playlist] based on Small player
+ Type=G
++Category	= "Classic"
+ VBmain2		= HBmain 2HBsearch _SongList(playlist)
+ HBsearch	= FilterBox ResetFilter
+ 
+@@ -218,6 +229,7 @@ VBmain		= _Context
+ 
+ [Playlist]
+ Type=G+
++Category	= "Classic"
+ Default		= Window(size=1120x820) HPfp0(size=180) HPfp_list(size=780) FilterPane0(page=artist) FilterPane1(page=album)
+ HBIndic		= MBmenu Sort 10Filter Queue 10Pos
+ MBmenu		= MainMenuItem LayoutItem PSortItem PFilterItem QueueItem HistItem PlayItem
+@@ -237,6 +249,7 @@ VSize1		= 50 VolumeSlider
+ VolumeScroll	= HBupper
+ 
+ [with browser & queue] based on with browser
++Category	= "Classic"
+ Default		= Window(size=1120x820) HPbig(size=780) HPfp(size=164) VPlistAA(size=575) FilterPane0(page=artist) FilterPane1(page=album) VPBrowserQueue(size=570)
+ HPbig		= _VPBrowserQueue HPfp
+ VPBrowserQueue	= _VPlistAA VBQueue
+@@ -245,6 +258,7 @@ HBQueueButtons	= EditListButtons(group=1
+ 
+ [quodlibet-like]
+ Type=G+
++Category	= "Classic"
+ Default		= Window(size=700x600,sticky=1) HPbrowser(size=160-600) FilterPane0(artistinfo=1,albumpsize=32,albuminfo=1)
+ MBmenu		= MainMenuItem LayoutItem PSortItem PFilterItem QueueItem
+ HBButtons1	= Prev Play Next
+@@ -266,11 +280,13 @@ HSize0		= Filler0 LockArtist LockAlbum
+ VolumeScroll	= HBupper
+ 
+ [with playlist & context] based on Small player
++Category	= "Classic"
+ Default		= Window size=820x500
+ VBleft		= HBmain 4_SongList(playlist)
+ HPmain		= VBleft _Context
+ 
+ [with tabbedlists] based on Small player
++Category	= "Classic"
+ Default		= Window(size=820x500)
+ VBglobal	= HBmain 4_TabbedLists
+ #VBglobal	= HBmain 4_HPLists
+@@ -278,6 +294,7 @@ VBglobal	= HBmain 4_TabbedLists
+ #HPfpanes	= FilterPane1(nb=1,hidebb=1) FilterPane2(nb=2,hidebb=1)
+ 
+ [Search & Queue] based on Small player
++Category	= "Classic"
+ Default		= Window(size=760x540)
+ VBright		= HBmain 5_QueueList HBQueueButtons
+ HBQueueButtons	= EditListButtons QueueActions
+@@ -285,6 +302,7 @@ HPmain		= _TBaa VBright
+ TBaa		= _"Artist" ArtistSearch _"Album" AlbumSearch _"Song" SongSearch _"Context" Context
+ 
+ [Search & Playlist] based on Small player
++Category	= "Classic"
+ Default		= Window(size=760x540)
+ VBright		= HBmain 5_SongList(playlist)
+ HPmain		= _TBaa VBright
+@@ -292,6 +310,7 @@ TBaa		= _"Artist" ArtistSearch(activate=
+ 
+ [Queue, Library & Context]
+ Type=G+
++Category	= "Classic"
+ Default		= Window(size=1120x820) FilterPane0(page=genre) FilterPane1(page=artist) FilterPane2(page=album,albumpsize=32,albuminfo=1) QueueList(cols=track titleaa length nbplay rating) VPRight(size=200-550)
+ MBmenu		= MainMenuItem LayoutItem PSortItem PFilterItem QueueItem
+ MBlist 		= HistItem LSortItem PlayItem
+@@ -319,6 +338,7 @@ HSize0		= Filler0 LockArtist LockAlbum
+ VolumeScroll	= VBplayer
+ 
+ [with context] based on Small player
++Category	= "Classic"
+ VBmain2		= HBmain HSeparator _Context
+ 
+ [left-side filter panes] based on Browser
+@@ -355,6 +375,7 @@ KeyBindings	= Escape CloseWindow
+ 
+ [Playlist, Library & Context]
+ Type=G+
++Category	= "Classic"
+ Default         = Window(size=1120x820) SongList2(cols=playandqueue track titleaa length nbplay rating) VPRight(size=200-550)
+ VBLeft          = VBplayer 5_SongList2(mode=playlist,group=1) EditListButtons(group=1,small=1)
+ HBButtons1	= VolumeIcon Prev Stop Play Next ExtraButtons
+--- /dev/null
++++ gmusicbrowser/layouts/makeitlooklike.layout
+@@ -0,0 +1,363 @@
++# Make it look like:
++#####################################
++
++[Quodlibet]
++Type=G+
++Category = "Make it look like"
++Default		= Window(size=700x600,sticky=1) HPbrowser(size=160-600) FilterPane0(artistinfo=1,albumpsize=32,albuminfo=1)
++MBmenu		= MainMenuItem LayoutItem PSortItem PFilterItem QueueItem
++HBButtons1	= Prev Play Next
++HBButtons2	= OpenBrowser Pref Quit
++VBButtons	= HBButtons1 HBButtons2
++HBTitle		= Filler0 _Title -Stars
++HBArtist	= LockArtist _Artist
++HBAlbum		= LockAlbum _Album -Year
++HBTime		= Time _TimeBar
++VBText		= 2HBTitle 2HBArtist 2HBAlbum
++HBleft		= VBButtons 5_VBText
++HBmenu		= MBmenu 5Sort 5Filter 5Queue 5Pos
++VBleft2		= HBmenu HBleft 3HBTime
++VBVol		= VolumeIcon _VolumeSlider(1,0)
++HBupper		= _VBleft2 -VBVol 5-Cover
++HPbrowser	= FilterPane0(nb=1) _SongList
++VBmain		= HBupper 5_HPbrowser
++HSize0		= Filler0 LockArtist LockAlbum
++VolumeScroll	= HBupper
++
++[Exaile]
++Author = shimmerproject.org
++Type = G+
++Category = "Make it look like"
++Title = %t by %a
++Default = Window(size=80%x80%)
++
++KeyBindings = c-J GoToCurrentSong
++
++VolumeScroll = HBVolume
++
++# Window = hidden=FilterPane2|FilterPane3|FilterPane4|FilterPane5|FilterPane6|FilterPane7
++
++VBMain = HBMenubar _HPSidebarCenter HBStatusbar
++
++    HBStatusbar = 10-Total(mode=filter)
++
++    HBMenubar = _MBEdit
++        MBEdit = SMMusic0 SMEdit1 SMView2 SMControl3 SMHelp4
++            SMMusic0 = (label=_"File") \
++                MenuItem00(command="RunPerlCode(::ChooseAddPath(0,1))",label=_"Add folder ...",icon="gtk-add") \
++                SeparatorMenuItem01 \
++                MenuItem02(command=Quit,label=_"Quit",icon="gtk-quit")
++            SMEdit1 = (label=_"Edit") \
++                MenuItem10(command=EnqueueSelected,label=_"Queue",icon="gmb-queue") \
++                # MenuItem11(command=,label=_"Add to playlist") \ \
++                SeparatorMenuItem10 \
++                MenuItem14(command=OpenPref,label=_"Preferences",icon="gtk-preferences")
++
++            # SMView menu for common mode
++            SMView2 = (label=_"View") \
++                MenuItem25(command=GoToCurrentSong,label=_"Go to Playing Track",icon="go-jump") \
++                SeparatorMenuItem21 \
++                LayoutItem \
++                MenuItem24(togglewidget=HBSearchAndToolbar,label=_"Playlist Utilities Bar")
++
++            SMControl3 = (label=_"Tools") \
++                MenuItem32(command="RunPerlCode(::IdleScan)",label=_"Rescan Collection",icon="gtk-refresh") \
++                MenuItem33(command="OpenSongProp",label=_"Track Properties",icon="gtk-properties") \
++                MenuItem34(click1=OpenCustom(Equalizer),label=_"Equalizer")
++
++            SMHelp4 = (label=_"Help") \
++                MenuItem41(command="RunPerlCode(::AboutDialog)",label=_"About",icon="gtk-about")
++
++    HPSidebarCenter = VBSidebar VBCenter
++
++        VBSidebar = _NBSidebar VProgress
++
++            NBSidebar = (tabpos=left90,typesubmenu='PC') \
++                NBSidebar1 \
++                FilterPane10(tabtitle=_"Playlists",nb=0,hidebb=1,tabpos=left90,page=savedtree,pages=savedtree) \
++                FilterPane11(tabtitle=_"Files",nb=0,hidebb=1,tabpos=left90,page=folder,pages=folder)
++
++                NBSidebar1 = (tabtitle=_"Collection",typesubmenu='') \
++                    FilterPane1(tabtitle=_"Artist",\
++                        group=99,\
++                        nb=0,\
++                        hidebb=1,\
++                        pages=artist,\
++                        page=artist,\
++                        page_artist/depth=1,\
++                        page_artist/lmarkup="0|<b>%a</b>%Y <small>%s <small>%l</small></small>",\
++                        page_artist/lpicsize='0|32',\
++                        page_artist/noall=1,\
++                        page_artist/sort=default|default,\
++                        page_artist/type=artist|album\
++                    ) \
++                    FilterPane2(tabtitle=_"Album",\
++                        group=99,\
++                        nb=0,\
++                        hidebb=1,\
++                        page=album,\
++                        pages=album,\
++                        page_album/noall=1\
++                    ) \
++                    FilterPane3(tabtitle=_"Genre - Artist",\
++                        group=99,\
++                        nb=0,\
++                        hidebb=1,\
++                        page=genre,\
++                        pages=genre,\
++                        page_genre/depth=2,\
++                        page_genre/lmarkup="0|0|<b>%a</b>%Y <small>%s <small>%l</small></small>",\
++                        page_genre/lpicsize='0|32|32',\
++                        page_genre/noall=1,\
++                        page_genre/sort=default|default|default,\
++                        page_genre/type=genre|artist|album\
++                    ) \
++                    FilterPane4(tabtitle=_"Genre - Album",\
++                        group=99,\
++                        nb=0,\
++                        hidebb=1,\
++                        page=genre,\
++                        pages=genre,\
++                        page_genre/depth=2,\
++                        page_genre/lmarkup="0|0|<b>%a</b>%Y <small>%s <small>%l</small></small>",\
++                        page_genre/lpicsize='0|32|32',\
++                        page_genre/noall=1,\
++                        page_genre/sort=default|default|default,\
++                        page_genre/type=genre|album|artist\
++                    ) \
++                    FilterPane5(tabtitle=_"Year - Artist",\
++                        group=99,\
++                        nb=0,\
++                        hidebb=1,\
++                        page=year,\
++                        pages=year,\
++                        page_year/depth=2,\
++                        page_year/lmarkup="0|0|<b>%a</b>%Y <small>%s <small>%l</small></small>",\
++                        page_year/lpicsize='0|32|32',\
++                        page_year/noall=1,\
++                        page_year/sort=default|default|default,\
++                        page_year/type=year|artist|album\
++                    ) \
++                    FilterPane6(tabtitle=_"Year - Album",\
++                        group=99,\
++                        nb=0,\
++                        hidebb=1,\
++                        page=year,\
++                        pages=year,\
++                        page_year/depth=2,\
++                        page_year/lmarkup="0|0|<b>%a</b>%Y <small>%s <small>%l</small></small>",\
++                        page_year/lpicsize='0|32|32',\
++                        page_year/noall=1,\
++                        page_year/sort=default|default|default,\
++                        page_year/type=year|album|artist\
++                    ) \
++                    FilterPane7(tabtitle=_"Artist (Jahr - Album)",\
++                        group=99,\
++                        nb=0,\
++                        hidebb=1,\
++                        pages=artist,\
++                        page=artist,\
++                        page_artist/depth=1,\
++                        page_artist/lmarkup="0|<b>%y %a</b>",\
++                        page_artist/lpicsize='0|32',\
++                        page_artist/noall=1,\
++                        page_artist/sort=default|default,\
++                        page_artist/type=artist|album\
++                    )
++
++        VBCenter = 10HBPlayer _HBSongLists 5HBSearchAndToolbar HBControls
++
++            HBSongLists = _NBSongLists \
++                3Filler7
++
++                NBSongLists = (typesubmenu='L') SongList(tabtitle=_"Playlist 1",mode=playlist,tabicon="gmb-list",cols="playandqueue track title album artist length")
++
++            HBPlayer = (maxheight=100,minheight=100) \
++                HBCover \
++                5VBSongInfo \
++                _VBVolume \
++                5Filler5
++
++                HBCover = (maxheight=100,minheight=100,minwidth=100,maxwidth=100) \
++                    Cover(default=elementary/no-cover.svg,showcover=0,minsize=100,maxsize=100)
++
++                VBVolume = 100Filler3 HBVolume
++                    HBVolume = \
++                        -VolSlider(horizontal=1,minwidth=125,maxwidth=125) \
++                        -VolumeIcon(click1=TogMute,size=button,button=1)
++
++                VBSongInfo =  \
++                    _Title(yalign=0.5,minsize=0,markup="<big><big><b>%t</b></big></big>",click1="") \
++                    _Artist(yalign=1,minsize=0,markup="by %a") \
++                    _Album(yalign=1,minsize=0,markup="from %l")\
++                    100Filler2
++
++
++            HBSearchAndToolbar = _HBToolbar \
++                Text1(text=_"Search:") \
++                10_SimpleSearch
++
++                HBToolbar = Sort(button=1,relief=none,minwidth=28) \
++                    ResetFilter(button=1,relief=none,minwidth=28)
++
++            HBControls = Prev(size=button,relief=normal) \
++                Play(size=button,relief=normal) \
++                Stop(size=button,relief=normal) \
++                Next(size=button,relief=normal) \
++                _VBTimeBar \
++                3Filler4
++
++                VBTimeBar = 2Filler0 TimeBar(text="$current / %m") 1Filler1
++
++[Rhythmbox]
++Author = shimmerproject.org
++Type = G+
++Category = "Make it look like"
++Title = %a - %t
++Default = Window(size=80%x80%) HPSidebarAndCenter(size=200)
++DefaultFocus =
++Window = hidden=Context|HBSearch|FilterPane2|SimpleSearch1|SimpleSearch2|SimpleSearch3|QueueList
++
++KeyBindings = a-Return OpenSongProp c-space PlayPause a-Left PrevSong a-Right NextSong c-Down DecVolume c-Up IncVolume
++
++VolumeScroll = HBVolume
++
++VBMain = HBMenubar HBToolbar VBSliderbar _HPSidebarCenterContext HBStatusbar
++
++    HBMenubar = _MBEdit
++        MBEdit = SMMusic0 SMEdit1 SMView20 SMControl3 SMHelp4
++            SMMusic0 = (label=_"Music") \
++                MenuItem00(command="RunPerlCode(::ChooseAddPath(0,1))",label=_"Add folder ...") \
++                SeparatorMenuItem01 \
++                MenuItem01(command="OpenSongProp",label=_"Song Properties") \
++                SeparatorMenuItem02 \
++                MenuItem02(command=Quit,label=_"Quit")
++            SMEdit1 = (label=_"Edit") \
++                MenuItem10(command=EnqueueSelected,label=_"Add to queue") \
++                # MenuItem11(command=,label=_"Add to playlist") \ \
++                SeparatorMenuItem10 \
++                # MenuItem10(command=OpenPref,label=_"Remove") \
++                MenuItem11(command=DeleteSelected,label=_"Delete") \
++                SeparatorMenuItem11 \
++                MenuItem14(command=OpenPref,label=_"Options ...")
++
++            # SMView menu for common mode
++            SMView20 = (label=_"View") \
++                LayoutItem \
++                SeparatorMenuItem20 \
++                SMBrowserViews20 \
++                SMSearchBox21 \
++                SeparatorMenuItem21 \
++                MenuItem20(togglewidget=VBSidebar,label=_"Sidebar") \
++                MenuItem21(togglewidget=QueueList,label=_"Queue in Sidebar") \
++                MenuItem22(togglewidget=HBFilters,label=_"Search") \
++                MenuItem23(togglewidget=HBStatusbar,label=_"Statusbar") \
++                MenuItem24(togglewidget=HBToolbar,label=_"Toolbar")
++
++                SMBrowserViews20 = (label=_"Browser views") \
++                    MenuItem201(togglewidget=FilterPane2,label=_"Show genre") \
++                    MenuItem202(togglewidget=FilterPane4,label=_"Show album")
++
++                SMSearchBox21 = (label=_"Search box type") \
++                    MenuItem211(togglegroup=2,togglewidget=HBSearchGMB,label=_"gmusicbrowser") \
++                    MenuItem212(togglegroup=2,togglewidget=HBSearch,label=_"Rhythmbox")
++
++            SMControl3 = (label=_"Control") \
++                MenuItem30(command=PlayPause,label=_"Play") \
++                SeparatorMenuItem31 \
++                MenuItem31(command=PrevSong,label=_"Previous") \
++                MenuItem32(command=NextSong,label=_"Next") \
++                SeparatorMenuItem32 \
++                MenuItem33(command=IncVolume,label=_"Increase volume") \
++                MenuItem34(command=DecVolume,label=_"Decrease volume")
++
++            SMHelp4 = (label=_"Help") \
++                MenuItem41(command="RunPerlCode(::AboutDialog)",label=_"About",icon="gtk-about")
++
++    HBToolbar = Play Prev Next \
++        3VSeparator1 \
++        Sort(button=1,relief=none,minwidth=35) \
++        ToggleButton4(relief=none,minwidth=35,size=button,icon=gtk-find,widget=HBFilters,tip=_"Show/Hide Browser") \
++        ToggleButton5(relief=none,minwidth=35,size=button,icon=gtk-info,widget=Context,tip=_"Change the context visibility") \
++        -HBVolume
++
++        HBVolume = VolumeIcon(size=menu,button=1)
++
++    VBSliderbar = 5HBText 1HBTimeSlider
++
++        HBTimeSlider = 5_TimeSlider(direct_mode=0)
++
++        HBText = 2Filler0 \
++            _Title(expand_max=300,minsize=0,markup="<big><b>%t</b></big> ",click1="",yalign=0.5) \
++            ArtistBreadcrumb(expand_max=200,yalign=1,minsize=0,markup=" by <i>%a</i> ") \
++            AlbumBreadcrumb(minsize=1,expand_max=200,yalign=1,minsize=1,markup=" on <i>%l</i>   ",showcover=0) \
++            -Time
++
++    HPSidebarCenterContext = HPSidebarAndCenter Context
++
++        HPSidebarAndCenter = VBSidebar VBCenter
++
++            VBSidebar = _VPListAndQueue 3Cover(maxsize=400)
++
++                VPListAndQueue = _FilterPane0(minheight=200,nb=0,hidebb=1,page=savedtree,pages=savedtree) _QueueList(songtree=1,cols="playandqueue RhythmboxQueue")
++
++            VBCenter = 5HBSearch 5HBSearchGMB _VPFilterAndSongList1 _VPFilterAndSongList2 _VPFilterAndSongList3
++
++                HBSearchGMB = 5Text1(text=_"Search:") _SimpleSearch4(maxwidth=500,noselector=0)
++
++                HBSearch = 5Text(text=_"Search:") _SimpleSearch0(maxwidth=500,noselector=1) \
++                    _SimpleSearch1(maxwidth=500,fields=artist,noselector=1) \
++                    _SimpleSearch2(maxwidth=500,fields=album,noselector=1) \
++                    _SimpleSearch3(maxwidth=500,fields=title,noselector=1) \
++                    15HBSearchSelector
++
++                    HBSearchSelector = ToggleButton0(relief=none,minwidth=60,size=button,widget=SimpleSearch0,togglegroup=1,label=_"All", tip=_"Search all fields") \
++                                        ToggleButton1(relief=none,minwidth=60,size=button,widget=SimpleSearch1,togglegroup=1,label=_"Artist",tip=_"Search Artist") \
++                                        ToggleButton2(relief=none,minwidth=60,size=button,widget=SimpleSearch2,togglegroup=1,label=_"Album",tip=_"Search album") \
++                                        ToggleButton3(relief=none,minwidth=60,size=button,widget=SimpleSearch3,togglegroup=1,label="Title",tip=_"Search title")
++
++                VPFilterAndSongList1 = _HBFilters _SongList(mode=playlist)
++
++                    HBFilters = _FilterPane2(nb=2, hidebb=1,pages=genre,page=genre) \
++                        _FilterPane3(nb=3, hidebb=1,pages=artist,page=artist) \
++                        _FilterPane4(nb=4,hidebb=1,pages=album,page=album)
++
++    HBStatusbar = Total(mode=filter) -Progress(maxheight=1)
++
++[Rhythmbox Compact] based on Rhythmbox
++Default = Window(size=600x126)
++Category = "Make it look like"
++VBMain = HBMenubar HBToolbar VBSliderbar
++
++    HBMenubar = _MBEdit
++        MBEdit = SMMusic0 SMEdit1 SMView20 SMControl3 SMHelp4
++            SMMusic0 = (label=_"Music") \
++                MenuItem00(command="RunPerlCode(::ChooseAddPath(0,1))",label=_"Add folder ...") \
++                # SeparatorMenuItem01 \
++                MenuItem01(command="OpenSongProp",label=_"Properties") \
++                SeparatorMenuItem02 \
++                MenuItem02(command=Quit,label=_"Quit")
++            SMEdit1 = (label=_"Edit") \
++                MenuItem14(command=OpenPref,label=_"Options ...")
++
++            # SMView menu for compact mode
++            SMView20 = (label=_"View") \
++                LayoutItem \
++                SeparatorMenuItem20 \
++                MenuItem24(togglewidget=HBToolbar,label=_"Toolbar")
++
++            SMControl3 = (label=_"Control") \
++                MenuItem30(command=PlayPause,label=_"Play") \
++                SeparatorMenuItem31 \
++                MenuItem31(command=PrevSong,label=_"Previous") \
++                MenuItem32(command=NextSong,label=_"Next") \
++                SeparatorMenuItem32 \
++                MenuItem33(command=IncVolume,label=_"Increase volume") \
++                MenuItem34(command=DecVolume,label=_"Decrease volume")
++
++    HBToolbar = Play Prev Next \
++        3VSeparator1 \
++        Sort(button=1,relief=none,minwidth=35) \
++        -HBVolume
++
++        HBVolume = VolumeIcon(size=menu,button=1)
+\ No newline at end of file

-- 
gmusicbrowser packaging



More information about the pkg-multimedia-commits mailing list