return Def.ActorFrame {
	Def.Sprite {
		SetMessageCommand=function(self,param)
			self:LoadBanner(THEME:GetPathG("", "_sort"))
			self:zoom(0.8):y(-4)
		end
	},
	Def.Sprite {
		SetMessageCommand=function(self,param)
			-- Why... does this need to be in a different parameter than param.Text?
			-- Even worse, the string that gets put in "Label" needs to be an exact specific string,
			-- even across languages, just so adding pretty per-item graphics here can actually work.
			--
			-- :(
			local text = param.Label
			
			self:LoadBanner(text ~= "" and THEME:GetPathG("","_Jackets/" .. text) or THEME:GetPathG("Common","fallback groupjacket"))
			
			self:scaletofit(-32,-32,32,32):y(3)
		end
	},
	Def.BitmapText {
		Font = "Common Normal",
		OnCommand=function(self)
			self:y(32):zoom(0.4):maxwidth(200):maxheight(128*2):wrapwidthpixels(200):vertalign(bottom):shadowlength(1):
				strokecolor(Color.Black)
		end,
		SetMessageCommand=function(self, param)
			local text = param.Label
			-- as prevously implied; bad, but I can't reliably control the Graphic otherwise
			self:settext(text ~= "" and THEME:GetString("MusicWheel", text) or "")
			
			self:playcommand( "On" )
		end
	}
}