This is something I've been working on utilizing recent developments to foo_uie_trackinfo_mod by terrestrial.
Images you will need:
- foobar22bg.png by Byan, you can get it from this post.
- 'Blue2 (Custom).png' by Ken Saunders, you can get it from his website here.
- 'Blue3 (Custom).png' by Ken Saunders, you can get it from his website here.
- Images from the "circle-spinny progress thing" by rouge, you can get them from this post.
(My code references these images in the images\progress.circle subfolder.)
(Also, please copy count40.png to count0.png)
- My modified versions of the above images for the secondary ring. You can get them here.
(My code references these images in the images\playback.circle subfolder.)
- This simple transparency made by me. Save this image as crystalball.png -->
Except where noted put all the above images in your foobar images folder.
Now for the code. This is fairly modular code and you can adjust the $puts() lines at the top to reposition the entire orb, the position is relative to the center of the orb.
// Playback Orb
$puts(circle.offsetx,$div(%_width%,2))
$puts(circle.offsety,$div(%_height%,2))
$imageabs($sub($get(circle.offsetx),64),$sub($get(circle.offsety),64),'images\Blue2 (Custom).png',)
$if(%length%,
$imageabs2(114,114,,,,,$sub($get(circle.offsetx),57),$sub($get(circle.offsety),57),images\playback.circle\circle.$muldiv($muldiv(100,%playback_time_seconds%,%length_seconds%),80,100).png,)
,)
$imageabs2(97,97,,,,,$sub($get(circle.offsetx),48),$sub($get(circle.offsety),48),images\progress.circle\count$mod(%_time_elapsed_seconds%,40).png,)
$imageabs2(74,74,,,,,$sub($get(circle.offsetx),37),$sub($get(circle.offsety),37),'images\Blue3 (Custom).png',)
$if(%isplaying%,$if(%ispaused%,
$alignabs($sub($get(circle.offsetx),20),$sub($get(circle.offsety),24),%_width%,%_height%,,)
$font(Tahoma,28,bold-glow-233-233-233 glowalpha-100,0-0-0)$char(9646)$char(9646)
,
$alignabs($sub($get(circle.offsetx),15),$sub($get(circle.offsety),46),%_width%,%_height%,,)
$font(Tahoma,54,bold-glow-233-233-233 glowalpha-100,0-0-0)$char(9658)
),
$imageabs2(114,114,,,,,$sub($get(circle.offsetx),57),$sub($get(circle.offsety),57),images\foobar22bg.png,)
)
$if(%isplaying%,
$imageabs2(64,64,,,,,$sub($get(circle.offsetx),32),$sub($get(circle.offsety),32),images\crystalball.png,)
,)
// Play/Pause Button
$if(%ispaused%,
$button2($add($get(circle.offsetx),26),$sub($get(circle.offsety),52),,,14,14,
'$alignabs(2,0,14,14,,)$font(Tahoma,4,bold-glow-0-0-0 glowexpand-1,255-255-255)$char(9614)$char(9614)'
,
'$alignabs(2,0,14,14,,)$font(Tahoma,4,bold-glow-255-255-255 glowexpand-1,0-0-0)$char(9614)$char(9614)'
,Play,)
,
$button2($add($get(circle.offsetx),27),$sub($get(circle.offsety),55),,,12,12,
'$alignabs(2,0,12,12,,)$font(Tahoma,8,bold-glow-0-0-0 glowexpand-1,255-255-255)$char(9658)'
,
'$alignabs(2,0,12,12,,)$font(Tahoma,8,bold-glow-255-255-255 glowexpand-1,0-0-0)$char(9658)'
,$if(%isplaying%,Pause,Play),)
)
// Stop Button
$button2($sub($get(circle.offsetx),35),$sub($get(circle.offsety),53),,,14,14,
'$alignabs(0,0,14,14,,)$font(Tahoma,5,bold-glow-0-0-0 glowexpand-1,255-255-255)$char(9632)'
,
'$alignabs(0,0,14,14,,)$font(Tahoma,5,bold-glow-255-255-255 glowexpand-1,0-0-0)$char(9632)'
,Stop,)
// Previous Button
$button2($sub($get(circle.offsetx),62),$sub($get(circle.offsety),4),,,12,12,
'$alignabs(2,0,12,12,,)$font(Tahoma,7,bold-glow-0-0-0 glowexpand-1,255-255-255)$char(8828)'
,
'$alignabs(2,0,12,12,,)$font(Tahoma,7,bold-glow-255-255-255 glowexpand-1,0-0-0)$char(8828)'
,Previous,)
// Next Button
$button2($add($get(circle.offsetx),54),$sub($get(circle.offsety),4),,,12,12,
'$alignabs(2,0,12,12,,)$font(Tahoma,7,bold-glow-0-0-0 glowexpand-1,255-255-255)$char(8829)'
,
'$alignabs(2,0,12,12,,)$font(Tahoma,7,bold-glow-255-255-255 glowexpand-1,0-0-0)$char(8829)'
,Next,)
// Mute
$button2($sub($get(circle.offsetx),3),$add($get(circle.offsety),52),,,12,12,
'$alignabs(2,0,12,12,,)$font(Tahoma,6,bold-glow-0-0-0 glowexpand-1,255-255-255)$char(9676)'
,
'$alignabs(2,0,12,12,,)$font(Tahoma,6,bold-glow-255-255-255 glowexpand-1,0-0-0)$char(9676)'
,Volume Mute,)
// Lower Volume
$button2($sub($get(circle.offsetx),24),$add($get(circle.offsety),46),,,12,12,
'$alignabs(2,0,24,12,,)$font(Tahoma,6,bold-glow-0-0-0 glowexpand-1,255-255-255)-'
,
'$alignabs(2,0,24,12,,)$font(Tahoma,6,bold-glow-255-255-255 glowexpand-1,0-0-0)-'
,Volume Down,)
// Raise Volume
$button2($add($get(circle.offsetx),18),$add($get(circle.offsety),46),,,12,12,
'$alignabs(2,0,24,12,,)$font(Tahoma,6,bold-glow-0-0-0 glowexpand-1,255-255-255)+'
,
'$alignabs(2,0,24,12,,)$font(Tahoma,6,bold-glow-255-255-255 glowexpand-1,0-0-0)+'
,Volume Up,)
Enjoy!
Edit: Fixed "Next" Button